Está en la página 1de 17

¿Cómo describir un diagrama de flujo en pseudocódigo?

Por: Ma. de la Luz Mendoza Uribe

Antes de utilizar un lenguaje de programación es necesario estructurar algoritmos y diagramas de


flujo, de tal manera que cuando se obtenga el pseudocódigo sea mucho más sencillo
interpretarlo en un editor para poder probarlo.

Es importante mencionar que el pseudocódigo es el último paso para estructurar un programa, pues los
lenguajes de programación, aunque tengan una estructura similar en cuanto al uso de instrucciones y
condiciones pueden variar un poco.

El pseudocódigo consiste en:

“Una representación tipo idioma ingles del código requerido


para un algoritmo. Es parte inglés y parte código estructurado”
(Forouzan, 2003, p.146).

“Un lenguaje artificial e informal que ayuda a los programadores


a desarrollar algoritmos. El pseudocódigo es similar al inglés
común; es conveniente y sencillo no es un lenguaje de
programación real” (Harvey, 2004, p. 51).

Entre los componentes que deben integrar el pseudocódigo, Forouzan (2003) menciona:
“Encabezado, propósito, precondición, postcondición, devolución, números de condición y
constructores de instrucción” (p. 351). En la tabla 1 se describen cada uno de ellos.

Componente Descripción
Encabezado Es el nombre que se le asigna al algoritmo y que
describe en qué consiste con pocas palabras.

Propósito Es una breve descripción acerca de la función del


algoritmo en forma general.
Precondición Consiste en detallar los requisitos o requerimientos
del algoritmo para poder funcionar, generalmente
comprende la entrada de datos.
Postcondición Se refiere al efecto que genera el algoritmo; por
ejemplo, impresión de datos.

1
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Devolución Consiste en mostrar o especificar lo que devuelve
el algoritmo. En caso de que no devuelva algún
valor es recomendable que este apartado diga
nulo.
Números de instrucción Es la numeración de todas las instrucciones que se
encuentran en el algoritmo. Éstas
son dependientes de otras que se van
a numerar como dependientes, por ejemplo, 1.1.
1.2. 1.3…
Constructores de instrucción Se refiere a las tres estructuras que se utilizan para el
desarrollo de algoritmos. Entre ellas se encuentran:
secuencia, selección y repetición.
Tabla 1. Componentes del pseudocódigo.

En el siguiente ejemplo se detallan los componentes de un algoritmo para realizarlo en pseudocódigo.

La primer fase para el desarrollo de un programa consiste en identificar el problema y planear


una solución. Al realizar lo anterior tendrás como resultado lo siguiente:

Algoritmo para sumar dos números


sumadosnumeros
variables: numero1, numero2, x
Inicia algoritmo
Entrada: numero1, numero2
1. Suma numero1 y numero2
2. Devuelve el resultado del paso 1
Termina algoritmo

Una vez desarrollado el algoritmo es conveniente representar de manera gráfica la solución planteada
mediante un diagrama de flujo, también conocido como DFD, en el que se muestre la secuencia y el
desarrollo del algoritmo con la finalidad de revisar y verificar si funciona de manera correcta. En la figura
1 se muestra el diagrama de flujo para sumar dos números.

2
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Figura 1. Diagrama de flujo para sumar dos números.

En la siguiente fase se desarrolla y se afina el algoritmo. Para ello, se crea el pseudocódigo como se
muestra en la tabla 2.

Componente Descripción
Encabezado sumadosnumeros
Propósito Algoritmo que realiza la suma de dos números
cualquiera.
Precondición Variables: numero1, numero2, resultado.
Postcondición Muestra en pantalla el resultado de la suma de dos
números.
Devolución Resultado de la suma.
Números de instrucción 1. resultado= numero1 + numero2
Constructores de instrucción 2. Escribe el resultado de la suma es:
resultado.
End (indica el término del algoritmo).
Tabla 2. Pseudocódigo.

A continuación revisa los siguientes ejemplos de pseudocódigo utilizando las estructuras de control.

3
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Ejemplo de una estructura secuencial

Crea un algoritmo y un diagrama de flujo que sume


dos números considerando que se pedirá al usuario que
ingrese cada uno de ellos.

El algoritmo se muestra en la tabla 3.

Algoritmo
sumadosnumeros
Variables: numero1, numero2, resultado
Inicia algoritmo
Pedir al usuario que escriba el numero 1
Entrada: numero1
Pedir al usuario que escriba el numero 2
Entrada: numero2
1. Suma numero1 y numero2
2. Devuelve el resultado del paso 1
Termina algoritmo
Tabla 3. Algoritmo que suma dos números ingresados por el usuario.

