Beruflich Dokumente
Kultur Dokumente
Diagramas de
Flujos
Humberto Urrutia Lpez
hurrutia@uta.cl
Ventajas de utilizar un
Pseudocdigo a un Diagrama
de Flujo
Ocupa menos espacio en una hoja
de papel
Permite representar en forma fcil
operaciones repetitivas complejas
Es muy fcil pasar de
Pseudocdigo a un programa en
algn lenguaje de programacin.
Si se siguen las reglas se puede
observar claramente los niveles
que tiene cada operacin.
Diagrama de Flujo
Un diagrama de flujo es una forma
de representar grficamente los
pasos para resolver un problema en
especfico. Estos diagramas utilizan
una
serie
de
smbolos
con
significados especiales y son la
representacin grfica de los pasos
de un proceso. En computacin es
un primer enfoque con lo que sera
la programacin formal.
Simbologa
Estructuras de
Programacin
Se identifican un conjunto mnimo de
estructuras bsicas de programacin:
Secuencia
Seleccin
Iteracin
Funcin o Procedimiento
Secuencia
Un nico hilo de ejecucin
Sucesivos pasos o acciones
que se ejecutan en estricto
orden
Secuencia (ordinograma)
Hola Mundo
Sumar 2 nmeros
Proceso sumar_2_numeros
Escribir "ingresa a"
Leer a
Escribir "Ingresa b"
Leer b
suma<- a+b
Escribir "El resultado de la suma es: ",suma
FinProceso
Intercambio
Imprime el valor luego del intercambio
var1 = 30, var2 = 10;
Recuerde que:
permetro = 2 * PI * radio;
rea = PI * radio * radio
rea = PI * radio ^2
Radio
CIRCULO
Permetro
rea
Seleccin
Dirigir el flujo de ejecucin a una
de entre varias alternativas
Escoge en funcin de condiciones
establecidas sobre los datos
Expresiones booleanas, valores
lgicos
CIERTO
FALSO
Seleccin
IF-THEN
Seleccin IF-THEN-ELSE
Seleccin SWITCH
1
2
3
4
5
6
7
8
IV
if n == 0:
print "You typed zero.\n"
elif n== 1 or n == 9 or n == 4:
print "n is a perfect square\n"
elif n == 2:
print "n is an even number\n"
elif n== 3 or n == 5 or n == 7:
print "n is a prime number\n"
Proceso tabla_mult
Leer n
Proceso par_impar
Escribir "Ingresar el numero"
Leer n
Si (nMOD2=0) Entonces
Escribir a,"Es Par"
Sino
Escribir a, "Es Impar"
Fin Si
FinProceso
Iteracin
Iteracin
FOR
IV
Operadores y Funciones
Las siguientes tablas exhiben la totalidad de los operadores
de este lenguaje reducido:
FUNCIN
O
PROCEDIMIENTO
34
Funciones
Cundo se Utilizan?
La idea es Dividir y Conquistar, es decir,
particionar el problema en pequeas
subtareas las cuales son ms fciles de
abordar.
Todo problema se puede resolver con
funciones o sin ellas, pero la aplicacin
de stas hace el programa ms eficiente,
fcil de analizar y testear.
Profesor: Humberto Urrutia Lpez
35
Funciones
Ventajas:
1.- Facilita el diseo descendente.
2.- Los procedimientos se ejecutan
ms de una vez.
3.- Facilita la divisin de tareas.
4.- Se pueden comprobar(testear)
individualmente
36
Funcin Procedimiento
Procedimiento
Si no devuelve ningn valor
Profesor: Humberto Urrutia Lpez
37
Funcionalidades
Crear una funcin para cada
funcionalidad o mtodo de
cada mdulo del programa
Aunque slo se use una
vez!
Programa = conjunto de
funciones
Profesor: Humberto Urrutia Lpez
38
Funcin principal
Es el punto de entrada al
programa
Mnimo programa C correcto
39
40
41
42
43
44
45
46
47
48
49
Cadenas en PSeInt
PSeInt incluye algunas funciones predefinidas para
operar con cadenas de caracteres. Veamos cuales
son y que propsito tienen:
Longitud(x): Retorna la cantidad de caracteres
de una cadena x.
Mayusculas(x): Convierte a maysculas la
cadena x.
Minusculas(x): Convierte a minsculas la
cadena x.
Subcadena(x,inicio,fin): Extrae una parte de la
cadena x indicando desde cal hasta que letra.
Concatenar(x,y): Une las cadenas x y y.
Profesor: Humberto Urrutia Lpez
50
51
FinProceso
Profesor: Humberto Urrutia Lpez
52
Factorial de un nmero
El siguiente pseudocodigo calcula el
factorial de un nmero ingresado por el
usuario:
Proceso factorial acum<-1;
Escribir "Digite un numero para calcular su factorial";
Leer num;
Para i<-1 Hasta num Con Paso 1 Hacer
acum<-acum*i;
FinPara
Escribir "El factorial de ",num," es ",acum;
FinProceso
Profesor: Humberto Urrutia Lpez
53
Ejercicios
a.Desarrolle un algoritmo que realice la sumatoria de
los nmeros enteros mltiplos de 5, comprendidos entre
el 1 y el 100, es decir, 5 + 10 + 15 +. + 100. El
programa deber imprimir los nmeros en cuestin y
finalmente su sumatoria
a.Desarrolle un algoritmo que realice la sumatoria de
los nmeros enteros pares comprendidos entre el 1 y
el 100, es decir, 2 + 4 + 6 +. + 100. El programa
deber imprimir los nmeros en cuestin y finalmente
su sumatoria
a.Desarrolle un algoritmo que lea los primeros 300
nmeros enteros y determine cuntos de ellos son
impares; al final deber indicar su sumatoria.
Profesor: Humberto Urrutia Lpez
54
55
Proceso Digitos