You are on page 1of 36

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Apunte de
Pseudocdigo
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


ndice

Algoritmo ............................................................................................................................................. 3
Pseudocdigo ...................................................................................................................................... 4
Variable ............................................................................................................................................... 4
Expresin ............................................................................................................................................. 5
Operadores .......................................................................................................................................... 5
Acciones de Secuencia: ....................................................................................................................... 6
Acciones de Seleccin: ........................................................................................................................ 8
Acciones de Iteracin ........................................................................................................................ 11
Sub Algoritmos .................................................................................................................................. 16
Ejercicios Integradores ...................................................................................................................... 20
Ejercicios Varios en Pseudocdigo (Resueltos y no resueltos) ......................................................... 26
Ejercicio Notas y Padrones ................................................................................................................ 28

Fuentes:
Ctedra Mandrafina, Facultad de Ingeniera, UBA
http://mis-algoritmos.com/aprenda-a-crear-diagramas-de-flujo

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV




Algoritmo

Algoritmo: Secuencia finita de pasos (acciones) que sirven para resolver un problema.
Ejemplo de Rueda pinchada.

Algoritmo rueda pinchada
Abrir bal
Sacar rueda auxilio
Sacar gato
Levantar coche
Repetir
Sacar tuerca
Hasta que No halla ms tuercas
Sacar Rueda
Poner Rueda de Auxilio
Repetir
Poner Tuerca
Hasta que estn todas
Bajar coche
Guardar Rueda
Guardar Gato
Fin algoritmo


[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Herramientas para construir Algoritmos: Diagrama de flujo, diagrama de Jackson,


Pseudocdigo

Pseudocdigo: Se utiliza durante toda la carrera. Se asemeja al lenguaje de prog..
Una vez construido el algoritmo en pseudocdigo, se traduce a un lenguaje que entiende la computadora
quedando construido el programa.

Variable

Concepto de Variable: Casillero que tiene un Nombre (Referencia) y Contenido

Nombre: Identificador, debe ser una palabra compuesta slo por letras, el carcter _ y nmeros. No
puede comenzar con un nmero.

Ej. Hola, Letra, Let1, A , Z etc.
No pueden ser Nombres de variables: 1, 1Hola, f. Etc.

Contenido: Valor que contiene la variable (Casillero).
Se pueden clasificar en los siguientes Tipos:

Nmeros: Ej. 4, 5, 6.7 etc.
Caracteres: A, ., 2 Etc. (Existe una tabla que contiene todos los caracteres en orden)
Lgicos: V o F.

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Expresin

Expresin: Representa un valor

Est formada por:

Valor o Variable
Variable o Valor operador Expresin

Ej. De Valor: numricos: 4, caracteres: a, lgicos: V, F.
Ej. De Variables: A, Hola etc.

Operadores

Los operadores pueden utilizarse:

Entre Nmeros: Deben estar entre expresiones numricas
Enteros : +, - , *, Div, Mod
Reales: +,-,*,% (Punto Flotantes)
Entre valores Lgicos: Deben estar entre expresiones lgicas
^ , v, ~
Lgicos : >,<, >=, <=,==, +


[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Acciones de Secuencia:

Asignar
Leer
Escribir

Escribir
Escribir: Permite exteriorizar una expresin.
Sintaxis:

Escribir(Expresin o Expresiones (Separadas por comas))

Ejemplo:
Escribir(Numero+3)
Escribir(Letra, Numero+1, Hola)

Nota: Hola no es un valor de ningn tipo conocido, es decir, no es un carcter, pero se anotar de esta forma
cuando se quiera escribir H, o, l, a.

Ejercicio:
Ingresar un Nmero y luego imprimir el cubo del mismo.

Asignar

Asignar, Permite almacenar una expresin en una variable

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Sintaxis:
Variable <- Expresin
Ejemplo:
Numero<-7
Letra<-s

Ejercicio:
Almacenar en una variable el 8 * 6
2



Leer

Leer, Permite entrar un dato, y almacenarlo en una variable.

Sintaxis:
Leer(Variable)

Ejemplo:
Leer(Numero) Cuando se ejecuta la accin se ingresar un valor y quedar almacenado
en la variable
Leer(Letra)

Ejercicio:
Ingresar un Nmero y luego imprimir el cubo del mismo.


[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Acciones de Seleccin:

Si
Si, Permite tomar una decisin a partir de una expresin lgica.

Sintaxis:
Si <expresin lgica> Entonces
Accin/es
Fin si


Ejemplo:
Si (Numero=4) Entonces
Escribir(El nmero es un cuatro)
Escribir(Ingrese otro nmero)
Leer (Numero)
Fin si

Ejercicio:
Ingresar un Nmero y decir si es mayor menor o igual a cero

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Si/Si no, Permite tomar una decisin a partir de una expresin lgica.
Sintaxis:
Si <expresin lgica> Entonces
Accin/es
Si no
Accin/es
Fin si

Ejemplo:
Si (Numero>0) Entonces
Escribir(El nmero es Positivo)
Si no
Si (Numero<0) Entonces
Escribir(El nmero es Negativo)
Si no
Escribir (El nmero es cero)
Fin si
Fin si

Ejercicio:
Ingresar un nmero N y otro M y decir cual es el mayor.
Ingresar un nmero entre 1 y 3 y escribirlo en letras.


Segn

Segun, Permite tomar una decisin a partir expresin lgica.
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Sintaxis:
Segn <expresin lgica> Hacer
Valor/es: Accin/es
Valor/es: Accin/es
Si No
Accin/es
Fin Segn

Ejemplo:
Segn (Numero)
1: Escribir(Uno)
2: Escribir(Dos)
3: Escribir(Tres)
Si no
Escribir(El nmero no est en el rango)
Fin segn

Ejercicios:

1) Disear un algoritmo que imprima un nmero entre 1 y 3 en letras.
2) Ahora probar con un nmero entre 1 y 5
3) Ingresar un carcter e indicar si es un Nmero, Letra o signo.