Ya que se ha desarrollado el algoritmo se convierte a diagrama de flujo, como se muestra en la


figura 2.

4
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Inicio

Escribe: Dame
el número 1 Lee:
numero
2

Lee:
numero x= numero1 +
1 numero2

Escribe: Dame
el número 2 Escribe x

A Fin

Figura 2. Diagrama de flujo que suma dos números ingresados por el usuario.

A continuación, se afina el algoritmo y el diagrama de flujo, pero además se realiza el


pseudocódigo, justo como se muestra en la tabla 4.

Componente Descripción
Encabezado sumadosnumeros
Propósito Algoritmo que realiza la suma de dos números
Cualquiera que ingrese el usuario.
Precondición Numero1, numero2, resultado
Postcondición Muestra en pantalla el resultado de la suma de dos
números.
Devolución Resultado de la suma.

5
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Números de instrucción 1. Escribe: Dame un numero
2. Lee: numero1
Constructores de instrucción 3. Escirbe: Dame el numero 2
4. Lee: numero 2
5. Resultado=numero1 + numero2
6. Escribe: resultado
End
Tabla 4. Pseudocódigo que suma dos números ingresados por el usuario.

Ejemplo de una estructura secuencial

Crea un algoritmo y un diagrama de flujo que multiplique


dos números, considerando que se pedirá al usuario que
ingrese cada uno de los números.

El algoritmo que resulta de este ejemplo se muestra en la tabla 5.

Algoritmo

multiplicadosnumeros
Variables: numero1, numero2, resultado
Inicia algoritmo
Pedir al usuario que escriba el numero 1
Entrada: numero1
Pedir al usuario que escriba el numero 2
Entrada: numero1.
Multiplica numero1 y numero2
2. Devuelve el resultado del paso
Termina algoritmo
Tabla 5. Algoritmo que multiplica dos números ingresados por el usuario.

Ya que se ha desarrollado el algoritmo se convierte el mismo a diagrama de flujo, como se


muestra en la figura 3.

6
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Inicio

Escribe: Dame
el número 1

Lee: numero 1

Escribe: Dame el
número 2

Lee: numero 2

x= numero1 x numero 2

Escribe x

Fin
Figura 3. Diagrama de flujo que multiplica dos números ingresados por el usuario.

A continuación se afina el algoritmo y el diagrama de flujo, pero además se realiza el pseudocódigo,


justo como se muestra en la tabla 6.

Multiplicadosnumeros
Entrada: numero1, numero2;
Variables:numero1,numero2, resultado;
(En esta parte se inicia también la declaración de las variables
que se van a utilizar en el programa, tanto de la que ingresa el
usuario, como las que se utilizarán en el procesamiento. Las
variables generalmente se escriben en minúsculas, sin espacios
y sin acentos)
1. Escribe: “Dame el número 1”
2. Lee: número 1
3. Escribe: “Dame el número 2”
4. Lee: número 2
5. x=número 1 x número 2
6. Escribe resultado
End

Tabla 6. Pseudocódigo que multiplica dos números ingresados por el usuario.

7
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Ejemplo de una estructura de decisión

Crea un algoritmo y un diagrama de flujo que muestre si un alumno ha aprobado o reprobado una
materia. Para ello toma en cuenta las siguientes consideraciones:

 El alumno debe ingresar las calificaciones del primer, segundo y tercer periodo de evaluación.
 La calificación final está integrada por el promedio de los tres periodos de evaluación.
 La calificación aprobatoria es de 70.

El algoritmo que resulta de este ejemplo se muestra en la tabla 7.

Algoritmo
Promediacalificaciones
Variables: calificacion1,calificacion2,calificacion3,
promedio
Inicia algoritmo
Pedir al usuario que escriba la calificación del primer
parcial
Entrada: calificacion1
Pedir al usuario que escriba la calificación del segundo
parcial
Entrada: calificacion2
Pedir al usuario que escriba la calificación del tercer
parcial
Entrada: calificacion3
Promedia calificacion1, calificacion2, calificacion3
if (promedio<70) then
Escribe mensaje “El alumno ha reprobado la
materia”.
else
Escribe mensaje “El alumno ha aprobado la
materia”.
end if
Termina algoritmo

Tabla 7. Algoritmo que promedia calificaciones.

Ya que se ha desarrollado el algoritmo se convierte a un diagrama de flujo, como se muestra en la


