1.4.
Pseudocódigo
El pseudocódigo es un lenguaje cercano a un lenguaje de programación cuyo objetivo
es el desarro-
llo de algoritmos fácilmente interpretables por un programador, independientemente
del lenguaje
de programación del que provenga. En sí mismo no se trata de un lenguaje de
programación,
pero sí que utiliza un conjunto limitado de expresiones que permiten representar
las estructuras
de control y los módulos descritos en los paradigmas de programación estructurada y
modular.
Mediante pseudocódigo se puede escribir aquellos algoritmos que tengan solución
finita y
que comiencen desde un único punto de partida. La escritura de un algoritmo o
programa en
pseudocódigo debería favorecer la posterior traducción al lenguaje de programación
elegido.
~ SABÍAS QUE ...
~··················································································
···················································································
···································:
Dado que no existe una sintaxis estandarizada para la escritura de pseudocódigo, es
posible
encontrar diferencias sustanciales en los pseudocódigos escritos por diferentes
programadores.
:
1.4.1.
Operadores, palabras reservadas y tipos de datos
A pesar de que no existe una norma rígida que establezca cómo realizar la escritura
de pro-
gramas en pseudocódigo, es recomendable seguir una serie de recomendaciones que
permitan
transcribir el programa al lenguaje de programación que va a usarse con la mayor
facilidad. A
continuación, se muestran las tablas resumen de los operadores, palabras reservadas
y tipos de
datos empleados para la escritura de pseudocódigo en el capítulo.
CUADRO 1.1
Resumen operadores
Aritméticos
+
*
/
Suma
.
Resta
Multiplicación
División real --------------------~---
div
modo
División entera
Resto o módulo
Potencia
CUADRO 1.2
Palabras reservadas
Inicio
Fin
Si
Entonces
Leer
Si no
Según
Hacer
Caso
Retornar
:
Lógicos
(Usados para formar condiciones)
Igual
<
~
>
¿
<>
Otro
Menor
Menor o igual
Mayor
Mayor o igual
Distinto
Mientras
Repetir
Hasta que
and y lógico (conjunción)
or
o lógico (disyunción)
no
Negación lógica
Especiales
f-
/ /
Para
Hasta
Incremento
Cada
Asignación
Comentario
En
Procedimiento
Función
Imprimir
CAPÍTULO 1
INTRODUCCIÓN A LA PROGRAMACIÓN
CUADRO 1.3
Tipos de datos
Carácter
1.4.2.
Cadena
Entero
Estructuras de control
Real
Booleano
Tal como se ha comentado en el apartado anterior, el pseudocódigo utiliza las
estructuras de
control propias de la programación estructurada. Por este motivo se emplearán
secuencias que
representen las estructuras de control secuencial, alternativa e iterativa.
A) Estructuras de control secuencial
Describen bloques de instrucciones que son ejecutadas en orden de aparición
(secuen-
cialmente). Los bloques pueden estar delimitados por las expresiones Inicio-Fin o
bien
estar contenidos en otras estructuras. A continuación, se muestra un ejemplo de
estructura
secuencial:
Inicio
<instrucciónl>
<instrucciónN>
Fin
B)
Estructuras de control alternativa
La estructura de control alternativa o selectiva encauza el flujo de ejecución
hacia un bloque
de instrucciones u otro en función de la evaluación que se realiza sobre una
condición deter-
minada.
Hay diferentes subtipos de este tipo de estructura de control:
1.
Alternativa simple: establece un conjunto de instrucciones que se ejecutarán si se
cumple
una condición que retornará un valor booleano. Ejemplo:
Si <condición> entonces
<instrucciónl>
<instrucciónX>
Fin Si
CAPÍTULO 1
PROGRAMACIÓN
2.
3.
C)
Alternativa doble: añade otro bloque de instrucciones que se ejecuta en caso de que
no
se cumpla la condición. Ejemplo:
Si <condición> entonces
<instruccionesl>
Si no
<instrucciones2>
Fin Si
Alternativa múltiple: permite ejecutar diferentes bloques de instrucciones según el
valor
que tome una expresión que es comparada con los valores de cada caso o bien median-
te el anidamiento de diferentes estructuras de alternativa doble cuyas condiciones
son
excluyentes. Ejemplo de bloques equivalentes en resultado:
Equivalentes
Según <expresión> hacer
Caso <valorl>
<instruccionesl>
Caso <valor2>
<instrucciones2>
Caso <valor3>
<instrucciones3>
Otro caso
<instruccionesN>
Fin Según
..
Si <condiciónl> entonces
<instruccionesl>
Si no
Si <condición2> entonces
<instrucciones2>
Si no
Si <condición3> entonces
<instrucciones3>
Si no
<instruccionesN>
Fin Si
Fin Si
Fin Si