[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Acciones de Iteracin

Para
Para Permite realizar un ciclo definido por un rango de valores finito finita

Sintaxis

Para Variable<-Expresin (Valor Inicial) Hasta Expresin (Valor Final) hacer
Accin/es
Fin Para

Ejemplo

- Leer 10 nmeros y escribir la suma de ellos.

Algoritmo Suma
Escribir(Ingrese 10 nmero para poder realizar la suma de ellos)
Suma<-0
Para i<-1 hasta 10 hacer
Escribir(Ingrese un nmero)
Leer(Nmero)
Suma=Suma+numero
Fin Para
Escribir (El resultado es,suma).
Fin Algoritmo
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Para manejar un ciclo, en una estructura Para, existe la variable de control.
Se debe iniciar el ciclo Para con la inicializacin de dicha variable (Variable<-Valor Inicial) y luego se ejecutarn
la/s Accin/es (Valor Final - Valor Inicial) + 1 veces.

Nota: - Nunca modificar la variable de control dentro del ciclo.
- Cuando termina el ciclo la variable de control toma el valor final.

Ejercicios

1) Disear un algoritmo lea 3 nmero y los sume.
2) Ahora probar con 10 nmeros.
3) Leer un nmero e imprimir sus divisores.
4) Leer un nmero N y luego leer N nmero. Indicar cul fue el mayor.
5) Leer un nmero e indicar si es primo.

Mientras

Mientras Permite realizar un ciclo con una o ms condiciones de corte.

Sintaxis

Mientras <Expresin lgica> hacer
Accin/es
Fin Mientras

El ciclo mientras iterar siempre y cuando la Expresin lgica sea verdadera.
Nota: - Inicializar la/s variable/s de control antes de empezar el ciclo.
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

- Modificar la/s variable/s de control dentro del ciclo.

Ejemplo

- Leer una serie de nmeros terminada en cero e imprimir el promedio

Algoritmo Promedio
Escribir(Ingrese una serie de nmeros terminada en 0)
Suma=0
Leer(Numero)
Cantidad=0
Mientras Numero<>0 hacer
Cantidad=Cantidad+1
Suma=Suma+Numero
Leer(Numero)
Fin Mientras
Si Suma<>0 entonces
Escribir (El promedio es:, Suma/Cantidad)
Fin Algoritmo

Ejercicios

1) Leer una serie de nmeros terminada en 0 y sumarlos.
2) Imprimir tres nmeros pares entre N y M.
3) Leer un texto terminado en . e imprimir la cantidad de palabras.
4) Leer dos nmero e indicar si son Coprimos.

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Repetir