figura 4.

8
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Inicio
A

Escribe: Dame
la calificación Lee:
del primer calificacion3
parcial

Promedio=(calificacion1
Lee: + calificacion2 +
calificacion1
calificacion3) / 3

Escribe: Dame la
calificación del Promedio>70
segundo parcial No

Si
Lee:
calificacion2 Escribe: “El Escribe: “El
alumno ha alumno ha
reprobado la aprobado la
materia”. materia”.
Escribe: Dame la
calificación del
tercer parcial

End if

A
Fin

Figura 4. Diagrama de flujo que promedia calificaciones.

A continuación se afina el algoritmo y el diagrama de flujo; luego se realiza el pseudocódigo,


justo como se muestra en la tabla 8.

9
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Promediacalificaciones
Entrada: calificacion1, calificacion2, calificacion3;
(Generalmente el punto y coma indica que se termina la
instrucción de un renglón)
Variables: calificacion1, calificacion2, calificacion3,
promedio;
(En esta parte se inicia también la declaración de las
variables que se van a utilizar en el programa, tanto de la
que ingresa el usuario, como las que se utilizarán en el
procesamiento. Las variables generalmente se escriben
sin espacios y sin acentos)
1. Escribe: “Dame la calificación del primer parcial”; (las
comillas indican que es el texto que se va a mostrar
en pantalla)
2. Lee: calificacion1;
3. Escribe: “Dame la calificación del segundo parcial”;
(las comillas indican que es el texto que se va a
mostrar en pantalla)
4. Lee: calificacion2;
5. Escribe: “Dame la calificación del tercer parcial”; (las
comillas indican que es el texto que se va a mostrar
en pantalla)
6. Lee: calificacion3;
7. promedio=(calificacion1+calificalcion2+calificacion3)/2;
8. if (promedio<70) then
8.1. Escribe mensaje: “El alumno ha reprobado la
materia”;
else
8.2. Escribe mensaje: “El alumno ha aprobado la
materia”;
end if
End

Tabla 8. Pseudocódigo que promedia calificaciones.

Ejemplo de una estructura de repetición

10
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Crea un algoritmo y un diagrama de flujo que sume una serie de números y para ello toma en
cuenta las siguientes consideraciones:

 El usuario debe ingresar cada número que se va sumando.


 Cuando el resultado de la suma sea mayor a 1000 se terminará el programa.
 El resultado debe mostrar cuántos números se sumaron en total y el resultado de la
suma.

El algoritmo que resulta de este ejemplo se muestra en la tabla 9.

Algoritmo 2
SumaSerieNumeros
Variables:numero,suma,contador
Inicia algoritmo
Establecer suma en cero
Establecer contador en cero
while suma < 1000
Pedir al usuario que escriba un
número
Entrada: numero
Se incrementa el contador
Se suman los números
end while
Termina algoritmo

Tabla 9. Algoritmo suma serie.

Ya que se ha desarrollado el algoritmo se convierte el mismo a diagrama de flujo, como se muestra en


la figura 5.

11
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Inicio

suma = 0

contador = 0

While
suma<100
0

Escribe: Dame
un número

Lee:
numero

contador =
contador + 1
End
while
suma = suma +
numero
Fin

Figura 5. Diagrama de flujo suma serie.

A continuación se afina el algoritmo y el diagrama de flujo; luego se realiza el pseudocódigo, justo como
se muestra en la tabla 10.

12
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
SumaSerieNumeros
Entrada: numero;
(Generalmente el punto y coma indica que se termina la
instrucción de un renglón)
Variables: numero, suma, contador;
(En esta parte se inicia también la declaración de las
variables que se van a utilizar en el programa, tanto de la
que ingresa el usuario, como las que se utilizarán en el
procesamiento. Las variables generalmente se escriben
sin espacios y sin acentos)
1. while (suma<1000)
1.1. Escribe: “Dame un número”; (las comillas
indican que es el texto que se va a mostrar en
pantalla)
1.2. Lee: numero;
1.3. contador:=contador+1;
1.4. suma=suma+numero;
end while
End

Tabla 10. Pseudocódigo suma serie.

Es importante mencionar que en la escritura del pseudocódigo es recomendable seguir una secuencia
lógica. Para no perderse con el seguimiento de los ciclos se recomienda dejar sangrías que indiquen
las instrucciones dentro de cada ciclo, justo como se muestra en la figura 6.

13
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Inicio del algoritmo. Todas las instrucciones inician en la parte izquierda
para llevar una estructura lógica y no perderse.

