Documente Academic
Documente Profesional
Documente Cultură
PROGRAMACIÓN
•Estructuras de control
Ing. Jimmy Medina Flores, MSc.
Clasificación
Estructuras de Control
Selectivas
Estructura Selectiva
Doble
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Representación en Algoritmos
Diagramas de Flujo Diagramas N-S Pseudocódigo
<condición> Si <condición> entonces
Si No
Si No Acción 1
condición
condición Sino
Acción 1 Acción 2 Acción 2
Acción
Acción 11 Acción
Acción 22 Fin Si
• Representación en el lenguaje C
IF (condición)
{
Instrucción 1;
}
Else
{
Instrucción 2;
}
• Ejemplo
Escriba un programa que solicite el ingreso de 2 números enteros. Si el segundo
número es diferente de 0, debe de mostrar como resultado la división entre el
primer y segundo número, Caso contrario el programa debe mostrar el mensaje
“No se puede realizar una división entre 0”.
• Resolución
Análisis
Datos de Entrada: Numero_1 y Numero_2
Proceso: Si Numero_2<>0, entonces Division=Numero_1/Numero_2
Datos de Salida: Division, sólo si el Numero_2 es diferente de 0. Caso contrario
mostrar el mensaje “No se puede realizar una división entre 0”.
• Resolución
Diseño del Algoritmo – Diagrama de Flujo
Inicio
Inicio
Si No
Numero_2<>0
Numero_2<>0
Leer
Leer Numero_1
Numero_1
Escribir
Escribir “No
“No se
se puede
puede
Division=
Division=
Dividir
Dividir entre
entre 0”
0”
Leer
Leer Numero_2
Numero_2
Escribir
Escribir Division
Division
Fin
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Diseño del Algoritmo – Diagramas N-S
Inicio
Inicio
Leer
Leer Numero_1
Numero_1
Leer
Leer Numero_2
Numero_2
Si
Si Numero_2<>0
Numero_2<>0 No
Division=Numero_1/Numero_2
Division=Numero_1/Numero_2 Escribir
Escribir “No
“No se
se puede
puede
Escribir
Escribir Division
Division dividir
dividir entre
entre 0”
0”
Fin
Fin
• Resolución
Diseño del Algoritmo – Pseudocódigo
Inicio
Inicio
Leer
Leer Numero_1
Numero_1
Leer
Leer Numero_2
Numero_2
Si
Si Numero_2<>0
Numero_2<>0 Entonces
Entonces
Division=Numero_1/Numero_2
Division=Numero_1/Numero_2
Escribir
Escribir Division
Division
Sino
Sino
Escribir
Escribir “No
“No se
se puede
puede dividir
dividir entre
entre 0”
0”
Fin
Fin Si
Si
Fin
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
Leer Numero_2 Numero_2
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0”
Fin Si
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
Leer Numero_2 Numero_2
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0”
Fin Si
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Verdadero
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Verdadero
Division=Numero_1/Numero_2 Division
Escribir Division 5
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Verdadero
Division=Numero_1/Numero_2 Division
Escribir Division 5
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin 5
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Verdadero
Division=Numero_1/Numero_2 Division
Escribir Division 5
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin 5
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Verdadero
Division=Numero_1/Numero_2 Division
Escribir Division 5
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin 5
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 1: Utilizando los valores de 20 para Numero_1 y 4 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
20
Leer Numero_2 Numero_2
4
Si Numero_2<>0 Entonces Numero_2<>0
Verdadero
Division=Numero_1/Numero_2 Division
Escribir Division 5
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 20
Fin Si 4
Fin 5
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
Leer Numero_2 Numero_2
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0”
Fin Si
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
Leer Numero_2 Numero_2
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0”
Fin Si
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
30
Leer Numero_2 Numero_2
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 30
Fin Si
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
30
Leer Numero_2 Numero_2
0
Si Numero_2<>0 Entonces Numero_2<>0
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 30
Fin Si 0
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
30
Leer Numero_2 Numero_2
0
Si Numero_2<>0 Entonces Numero_2<>0
Falso
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 30
Fin Si 0
Fin
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
30
Leer Numero_2 Numero_2
0
Si Numero_2<>0 Entonces Numero_2<>0
Falso
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 30
Fin Si 0
Fin No se puede dividir entre 0
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
30
Leer Numero_2 Numero_2
0
Si Numero_2<>0 Entonces Numero_2<>0
Falso
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 30
Fin Si 0
Fin No se puede dividir entre 0
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Resolución
Verificación 2: Utilizando los valores de 30 para Numero_1 y 0 para Numero_2
Inicio Variable Valor
Leer Numero_1 Numero_1
30
Leer Numero_2 Numero_2
0
Si Numero_2<>0 Entonces Numero_2<>0
Falso
Division=Numero_1/Numero_2 Division
Escribir Division
Sino Pantalla
Pantalla
Escribir “No se puede dividir entre 0” 30
Fin Si 0
Fin No se puede dividir entre 0
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Implementación: Codificar el algoritmo en Lenguaje C++
#include<iostream>
#include<iostream>
using
using namespace
namespace std; std;
int
int main()
main() {{
float
float division;
division;
float
float numero_1;
numero_1;
float
float numero_2;
numero_2;
cin
cin >> >> numero_1;
numero_1;
cin
cin >> >> numero_2;
numero_2;
ifif (numero_2!=0)
(numero_2!=0) {{
division
division == numero_1/numero_2;
numero_1/numero_2;
cout
cout <<
<< division
division <<
<< endl;
endl;
}}
else
else {{
cout
cout <<
<< "No
"No se
se puede
puede dividir
dividir entre
entre 0"
0" <<
<< endl;
endl;
}}
system
system ("Pause");
("Pause");
}}
Ing. JImmy Medina Flores, MSc.
Estructuras Selectivas Dobles
• Laboratorio 02 - Ejercicio 1
Desarrolle un algoritmo, que le permita leer un valor numérico cualesquiera, que
sea almacenado en el identificador o variable N y que permita escribir si dicho
valor es un número par o impar.
• Laboratorio 03 - Ejercicio 4
Desarrolle un algoritmo y posteriormente un programa que permita el ingreso por
teclado de un número entre 1 y 5, luego el programa debe mostrar en letras el
número ingresado. Guardar este programa con el nombre de “L03E04”, compilar y
ejecutar este programa para los siguientes datos: 3, 0, 4, 6.