Tutoriales de informática - Abrirllave.com

Abrirllave.com

Estructura de un algoritmo en Pseudocódigo

La estructura de un algoritmo sirve para organizar los elementos que aparecen en él.

En pseudocódigo, los algoritmos pueden escribirse en tres secciones:

Cabecera de un algoritmo

En la cabecera de un algoritmo puede indicarse el nombre (identificador) asignado al mismo. La sintaxis es:

Algoritmo <nombre_del_algoritmo>

EJEMPLO Teniendo en cuenta que la fórmula para calcular el área de una circunferencia es:

Área de una circunferencia = π * radio2

Si se quiere diseñar el algoritmo de un programa que:

1º) Pida por teclado el radio (dato real) de una circunferencia.

2º) Calcule el área de la circunferencia.

3º) Muestre por pantalla el resultado (dato real).

Nota: considérese que el valor de π (pi) es 3,141592.

El algoritmo puede llamarse Area_Circunferencia. Por tanto, en la cabecera se puede escribir:

Algoritmo Area_Circunferencia

Nota: A menos que se especifique lo contrario, en todos los problemas de este tutorial se supone que el usuario introduce por teclado correctamente los datos que se le pidan, es decir, si se le pide, por ejemplo, un dato de tipo real, no introducirá un dato de otro tipo.

Declaraciones de un algoritmo

En esta sección se pueden declarar las constantes y las variables que se usan en el algoritmo.

EJEMPLO Para resolver el problema planteado, se puede declarar una constante y dos variables:

NUMERO_PI <- 3.141592

Definir area, radio Como Real

Cuerpo de un algoritmo

En el cuerpo se escriben todas las instrucciones del algoritmo. La sintaxis es:

<instrucción_1>

...

<instrucción_n>

En esta sección es donde está el bloque de instrucciones principal del algoritmo.

EJEMPLO El cuerpo del algoritmo Area_Circunferencia puede ser:

Escribir "Introduzca radio: "

Leer radio

area <- NUMERO_PI * radio ^ 2

Escribir "El área es: ", area

Por pantalla se verá algo parecido a:

Ejemplo de salida por pantalla del programa ÁREA CIRCUNFERENCIA escrito en pseudocódigo con PSeInt.

EJEMPLO Si en la pantalla se quisiera leer el radio en la misma línea donde se pide al usuario, tal y como se muestra a continuación:

Ejemplo de salida por pantalla del programa ÁREA CIRCUNFERENCIA (sin saltar) escrito en pseudocódigo con PSeInt.

En pseudocódigo, esto se puede indicar utilizando las palabras reservadas Sin Saltar en la instrucción de salida:

Escribir Sin Saltar "Introduzca radio: "

EJEMPLO El mismo resultado se puede obtener escribiendo:

Escribir Sin Saltar "Introduzca radio: "

Leer radio

Escribir "El área es: ", NUMERO_PI * radio ^ 2

Véase que la variable area no es necesaria. Por tanto, dicha variable no se definiría.

EJEMPLO Todavía se puede reducir más el código del algoritmo, escribiendo:

Escribir Sin Saltar "Introduzca radio: "

Leer radio

Escribir "El área es: ", 3.141592 * radio ^ 2

Así que, tampoco es necesario declarar la constante NUMERO_PI, reduciéndose todavía más el código.

En resumen, el algoritmo completo puede ser:

Algoritmo Area_Circunferencia

   Definir radio Como Real

   Escribir Sin Saltar "Introduzca radio: "

   Leer radio

   Escribir "El área es: ", 3.141592 * radio ^ 2

FinAlgoritmo

Obsérvese que, en la última línea del algoritmo, se ha indicado su finalización escribiendo FinAlgoritmo.

Comentarios en un algoritmo

En los algoritmos es conveniente escribir comentarios para explicar el diseño y/o funcionamiento del mismo.

Para delimitar los comentarios se pueden utilizar distintos caracteres. Ahora bien, en el pseudocódigo empleado en este tutorial, los comentarios se van a escribir después de los caracteres (//).

EJEMPLO Para comentar las secciones del algoritmo del ejemplo anterior se puede escribir:

// Cabecera

Algoritmo Area_Circunferencia

   // Declaraciones

   Definir radio Como Real

   // Cuerpo

   Escribir Sin Saltar "Introduzca radio: "

   Leer radio

   Escribir "El área es: ", 3.141592 * radio ^ 2

FinAlgoritmo

En la guía básica de uso de la aplicación PSeInt, se muestra cómo se puede editar y ejecutar el algoritmo Area_Circunferencia, y cualquier otro.