estructurasdecontrol
Download
Report
Transcript estructurasdecontrol
El pseudocódigo es una herramienta de
programación en la que las instrucciones se
escriben en palabras similares al inglés o
español, que facilitan tanto la escritura como
la lectura de programas. En esencia, el
pseudocódigo se puede definir como un
lenguaje de especificación de algoritmos
Inicio
FinSegun
Fin
Mientras
Leer
Hacer
Escribir
FinMientras
Si
Repetir
Entonces
HastaQue
Sino
Para
FinSi
FinPara
Según
Desde
Mantiene una identación o sangría adecuada para facilitar la
identificación de los elementos que lo componen.
Permite la declaración de los datos (constantes y/o variables)
manipulados por el algoritmo.
Dispone de un conjunto pequeño de palabras reservadas
(normalmente escritas con letra negrita) para expresar las
acciones del algoritmo.
Supera las dos principales desventajas del diagrama de flujo:
lento de crear y difícil de modificar.
Permite el seguimiento de la lógica de un algoritmo.
Las estructuras de control básico son:
secuencia
selección
repetición
Las estructuras de secuencia también son conocidas como
sentencias o proposiciones.
Una sentencia o proposición es una unidad completa,
ejecutable en sí misma.
La ejecución de estas sentencias se realiza de manera
secuencial, es decir, cada una a continuación de la
anterior, empezando por la primera y terminando con la
última.
Es un conjunto de declaraciones y sentencias
Consiste en una sola sentencia:
(proposiciones) agrupadas dentro de los
Pseudocódigo
delimitadores INICIO y FIN.
Sintaxis
sentencia 1
sentencia 2
.
Ejemplos:
Una proposición compuesta de 2 enunciados:
a)
INICIO
X 5
.
Y 89
Por ejemplo:
FIN
b)
a ) Edad 18
Una proposición compuesta de 4 enunciados:
INICIO
b ) SUMA DATO1 + DATO2 + DATO3
PRECIO 89.50
c ) Escribir (‘ Dame tu opción’)
INTERES 0.15
COSTO_FINAL PRECIO + INTERES
En algunos lenguajes de programación las sentencias
terminan con el carácter punto y coma (;).
ESCRIBE(‘El costo final del producto es: ’,
COSTO_FINAL)
FIN
Proposición simple
Proposición compuesta
.
.
.
Sentencia 1
Sentencia 2
Sentencia 3
.
.
.
Expresiones lógicas y relacionales
a) Operadores relacionales
Los operadores relacionales se usan para comparar expresiones. Una expresión
que contiene un operador relacional evalúa a cierto (1) o falso (0).
Sintaxis:
expresion1 operador relacional expresion2
Operadores relacionales
Operador
Símbolo (en pseudocódigo)
Igual
==
Mayor que
>
Menor que
<
Mayor qué o igual a
>=
Menor qué o igual a
<=
Diferente
<>
Al comparar una expresión es como si se realizaran preguntas:
Ejemplos: Supongamos que se tienen las variables x=5, y=100, z= -2
Expresión
relacional
Evalúa a
Pregunta
x>y
Falso
¿ x es mayor que y ?
x == y
Falso
¿ x es igual a y ?
y == 100
Cierto
¿ y es igual a 100 ?
x<= y
Cierto
¿ x es menor o igual a y ?
x <> y
Cierto
¿ x es distinto de y ?
(5 + 80 ) < 200
Cierto
¿ 5 + 80 es menor que 200 ?
Falso
¿ x*2 es mayor que x + y +z ?
x*2 > (x + y + z)
b) Operadores lógicos
Algunas veces se necesitará hacer más de una pregunta relacional al mismo
tiempo. Los operadores lógicos permitirán combinar dos o más expresiones
relacionales en una sola expresión que evalúa a cierto (1), o falso (0).
Sintaxis:
Para operadores o e y
expresion1 operador lógico expresión2
Para operador no
no expresión
Operadores lógicos
Operador
Símbolo (en pseudocódigo)
y
y o bien and
o
o o bien or
no
no o bien not
Al comparar una expresión es como si se realizaran preguntas:
Ejemplos: Supongamos que se tienen las variables x=5, y=100, z= -2
Expresión
Lógica
Evalúa a
Pregunta
(x > y) y (x<>z)
Falso
¿ x es mayor que y y x es diferente de z ?
(x == y) o (x>y)
Falso
¿ x es igual a y o x es mayor que y ?
(y == 100) y (x<>y)
Cierto
¿ y es igual a 100 y x es diferente que y?
(x<= y) o (x==5)
Cierto
¿ x es menor o igual a y o x es igual a 5?
not (x <> y)
Falso
no (¿ x es distinto de y ?)
not((x+5<z) o (z<>-2))
Cierto
no(¿ x+5 es menor que z o z es diferente de
-2 ?)
Jerarquía de operadores aritméticos
Operador
Jerarquía
Operación
^
mayor
Potencia
*, /, mod, div
+, -
Multiplicación,
división, módulo,
división
menor
Suma, resta
7+5-6=12-6=6
9+7*8-36/5=9+56-36/5=9+56-7.2=657.2=57.8
7*5^3/4div3=7*125/4div3=875/4div3=218.7
5div3=72
7*8*(160 mod 3 ^ 3) div 5 *13 – 28 =3612
15/2 * (7 + (68-15*33+(45^2/16)/3)/15)+19
= -120.9062
A=5, B=16, evalúa de izquierda a derecha
◦ (A^2) > (B*2)
◦ Falso
X=6, B=7.8
◦ (X*5 + B^3/4 ) <= (x^3 div B)
◦ Falso
((1580 mod 6 * 2^7) > (7+8*3^4)) > ((15*2) ==
(60*2/4))
◦ Falso
No(15>=7^2) o (43-8*2 div 4 <> 3 *2 div 2)
◦ Verdadero
Tarea revisar ejemplos libro pag 20,21
Operadores
Jerarquía
()
mayor
^
*,/,div,mod
==,<>,<,>,<=,>=
No
Y
O
menor
Construya un diagrama
de flujo tal que dado los
datos A, B, C y D que
representan números
enteros, escriba los
mismos en orden
inverso.
INICIO
A,B,C,D
D,C,B,A
FIN
Construya un diagrama de flujo tal que dado los datos
enteros A y B, escriba el resultado de la siguiente expresión:
◦ (A+B)^2/3
Dada la matricula y 5 calificaciones de un alumno obtenidas a
lo largo del semestre, construya un diagrama de flujo que
imprima la matricula del alumno y el promedio de sus
calificaciones.
Escriba un diagrama de flujo que permita calcular e imprimir
el cuadrado y cubo de un número entero positivo NUM.
Construya un diagrama de flujo tal que dado como datos la
base y la altura de un rectángulo, calcule el perímetro y la
superficie del mismo.
◦ Perímetro= 2*(base+altura)
TAREA: Consultar los problemas resueltos del libro, pag 37
Se evalúa la condición, si la condición es cierta se realiza
proposición, y si es falsa entonces no se realiza la proposición.
Pseudocódigo
Sintaxis:
Si condición Entonces
sentencia simple o
sentencia compuesta
FinSi
Condicional simple
Diagrama de flujo
.
.
.
Con
dició
n
no
si
Alternativa
verdadera
Alternativa
Bloque de
instruccio
nes
.
.
.
falsa
Condicional simple
Se evalúa la condición, si la condición es cierta se realizan las
proposiciones del cuerpo del entonces, y si es falsa entonces se
realizan las proposiciones del cuerpo del Sino.
Pseudocódigo
Sintaxis:
Si condición Entonces
sentencia simple o
sentencia compuesta
Sino
sentencia simple o
sentencia compuesta
FinSi
Condicional doble
Diagrama de flujo
.
.
.
si
Alternativa
verdadera
Con
dició
n
Bloque de
instruccio
nes
no
Bloque de
instruccio
nes
.
.
.
Alternativa
falsa
Condicional doble