Repetir Permite realizar un ciclo con una o ms condiciones de corte.

Sintaxis

Repetir
Accin/es
hasta <Expresin lgica>

El ciclo Repetir iterar siempre y cuando la Expresin lgica sea falsa.
Nota: - Modificar la/s variable/s de control dentro del ciclo.

Ejemplo
-
- Leer un numero entre 1 y 100 y luego imprimir el cuadrado del nmero.

Algoritmo Cuadrado
Repetir
Escribir(Ingrese un nmero entre 1 y 100 para obtener el cuadrado del mismo)
Leer(Numero)
Hasta Numero>=1 y Numero<=100
Escribir (El cuadrado es:, Numero * Numero)
Fin Algoritmo
Ejercicios

1) Leer un texto terminado en . e imprimir la cantidad de palabras.
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

2) Leer dos nmero e indicar si son Coprimos.

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV




Sub Algoritmos

Ejercicio 1
- Leer un nmero X entre 1 y 10 y luego leer N nmeros entre 1 y 10 e indicar cuales son coprimos con X.

En el problema descripto se pueden identificar problemas ms pequeos, es decir para solucionar el ejercicio se
deberan solucionar los siguientes subproblemas (1-5):
1- Leer un nmero X entre 1 y 10
2- Leer nmero N
3- Leer N nmeros (4- entre 1 y 10) 5-ver si son cooprimos con X

Un subalgoritmos o accin es un conjunto de acciones que sirven para resolver un problema.

Sintaxis

Subalgoritmo <Nombre>

Accin/es

Fin Subalgoritmo <Nombre>

Para poder invocar (ejecutar) un subalgoritmo se debe escribir el nombre del mismo como si fuese una accin ms.
Un subalgoritmo se puede invocar desde un algoritmo o desde otro subalgoritmo.
Los subalgoritmos se escriben al final del algoritmo.

Ejemplo
- Leer un nmero par e imprimir sus divisores
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Algoritmo Ejemplo
Escribir(Ingrese un nmero par)
Leer_Par
Para i<-1 hasta N Hacer
Si (N mod i=0) entonces
Escribir(i,Es divisor)
Fin si
Fin para
Fin Algoritmo

Subalgoritmo Leer_Par
Leer(N)
Mientras N mod 2 <> 0 hacer
Escribir(El nmero debe ser par)
Leer(N)
Fin mientras
Fin Subalgoritmo Leer_Par

El algoritmo funciona ejecutando accin por accin, cuando llega al subalgoritmo (o accin) Leer_Par se ejecutan
todas las acciones correspondientes a dicho subalgoritmo y luego continua el algoritmo a partir de la accin
siguiente a la invocacin del subalgoritmo. Las variables se comparten entre el algoritmo y los subalgoritmos.
El objetivo del uso de subalgoritmos es modularizar un algoritmo, es decir dividir al problema en subpromlemas,
resolver el problema con un algoritmo y a los sobproblemas con subalgoritmos. De esta forma cuando resuelvo un
problema me abstraigo de los pequeos detalles que no hacen en s al problema llamando a acciones
(Subalgoritmos) que una vez resuelto el problema principal tendr que solucionar.
La ventaja ms importante de modularizar es que los subprogramas se pueden reutilizar en el mismo algoritmo o en
otros.


Veamos el ejemplo planteado al principio
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


El algoritmo, con el uso de subalgoritmos quedara escrito de la siguiente forma.

Algoritmo Ejercicio_1
Leer_Y_Validar
X<-Numero
Escribir(Ingrese la cantidad de nmero que quiere ingresar)
Leer(N)
Para i<-1 hasta N
Lee_y_Validar
Ver_Cooprimos
Si Son_Coopromos entonces
Escribir(Los nmero son cooprimos)
Si no
Escribir(Los nmero no son cooprimos)
Fin si
Fin Para
Fin Algoritmo Ejercicio_1


Subalgoritmo Leer_y_Validar
Repetir
Escribir(Ingrese un nmero entre 1 y 10)
Leer(Numero)
Hasta (Numero<=10) ^ (Numero>=1)
Fin Subalgoritmo Leer_y_Validar

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Subalgoritmo Ver_Cooprimos
Son_Cooprimos<-V
Si X<Numero entonces
Min<-X
Si no
Min<-Numero
Fin si
i<-2
Mientras i<Min ^ Son_Cooprimos Hacer
Si Min mod i = 0 Entonces
Son_Cooprimos<-F
Si no
i<-i+1
fin si
Fin Subalgoritmo Ver_Cooprimos
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV



