Professional Documents
Culture Documents
Tema 3
Estructuras de Control
Tipos de estructuras de
control
Estructuras de control
1. Estructuras secuenciales
Estructuras secuenciales
1. Asignacin
2. Lectura / Entrada
3. Escritura / Salida
2. Estructuras condicionales
Bucle MIENTRAS
Bucle REPETIR-HASTA
Bucle PARA
Bucles infinitos y bucles anidados
4. Algunos ejemplos
Tema 3. Estructuras de control
3. Estructuras repetitiva
Estructuras Condicionales
1. Simple
2. Anidadas
3. Mltiple
1.
2.
3.
4.
Ejemplos
var exp
Ejemplos:
a 3.0
b (2.0*c+4)/8
hipotenusa SQRT(cateto12+cateto22)
3
5
2
B
C
A*B
B
A=2
B=2
C = 10
A
B
C
A
B
C
30
10
7
A DIV C
A*3 DIV C+2
A DIV B DIV C
A=4
B=3
C=0
A
B
C
A
B
C
10
5*A
B*2
C MOD 3
C DIV 3
A+22
A=1
B = 33
C=5
A
B
C
A
B
C
13
15
12
(C-B) (B-A)
A
A*B
A=9
B=9
C = 81
A
B
C
A
B
C
8
A*(3-A)
A-B
B MOD A
-C-(B-A)
A*B
A=0
B = -8
C=0
c (d+2)<7
Tema 3. Estructuras de control
Estructuras secuenciales
Lectura/Entrada
Estructuras secuenciales
Escritura/Salida
LEER(var)
ESCRIBIR(exp)
ESCRIBIR(hipotenusa)
ESCRIBIR(b+3)
LEER(cateto1)
ESCRIBIR(Hola)
LEER(nota1, nota2)
Estructura bsica de un
algoritmo
ALGORITMO nombre.
Descripcin
CONSTANTES
id_cte1 = valor1
id_cteN = valorN
VARIABLES
id_var1 : tipo1
id_varM : tipoM
1. [Inicio]
Sentencias
Estructuras condicionales
SI condicin ENTONCES
Sentencias en caso de verdad
SINO
Sentencias en caso de falso
FIN_SI
SI condicin ENTONCES
Sentencias en caso de verdad
FIN_SI
Falso
SI (a<b) ENTONCES
Mayor a
Mayor b
ESCRIBIR(El valor mayor es b=,b)
SINO
ESCRIBIR(a)
Mayor a
ESCRIBIR(El valor mayor es a=,a)
FIN_SI
SI-ENTONCES
SI (longitud<=0) ENTONCES
ESCRIBIR(Imposible hacer el
clculo. La longitud debe ser un
nmero positivo)
FIN_SI
Tema 3. Estructuras de control
Longitud<=0
Falso
a<b
Condicin
Verdad
Sentencias
caso verdad
Falso
Sentencias
caso verdad
Estructuras condicionales
SI-ENTONCES-SINO
Falso
Sentencias
caso falso
F. [Fin]
10
Condiciones
Verdad
Mayor b
TEST T
ESCRIBIR(b)
TEST 3<5
Verdad
ESCRIBIR(Imposible
hacer el clculo)
11
12
Estructuras condicionales
anidadas
Estructuras condicionales
mltiples
13
S2
Falso
Verdad
Sentencias
15
Cuerpo del
Bucle
Falso
16
Condicin
i1
MIENTRAS (i>0) HACER
i i+1
i i-1
FIN_MIENTRAS
ESCRIBIR(El valor de i es ,i)
Verdad
Bucles infinitos
REPETIR
HASTA condicin
Sc
Cuerpo del
Bucle
Bucle REPETIR-HASTA
Sn
Condicin
Bucle MIENTRAS
Bucle REPETIR-HASTA
Bucle PARA
var=valor_n
14
Estructuras repetitivas
S1
Bucle MIENTRAS
var=valor_2
var=valor_1
Acciones para
otros valores
de var
var=?
CASO num
1: ESCRIBIR(El nmero es 1)
2: ESCRIBIR(El nmero es 2)
3,4: ESCRIBIR(El nmero es 3 o 4)
EN OTRO CASO ESCRIBIR(Entrada no vlida)
FIN_CASO
Estructuras repetitivas
Valor_n: Sn
EN OTRO CASO Sc
FIN_CASO
SI (a<b) ENTONCES
SI (b<c) ENTONCES
Mayor c
SINO
Mayor b
FIN_SI
SINO
SI (a<c) ENTONCES
Mayor c
SINO
Mayor a
FIN_SI
FIN_SI
Sentencias
17
18
Bucles anidados
Bucle PARA
Correctos
Incorrecto
19
var inicio
MIENTRAS (var<=fin) HACER
Sentencias
var var + 1
FIN_MIENTRAS
21
Validacin de datos de
entrada
Verdad
var<=fin
Cuerpo del
Bucle
Sentencias
20
Ejemplo: Factorial
22
ALGORITMO validacion_mientras.
ALGORITMO validacion_repetir.
VARIABLES
VARIABLES
nota: REAL
nota: REAL
1. [Entrada de datos]
1. [Entrada de datos]
ESCRIBIR(Introduzca la nota: )
REPETIR
LEER(nota)
ESCRIBIR(Introduzca la nota: )
MIENTRAS (nota<0.0) OR (nota >10.0)
LEER(nota)
HACER
HASTA (nota>=0.0) AND
ESCRIBIR(La nota debe ser un n real
(nota<=10.0)
entre 0 y 10. Intntelo de nuevo: )
2. [Salida de datos]
LEER(nota)
ESCRIBIR(La nota es , nota)
FIN_MIENTRAS
3. [Fin]
2. [Salida de datos]
ESCRIBIR(La nota es , nota)
3. [Fin]
Falso
ALGORITMO factorial_mientras.
ALGORITMO factorial_para.
VARIABLES
VARIABLES
N, i, fact: ENTERO
N, i, fact: ENTERO
1. [Entrada del nmero N]
1. [Entrada del nmero N]
LEER(N)
LEER(N)
2. [Calcular el factorial]
2. [Calcular el factorial]
fact 1
fact 1
i1
PARA i=1 HASTA N HACER
MIENTRAS (i<=N) HACER
fact fact * i
fact fact * i
FIN_PARA
ii+1
3. [Mostrar el resultado]
FIN_MIENTRAS
ESCRIBIR(Factorial de ,N, es ,fact)
3. [Mostrar el resultado]
4. [Fin]
ESCRIBIR(Factorial de ,N, es ,fact)
4. [Fin]
23
ALGORITMO repeticion.
VARIABLES
respuesta: CARACTER
1. [Inicio]
REPETIR
Desarrollo del algoritmo
ESCRIBIR(Desea volver a ejecutar el programa (S/N)? )
LEER(respuesta)
HASTA (respuesta=N) OR (respuesta=n)
F. [Fin]
24