ESTRUCTURA DE CONTROL
9 de abril de 2024
ESTRUCTURA DE CONTROL SELECTIVAS
La forma de tomar decisiones en un
programa es a través de las
estructuras de control.
ESTRUCTURA DE CONTROL SELECTIVAS
Se evalúa una condición y en función del resultado de
la misma se realiza una operación u otra. Las
condiciones se especifican usando expresiones lógicas
(5>6).
Se clasifican en:
• Simples
• Dobles
• Múltiples
ESTRUCTURA DE CONTROL SELECTIVAS SIMPLE
SI (condición) entonces
accion1 accion2
:
accionN
FinSI
La instrucción “SI” ejecuta el bloque de
instrucciones únicamente si al evaluarse la
condición, ésta es verdadera, se cumple la
condición.
ESTRUCTURA DE CONTROL SELECTIVAS SIMPLE
Ejemplo:
SI (A>5) entonces
A=A+5
FinSI
ESTRUCTURA DE CONTROL SELECTIVAS DOBLE
si <expresión de prueba> entonces
sentencia(s)
si_no
sentencias(s)
fin_si
ESTRUCTURA DE CONTROL SELECTIVAS DOBLE
Ejemplo:
si (A>5) entonces
B=A+5
si_no
B=A*5
fin_si
ESTRUCTURA DE CONTROL SELECTIVAS
MÚLTIPLE
La instrucción de selección Anidada o múltiples permite expresar
situaciones donde hay más de una condición que se debe tomar en
cuenta.
SI (condición1) ENTONCES
Acciones 1
SINO
SI (condición2) ENTONCES
Acciones2
SINO ...
fin_si
Fin-Si
ESTRUCTURA DE CONTROL SELECTIVAS
MÚLTIPLE
Inicio
Entero A, B
Leer A , B
Ejemplo: Diseñe un Si ( A > B ) entonces
algoritmo que dado dos Escribir “A es mayor que B“
números A y B, sino
determine si A es mayor, Si ( A = B ) entonces
igual o menor a B. Escribir “A es igual a B“
sino
Escribir “A es menor que B“
Fin-Si
Fin- Si
Fin
ESTRUCTURA DE CONTROL REPETITIVA
Las estructuras cíclicas se utilizan
para ejecutar fragmentos de código
un número limitado de veces.
ESTRUCTURA DE CONTROL REPETITIVA
1. Contiene o representa un bucle o conjunto de
instrucciones que se repiten un número finito de
veces.
2. Cada repetición del bucle se llama una iteración.
3. Todo bucle tiene asociada una condición, que es
la que va a determinar si se ejecuta el bucle y
hasta cuando.
ESTRUCTURA DE CONTROL REPETITIVA
Existen tres tipos básicos de estructuras
repetitivas:
Mientras hacer
Repetir hasta
Para
ESTRUCTURA DE CONTROL REPETITIVA
(MIENTRAS)
La estructura Mientras-hacer Mientras (condición) hacer
está formada por dos partes: accion1
1. La expresión de tipo lógico
accion2
que se evalúa cada vez que se
repite el ciclo. :
2. El grupo de instrucciones accionN
que se ejecutan para cada Fin Mientras
iteración.
Mientras la condición sea verdadera
se repite el bucle hasta que la
condición sea falsa
ESTRUCTURA DE CONTROL REPETITIVA
(MIENTRAS)
Inicio
Entero NUM
NUM = 0
Mientras (NUM < 5) hacer
NUM= NUM + 1 Instrucciones del ciclo
Escribir NUM
Fin mientras
Fin
ESTRUCTURA DE CONTROL REPETITIVA
(REPETIR HASTA)
Es una estructura de ciclo en la que Repetir
la condición se evalúa después de
realizar la primera iteración del bucle. Accion1
Accion2
Se repite el bucle mientras la :
condición del ciclo al final se mantenga
en falsa. AccionN
Cuando se cumple la condición se Hasta (condición)
sale del bucle.
ESTRUCTURA DE CONTROL REPETITIVA
(REPETIR HASTA)
Inicio
Entero NUM, SUM
NUM = 0 Declaración e inicialización de variable NUM y SUM
SUMA = 0
Repetir
NUM= NUM + 1
Instrucciones del bucle
SUMA= SUMA + NUM
Hasta (NUM == 5)
Escribir “La suma es: , “ SUMA”
Fin
ESTRUCTURA DE CONTROL REPETITIVA
(MIENTRAS y REPETIR)
Inicio Inicio
Entero NUM Entero NUM, SUM
NUM = 0
NUM = 0
SUMA = 0
Mientras (NUM < 5) hacer Repetir
NUM= NUM + 1 NUM= NUM + 1
Escribir NUM SUMA= SUMA + NUM
Fin mientras Hasta (NUM == 5)
Fin Escribir “La suma es: , “ SUMA”
Fin
ESTRUCTURA DE CONTROL REPETITIVA
(PARA)
Es una estructura de ciclo que se usa cuando se
sabe el número exacto de veces que se va a Para i=1 HASTA 10 hacer
ejecutar el bucle. accion1
• El bucle lleva asociada una variable accion2
denominada índice o contador, se le asigna un
valor inicial y se establece cual va a ser su valor :
final. accionN
• La variable índice se incrementa o decrementa
en cada iteración del bucle en un valor Fin Para
constante de manera automática.
• El programador no se debe de ocupar de
actualizar el valor de esta variable en cada
iteración del bucle, es una operación implícita.
ESTRUCTURA DE CONTROL REPETITIVA
(PARA)
Inicio
Entero NUM, SUM Declaración e inicialización de variable
NUM y SUM
SUMA = 0
Para (NUM = 1) hasta 5 hacer
Instrucciones del bucle
SUMA = SUMA + NUM
Fin desde Instrucciones que se ejecutan al
Escribir “La suma es: , “ SUMA” salir del bucle
Fin
PROBLEMA
Pedro quiere verificar su cédula en el padrón
electoral para participar en el proceso de elección
para presidente. Diseñe el algoritmo para saber si
puede ejercer su derecho al voto, con base año de
nacimiento. Como resultado se debe emitir un
mensaje de si puede votar o no.
ANALISIS/DISEÑO
Debemos definir el problema.
1. ¿Qué datos de entrada se requieren?
Año de nacimiento de Pedro
2. ¿Cuál es la salida deseada?
Si puede votar o no
3. Cuál es el proceso que se debe realizar, que debo hacer
para resolver el problema
SOLUCIÓN
algoritmo edad
Entero añoactual, añonac, Edad
Inicio
Leer añonac
añoactual = 2024
Edad = añoactual - añonac
Si (Edad >= 18) entonces
Imprimir “Puede votar”
Si_no
Escribir “No puede votar”
Finsi
Fin
PROBLEMA
Diseñe un algoritmo que, dado un número real
que entra como dato, nos indique si está
contenido dentro de los límites
predeterminados. El límite inferior es de 40 y el
superior de 80.
ANALISIS/DISEÑO
Debemos definir el problema.
1. ¿Qué datos de entrada se requieren?
Un número, límite inferior , límite superior
2. ¿Cuál es la salida deseada?
Si el número leído está contenido dentro del rango indicado.
3. Cuál es el proceso que se debe realizar, que debo hacer
para resolver el problema
Verificar el número leido
SOLUCIÓN
Algoritmo número
Inicio
LimInferior = 40
LimSup = 80
Leer número
Si Número >= LimInf entonces
Si Número =< LimSup entonces
Imprimo “está dentro de los límites”
Sino
Imprimo “supera al límite máximo”
Sino
Imprimo “no alcanza el límite mínimo”
fin
PROBLEMA
Una tienda ofrece 15% de descuento de la venta
total si esta es mayor de B/.300.00 y solo un 10%
descuento si la venta es igual a B/ 300.00 o menor.
Elabore un algoritmo que permita obtener cuanto
pagará por su compra el cliente.
ANALISIS/DISEÑO
Debemos definir el problema.
1. ¿Qué datos de entrada se requieren?
Venta total
2. ¿Cuál es la salida deseada?
Cuánto pagará por su compra el cliente.
3. Cuál es el proceso que se debe realizar, que debo hacer
para resolver el problema
Calcular el porcentaje a descontar
SOLUCIÓN
Algoritmo número
Real venta, desc, ventatotal
Inicio
Leer venta
Si venta > 300.00 entonces
desc = venta * (15/100) 0 venta * 0.15 Puede hacerlo de esta forma
ventatotal = venta – desc
ventatotal = venta – (venta * 0.15)
Sino Puede hacerlo de esta forma
desc = venta * (10/100) o venta * 0.10
ventatotal = venta – desc
ventatotal = venta – (venta * 0.10)
fin_si
Fin
PROBLEMA
Escribir los números del 1 al 100
ANALISIS/DISEÑO
Debemos definir el problema.
1. ¿Qué datos de entrada se requieren?
El total de la venta
2. ¿Cuál es la salida deseada?
Cuánto debe pagar el cliente
3. Cuál es el proceso que se debe realizar, que debo hacer para
resolver el problema
SOLUCIÓN
ALGORITMO Num;
VAR
ENTERO Contador;
INICIO
Contador = 1;
MIENTRAS( Contador <= 100 ) HACER
ESCRIBIR( Contador );
Contador <- Contador + 1;
FIN MIENTRAS
FIN
PRUEBAS DE ESCRITORIO
Es la comprobación que se hace de un algoritmo para
saber si está bien hecho. Esta prueba consiste en tomar
datos específicos como entrada y seguir la secuencia
indicada en el algoritmo hasta obtener un resultado, el
análisis de estos resultados indicará si el algoritmo está
correcto o si por el contrario hay necesidad de corregirlo o
hacerle ajustes
Es Importante realizar una prueba de escritorio para
eliminar variables no necesarias, crear variables faltantes,
ocupar los ciclos adecuados y principalmente llegar al
objetivo del problema.
PRUEBAS DE ESCRITORIO
PREGUNTAS?