Ejercicios Integradores

Ejercicio 1:
Leer un nmero e indicar si es capica
Solucin: para saber si un nmero es capica, se puede averiguar de dos formas,
1
compara el primer nmero con el
ltimo, si son iguales comparar el segundo con el anteltimo y as sucesivamente hasta que alguna comparacin
difiera o se hallan comparado todas las cifras.
2
Otra forma, ms sencilla podra ser invertir el nmero y luego compararlo con el original.

1)
Algoritmo Capicua_1
Escribir (Ingrese un nmero)
Leer(Numero)
Calcular_Cant_Cifras
Es_Capicua<- V

Mientras Cant_Cifras>1 ^ Es_Capicua Hacer
Hallar_Primera_Cifra
Hallar_Ultima_Cifra
Si Primera_Cifra=Ultima_Cifra entonces
Cant_Cifras=Cant_Cifras-2
Sacar_Primera_Ultima
Si no
Es_Capicua<- F
Fin si
Fin Mientras

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Si Es_Capicua entonces
Escribir(Es Capicua)
Si no
Escribir(Es Capicua)
Fin si
Fin Algoritmo

Notar que en mi algoritmo principal se describen slo los grandes pasos a seguir sin caer en la problemtica de
resolver cada uno
Ahora slo quedan disear los subalgoritmos, o acciones, para solucionar los subproblemas (grandes pasos) .
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Subalgoritmo Calcular_Cant_Cifras
Cant_Cifras<-0
Numero_Aux<-Numero
Mientras Num_Aux>9 Hacer
Cant_Cifras<-Cant_Cifras+1
Num_Aux<_Num_Aux div 10
Fin Mientras
Fin Subalgoritmo Calcular_Cant_Cifras

Subalgoritmo Hallar_Primera_Cifra
Base<- 10
Exp<-Cant_Cifras-1
Potencia
Primera_Cifra<-Numero div Resultado
Fin Subalgoritmo Hallar_Primera_Cifra


Subalgoritmo Hallar_Ultima_Cifra
Ultima_Cifra<-Nuero mod 10
Fin Subalgoritmo Hallar_Ultima_Cifra

Subalgoritmo Sacar_Primera_Ultima
Numero<-Numero div 10
Exp<-Cant_Cifras-1
Potencia
Numero<-Numero Mod Resultado
Fin Subalgoritmo Sacar_Primera_Ultima
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Subalgoritmo Potencia
Resultado<-1
Para i<-1 hasta Exponente Hacer
Resultado<-Resultado*Base
Fin para
Fin Subalgoritmo Potencia

Nota : El algoritmo slo funciona con nmeros enteros y positivos.

2)
Algoritmo Capicua_2
Escribir (Ingrese un nmero)
Leer(Numero)
Invertir_Numero
Si Numero=Numero_Invertido entonces
Escribir(Es Capicua)
Si no
Escribir(Es Capicua)
Fin si

Fin Algoritmo

Notar que en este caso se resuelve el problema cambiando de problema, es decir el problema de saber si un
nmero es capica lo reduzco al problema de invertir un nmero

Subalgoritmo Invertir_Numero
Numero_Aux<-Numero
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Numero_Invertido<- Numero_Aux Mod 10
Mientras Numero_Aux>9 hacer
Numero_Aux<-Numero_Aux div 10
Numero_Invertido<-Numero_Invertido* 10 + Numero_Aux Mod 10
Fin Mientras
Fin Subalgoritmo Invertir_Numero


Ejercicio 2:
Desarrollar un algoritmo que resuelva un polinomio de una sola variable

Ej. 3x+5x
2
+9x
4