SumarPrecios
Variables: dinero, precio;
Inicia y dinero=100;
termina el while dinero != (sea diferente o igual a) 0
ciclo while.
Escribe: “Dame un precio”;
Se asigna
una sangría a Lee: precio;
las if dinero >= (es mayor o igual a) precio then
instrucciones dinero=dinero –precio;
que van else
dentro de
este ciclo
Escribe: “Este precio sobrepasa la cantidad
para total de dinero que tienes”:
identificar el end if
momento que end while
inicia y
termina.
End

Cada flecha indica el seguimiento dentro de cada ciclo y las instrucciones que se siguen.
Observa que es de manera escalonada hacia dentro la formación de las sangrías, la idea es
que al mismo nivel que inicia un ciclo, también se termina.

Figura 6. Estructura de un pseudocódigo.

Subalgoritmos

Dentro de la programación es muy importante saber estructurar un problema en partes más pequeñas
que puedan resolverse con mayor facilidad. A cada una de las partes que compondrá el algoritmo
principal se le denomina subalgoritmo.

Cada subalgoritmo es un algoritmo independiente de los demás, es decir, son pequeñas unidades que
pueden realizar una actividad en específico.

Por ejemplo, si se desea elaborar un algoritmo que realice las cuatro operaciones matemáticas básicas
que son: suma, resta, multiplicación y división de dos números obtenidos por el usuario. Una manera de

14
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
realizar lo anterior sería elaborar cuatro subalgoritmos donde cada uno de ellos se encargue de hacer
una operación y el algoritmo principal únicamente determine cuál de los subalgoritmos debe utilizarse
de acuerdo a la selección del usuario.

En términos de programación, tal como lo menciona Forouzan (2003), los subalgoritmos también
pueden ser llamados: “subprogramas, subrutinas, procedimientos, funciones, métodos o módulos” (p.
150).

En la figura 7 puedes observar la representación de un algoritmo en el que se indica a un usuario


cuando un precio sobrepasa la cantidad de dinero con que cuenta haciendo uso de un subalgoritmo.

Diagrama de flujo
Algoritmo

SumarPrecios
Variables: dinero, precio; Inicio
dinero=100;
while dinero != (sea diferente o igual a) 0
Función precio (aquí se manda llamar al dinero = 100
subalgoritmo que ejecutará las instrucciones que
contenga y regresará en este punto a continuar con
el algoritmo principal) While
end while Dinero !=0
End

Función End
precio while

Fin

Figura 7. Representación de un subalgoritmo.

El algoritmo denominado precio quedaría como se muestra en la figura 8.

15
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Algoritmo Diagrama de flujo

Inicio
Función precio
Escribe: “Dame un precio”;
Lee: precio;
if dinero >= (es mayor o igual a) precio Escribe: Dame
then un precio
dinero=dinero –precio;
else
Escribe: “Este precio sobrepasa la
cantidad total de dinero que Lee:
tienes”: precio
end if
End

No
dinero>=
precio

Si Escribe: “Este precio


sobrepasa la
dinero = cantidad total de
dinero - dinero que tienes”
precio

End if
Figura 8. Subalgoritmo función precio.

Cuando la lógica de un algoritmo sigue un orden consecutivo y hace de subalgoritmos se dice que al
momento de programarlo se hará uso de programación estructurada.

La importancia de la programación estructurada es poder utilizar y reutilizar algoritmos en otros


programas, por ello es importante el uso y desarrollo de subalgoritmos.

Es conveniente recalcar que la última fase antes de empezar a programar es la creación del
pseudocódigo. Entre más detallado sea el pseudocódigo recuerda que se tendrá un menor margen de
error al pasar las instrucciones a un lenguaje de programación.

16
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.
Referencias

Forouzan, A. (2003). Introducción a la ciencia de la computación, de la manipulación de


datos a la teoría de la computación (L. Peralta, trad.). México: Thomson
Learning.

Harvey, D. (2004). Cómo programar en C/C++ y Java. México: Pearson Educación.

Bibliografía
Cairó, O. (2006). Fundamentos de programación. Piensa en C. México: Pearson
Educación.

17
©UVEG. Derechos reservados. Esta obra no puede ser reproducida, modificada, distribuida, ni transmitida, parcial o totalmente, mediante cualquier medio, método o
sistema impreso, electrónico, magnético, incluyendo el fotocopiado, la fotografía, la grabación o un sistema de recuperación de la información, sin la autorización por
escrito de la Universidad Virtual del Estado de Guanajuato.

También podría gustarte