Beruflich Dokumente
Kultur Dokumente
Inicio/Fin
Proceso
Entrada/Salida
Decisin
En un diagrama de flujo, estos smbolos estarn conectados por flechas apuntando en la direccin
del flujo del proceso.
Estructuras secuenciales
El diagrama de flujo completo de un programa debera tener un punto de entrada y uno de salida y
al menos un bloque de proceso entre ellos. La figura siguiente muestra una estructura secuencial
para el clculo de una suma:
Inicio
Leer a,b
S a+b
Escribir S
Fin
Inicio
Leer a,b
S a+b
Escribir S
Fin
Otro ejemplo de una estructura secuencial en SMath Studio que muestra mas de un paso de clculo.
La estructura secuencial en SMath Studio no necesita ser estrictamente vertical, como se muestra
abajo (de hecho SMath Studio calcula de izquierda a derecha y de arriba hacia abajo).
El comando line se puede usar para aadir estructuras secuenciales a puntos de entrada en otras
instrucciones de programacin como se ve en la prxima figura.
Estructura de Decisin
Una estructura de decisin provee caminos alternativos al flujo de procesos de un programa basado
en que una declaracin lgica sea verdadera o falsa. Como un ejemplo de una estructura de
decisin, observe el diagrama de flujo para la siguiente instruccin:
Inicio
Leer x
?
x < -1
Verdadero
Falso
y |x -1|
y |x +1|
Fin
Declaraciones if anidadas
Las estructuras de decisin, como if pueden anidarse (o encajarse) como se muestra:
en el segundo caso x>y, entonces se activa la clausula else y se cambia el signo de ambas variables:
Estructuras de repeticin
En una estructura de repeticin el flujo del proceso se repite un nmero finito de veces antes de ser
conducido fuera del bucle. El diagrama de flujo que se muestra contiene en su parte central una
estructura de bucle. El propsito de este diagrama es calcular una sumatoria, sea
S n= k=1
1
.
k
Inicio
Leer n
Sn 0, k 0
k k+1
?
k>n
Sn Sn +1/k
Escribir n, Sn
Fin
Obsrvese que la sumatoria se puede calcular usando el comando sumatoria de SMath Studio:
Otro ejemplo de bucle while en SMath Studio:
Los bucles while se pueden anidar (encajar) como se ve a la izquierda en la figura siguiente. A la
derecha el mismo clculo como una sumatoria doble.
La figura muestra un diagrama de flujo que representa una estructura de repeticin en forma
n
1
compacta para la sumatoria S n= k=1
.
k
Inicio
Leer n
Sn 0
Inicio
k1
k>n
k k+1
k k0
k k +k
k > kf
Sn Sn + 1/k
Instrucciones
a repetir en
el bucle
Fin
Escribir
n, Sn
Fin
El comando for en SMath Studio utiliza un range (rango) de valores que son los que tomar el
ndice para completar el bucle
El programa de sumatoria doble implementado antes con bucles while, se puede implementar con
bucles for:
tr
Funciones de ordenamiento: csort, reverse, rsort, sort
Operaciones sobre matrices: alg, invert, transpose
En el documento Introduction to the use of SMath Studio hay ejemplos de operaciones con
matrices.
Pasos en programacin
Los siguientes son pasos recomendados para producir programas eficientes:
(1)
(2)
(3)
(4)