Algoritmo Polinomio
Escribir (Este algoritmo resuelve un polinomio de una variable evaluada en Valor)
Escribir(Ingrese grado del polinomio)
Leer(Grado)
Escribir(Ingrese Valor de X)
Leer(X)
Resultado<-0
Para i<-0 hasta Grado hacer
Base<-X
Exp<-i
Potencia
Escribir(Ingrese coeficiente ,i)
Leer(Coeficiente)
Resultado<-Resultado+Coeficiente*Res_Potencia
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Fin Para
Escribir(El resultado es: ,Resultado)
Fin Algoritmo

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Ejercicios Varios en Pseudocdigo (Resueltos y no resueltos)

1. Ingresar 2 nmeros distintos de cero e indicar cual es divisor de cual.

ALGORITMO Divisor
ESCRIBIR ('Ingrese dos nmeros distintos de cero: ')
LEER (NumUno, NumDos)
SI (NumUno > NumDos) ENTONCES
SI ((NumUno MOD NumDos) = 0) ENTONCES
ESCRIBIR('El nmero: ', NumDos)
ESCRIBIR('...es divisor de: ', NumUno)
FIN SI
FIN SI

SI (NumUno < NumDos) ENTONCES
SI ((NumDos MOD NumUno) = 0) ENTONCES
ESCRIBIR('El nmero: ',NumUno)
ESCRIBIR('...es divisor de: ',NumDos)
FIN SI
FIN SI

SI (NumUno = NumDos) ENTONCES
ESCRIBIR('Los nmeros son iguales.')
FIN SI
FIN ALGORITMO

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

2. Dada una velocidad indicada en metros por segundo convertir la misma a kilmetros por hora.
3. Ingresar un nmero, redondearlo e indicar si es par o impar.
4. Dadas las medidas de los lados de un tringulo indicar que tipo de tringulo es (equiltero, Escaleno o
Isoceles).
5. Ingresar 3 nmeros por teclado e imprimirlos en forma ordenada.
ALGORITMO Orden
ESCRIBIR('Ingrese tres nmeros: ')
LEER(A, B, C)
ESCRIBIR('Los nmeros ordenados son: ')
SI (A<B) Y (B<C) ENTONCES ESCRIBIR(A, B, C)
SI (A<B) Y (C<B) ENTONCES ESCRIBIR(A, C, B)
SI (B<A) Y (A<C) ENTONCES ESCRIBIR(B, A, C)
SI (B<C) Y (C<A) ENTONCES ESCRIBIR(B, C, A)
SI (C<A) Y (A<B) ENTONCES ESCRIBIR(C, A, B)
SI (C<B) Y (B<A) ENTONCES ESCRIBIR(C, B, A)
FIN ALGORITMO

6. Efectuar un algoritmo que permita obtener el valor de la funcin 4x
3
para un rango de valores ingresado.
ALGORITMO Tabla
Escribir('Indique el rango (Xi..Xf): ')
Leer(Xi,Xf)
Escribir('X:','Y:')
Para X=Xi Hasta Xf Hacer
Y=4*X*X*X
Escribir(X,Y)
Fin Para
FIN ALGORITMO

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Ejercicio Notas y Padrones

{ ENUNCIADO
ALGORITMOS Y PROGRAMACION I (75.40)
CATEDRA MANDRAFINA-OTERO-SALVIA
19/03/2003
CESAR GAZZO HUCK

UN CURSO DESEA ANALIZAR LAS NOTAS OBTENIDAD POR SUS ALUMNOS
SE PEDIRA EL INGRESO DEL PADRON Y LA NOTA OBTENIDA EN EL EXAMEN FINAL
PARA OBTENER CUAL ES LA NOTA MAS ALTA DEL CURSO Y CUAL ES LA MAS BAJA
CON SUS RESPECTIVOS PADRONES.
ADEMAS OBTENER UN PROMEDIO GENERAL DEL CURSO
}

ALGORITMO EJEMPLO

NOTA_MAX = 0
PADRON_MAX = 0
NOTA_MIN = 11
PADRON_MIN = 0
SUMATORIA = 0


ESCRIBIR('INGRESE EL NUMERO DE ALUMNOS DEL CURSO')
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

LEER(NUMERO_PADRONES)

PARA AUX = 1 HASTA NUMERO_PADRONES

ESCRIBIR('INGRESE EL PADRON DEL ALUMNO')
LEER(PADRON)

ESCRIBIR('INGRESE LA NOTA PARA EL ALUMNO [',PADRON,']');
LEER(NOTA)

