Diseño de diagramación
Diagrama: es una representación gráfica del flujo información de y el proceso
de ejecución del programa.
comienzo
A
Plateo del problema
en forma clara y
precisa
Traducción a
lenguaje fuente
Identificar las
variables de entrada
y salida
Verificación (prueba
de escritorio)
fin
Tareas para resolver
el problema
(Algoritmo)
A
Diagrama de Bloque
Diagrama de flujo: se utiliza para describir gráficamente un algoritmo
Indica comienzo o
fin del algoritmo
Indican el
flujo
Asignación de l
resultado a una
variable
Indican
continuación
Operaciones de
entrada y salida
Indican un
proceso
iterativo o un
proceso
reiterativo
Indica elección
entre 2 opciones
Hace referencia a
una “subrutina”
EJ: Dado un numero A calcular su raíz cuadrada e imprimirlo
Diagrama de flujo
comienzo
Leo
A
no
A> 0
Imprimo:
‘No tiene
solución’
si
B=sqrt(A)
Imprimo :
‘ la raíz
es ‘ B
fin
Constantes y variables lógicas
Sólo tienen 2 opciones: verdadero o falso
Las contantes tienen la siguiente forma:
.true.
.false.
Las variables lógicas deben ser declaradas se escriben antes de las sentencias
ejecutables:
Logical : : var1, var2, var3
Un operador lógico opera sobre datos numéricos, alfabéticos o lógicos
Operadores F90
Operadores F
anteriores
significado
==
.EQ.
Igual a
/=
.NE.
distinto
>
.GT.
Mayor que
>=
.GE.
Mayor o igual
<
.LT.
Menor que
<=
.LE.
Menor o igual
Ej
Operación
Resultado
3<4
.true.
3<=4
.true.
3==4
.false.
3>4
.false.
4<=4
.true.
‘A’ <‘B’
.true.
En los caracteres alfabéticos se considera orden alfabético
Si comparo entero con real, el entero es convertido a real
automáticamente.
4.==4 .true.
Combinaciones lógicas
operación
Función
Resultado y definición
l1.AND.l2
Logical AND
Verdadero si l1 y l2 verdaderos
l1.OR. L2
Logica OR
Verdad si l1 o l2 verdad o l1 y l2
son verdad
l1.EQV. l2
Logical EQV
Verdad si l1 y l2 verdad o l1 y l2
son falsos
l1.NEQV. L2
Logical
NEQV
Verdad si l1 verdad y l2 falso
o lo contrario
.NOT. L1
Logical NOT
Verdad si l1 es falso y falso si es
verdad
l1
l2
l1.AND.l2
.FALSE.
.FALSE.
.FALSE.
.FALSE.
.TRUE.
.FALSE.
.FALSE.
.TRUE.
.FALSE.
.TRUE.
.FALSE.
.TRUE.
.TRUE.
.FALSE.
.FALSE.
.TRUE.
.FALSE.
.TRUE.
.TRUE.
.TRUE.
.TRUE.
.TRUE.
.TRUE.
.FALSE.
L1.OR.l2
L1.EQV.l2
l1
.NOT. l1
.FALSE.
.TRUE.
.TRUE.
.FALSE.
L1.NEQV.l2
Ej: Diseñar y escribir un programa para resolver las raíces de una
ecuación cuadrática distinguiendo a que tipo pertenecen.
1 Problema: Resolver la ec. Y ver si el resultado tiene 2 raíces reales
distintas, 2 raíces reales igual es o raíces complejas
2 Definir entradas y salidas
ax2+bx+c=0
los datos de entrada son los coeficientes a, b y c
La salida son las raíces del la ecuación distinguiendo su tipo.
3
El algoritmo:
comienzo
Lectura de
a,b y c
b**2-4*a*c > 0
si
Imprimir:
La ec tiene 2 raíces
Distintas reales
b**2-4*a*c > 0
si
Imprimir:
La ec tiene 2 raíces
Distintas complejas
Imprimir:
La ec tiene 2 raíces
iguales
fin
Descargar

Diapositiva 1