{ ANALIZAMOS LOS DATOS }
SI NOTA => NOTA_MAX ENTONCES
NOTA_MAX = NOTA
PADRON_MAX = PADRON
FIN SI

SI NOTA <= NOTA_MIN ENTONCES
NOTA_MIN = NOTA
PADRON_MIN = PADRON
FIN SI

{ACUMULAMOS LAS NOTAS}
SUMATORIA = SUMATORIA + NOTA

FIN PARA

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

{MOSTRAMOS LOS RESULTADOS }
SI NUMERO_PADRONES > 0 ENTONCES
PROMEDIO = SUMATORIA/NUMERO_PADRONES
ESCRIBIR('EL PROMEDIO DEL CURSO ES :',PROMEDIO)
ESCRIBIR('LA NOTA MAS ALTA FUE :',NOTA_MAX,' Y CORRESPONDE
A:',PADRON_MAX)
ESCRIBIR('LA NOTA MAS BAJA FUE :',NOTA_MIN,' Y CORRESPONDE
A:',PADRON_MIN)
FIN SI

{ FIN DEL ALGORITMO }
FIN ALGORITMO

{ ALGORITMO MEJORADO }
{ ESTE EJEMPLO FUE MEJORADO PERMITIENDO QUE EL USUARIO ABANDONE INGRESANDO UN
PADRON = 0 }

ALGORITMO EJEMPLO

NOTA_MAX = 0
PADRON_MAX = 0
NOTA_MIN = 11
PADRON_MIN = 0
SUMATORIA = 0
NUMERO_PADRONES = 0

ESCRIBIR('INGRESE EL PADRON DEL ALUMNO')
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

LEER(PADRON)

MIENTRAS PADRON <> 0 HACER { SI EL USUARIO INGRESA CERO NO ENTRA AL CICLO}

NUMERO_PADRONES = NUMERO_PADRONES + 1

ESCRIBIR('INGRESE LA NOTA PARA EL ALUMNO [',PADRON,']');
LEER(NOTA)

{ ANALIZAMOS LOS DATOS }
SI NOTA => NOTA_MAX ENTONCES
NOTA_MAX = NOTA
PADRON_MAX = PADRON
FIN SI

SI NOTA <= NOTA_MIN ENTONCES
NOTA_MIN = NOTA
PADRON_MIN = PADRON
FIN SI

{ACUMULAMOS LAS NOTAS}
SUMATORIA = SUMATORIA + NOTA

ESCRIBIR('INGRESE EL PADRON DEL ALUMNO')
LEER(PADRON)

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

FIN MIENTRAS

{MOSTRAMOS LOS RESULTADOS }
SI NUMERO_PADRONES > 0 ENTONCES
PROMEDIO = SUMATORIA/NUMERO_PADRONES
ESCRIBIR('EL PROMEDIO DEL CURSO ES :',PROMEDIO)
ESCRIBIR('LA NOTA MAS ALTA FUE :',NOTA_MAX,' Y CORRESPONDE
A:',PADRON_MAX)
ESCRIBIR('LA NOTA MAS BAJA FUE :',NOTA_MIN,' Y CORRESPONDE
A:',PADRON_MIN)
FIN SI

{ FIN DEL ALGORITMO}
FIN ALGORITMO

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV


Diagramas de flujo

Introduccin.
Los diagramas de flujo son una manera de representar visualmente el flujo de datos a travz de sistemas de
tratamiento de informacin. Los diagramas de flujo describen que operacines y en que secuencia se requieren para
solucionar un problema dado.
Un diagrama de flujo u organigrama es una representacin diagramtica que ilustra la secuencia de las operaciones
que se realizarn para conseguir la solucin de un problema. Los diagramas de flujo se dibujan generalmente antes
de comenzar a programar el cdigo frente a la computadora. Los diagramas de flujo facilitan la comunicacin entre
los programadores y la gente del negocio. Estos diagramas de flujo desempean un papel vital en la programacin
de un problema y facilitan la comprensin de problemas complicados y sobre todo muy largos. Una vez que se
dibuja el diagrama de flujo, llega a ser fcil escribr el programa en cualquier idima de alto nivel. Vemos a menudo
cmo los diagramas de flujo nos dan ventaja al momento de explicar el programa a otros. Por lo tanto, est
correcto decir que un diagrama de flujo es una necesidad para la documentacin mejor de un programa complejo.
Reglas para dibujar un diagramas de flujo.
Los Diagramas de flujo se dibujan generalmente usando algunos smbolos estndares; sin embargo, algunos
smbolos especiales pueden tambin ser desarrollados cuando san requeridos. Algunos smbolos estndares, que
se requieren con frecuencia para diagramar programas de computadora se muestran a continuacin:

Inicio o fin del programa

Pasos, procesos o lneas de instruccion de programa de computo

Operaciones de entrada y salida

Toma de desicines y Ramificacin
[]APUNTE DE PSEUDOCODIGO Informtica UNDAV



Lneas de flujo

Anotacin
Observacin: Para obtener la correcta elaboracin de los smbolos, existen plantillas. Las puedes conseguir en
Papeleras.
Simbolos grficos
Dentro de los simbolos fundamentales para la creaacin de diagramas de flujo, los smbolos grficos son utilizdos
especificamente para para operacines aritmticas y relacines condicionales. La siguiente es una lista de los
smbolos ms comunmente utilizados:
+ Sumar
- Menos
* Multiplicacin
/ Divisin
Mas o menos
= Equivalente a
> Mayor que
< Menor que
>= Mayor o igual que
<= Menor o igual que
= o <> Diferente de
Si
No
True
False

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Reglas para la creacin de Diagramas
1. Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de izquierda a derecha.
2. Los smbolos se unen con lneas, las cuales tienen en la punta una flecha que indica la direccin que fluye la
informacin procesos, se deben de utilizar solamente lneas de flujo horizontal o verticales (nunca
diagonales).
3. Se debe evitar el cruce de lneas, para lo cual se quisiera separar el flujo del diagrama a un sitio distinto, se
pudiera realizar utilizando los conectores. Se debe tener en cuenta que solo se vana utilizar conectores
cuando sea estrictamente necesario.
4. No deben quedar lneas de flujo sin conectar
5. Todo texto escrito dentro de un smbolo debe ser legible, preciso, evitando el uso de muchas palabras.
6. Todos los smbolos pueden tener ms de una lnea de entrada, a excepcin del smbolo final.
7. Solo los smbolos de decisin pueden y deben tener mas de una lnea de flujo de salida.
Ejemplos de diagramas de flujo
Diagrama de flujo que encuentra la suma de los primeros 50 numeros naturales

[]APUNTE DE PSEUDOCODIGO Informtica UNDAV

Bueno, y ahora la descripcin del diagrama anterior
Suma, es la variable a la que se le va agregando la valor de cada nmero natural. N, es el contador. ste recorrer
lo nmeros hasta llegar al 50.
El primer bloque indica el inicio del Diagrama de flujo
El segundo bloque, es un Smbolo de procesos En este bloque se asume
que las variables suma y N han sido declaradas previamente y las inicializa en 0 para comenzar a el conteo y
la suma de valores (Para declararlas existe el bloque Tarjeta perforada).
El tercer bloque, es tambin un Smbolo de procesos En ste paso se
incrementa en 1 la variable N (N = N + 1). Por lo que, en la primera pasada esta N valdr 1, ya que estaba
inicializada en 0.
El cuarto bloque es exactamente lo mismo que el anterior Pero en ste, ya
se le agrega el valor de N a la variable que contendr la suma (En el primer caso contendr 1, ya que N = 1).
El quinto bloque es uno Smbolo de Toma de decisiones y Ramificacin Lo que hay dentro del bloque es
una pregunta que se le hace a los valores que actualmente influyen en el proceso (Por decir algo, no se como
decirlo, soy muy sope :D) Es N=50?, Obviamente la respuesta es no, ya
que N todava es 1. por lo que el flujo de nuestro programa se dirigir haca la parte en donde se observa la
palabra no: Tercer Bloque, ste le sumar 1 (N=N+1) y vuelve a llegar a ste bloque, donde preguntar Es
N=50?... No!, todava es 2. Ha pues, regresa al Tercer bloque y vuelve hacer lo mismo. Y as hasta llegar a
50, obteniendo as la suma de los primeros 50 primeros nmeros naturales.
Por ltimo indicamos que el resultado ser mostrado en la impresora (Este lo puedes cambiarlo por el display
para mostrar datos).
Fin del programa (o diagrama)

You might also like