PARA INGENIERÍA
Estructuras de control de selección simple a
múltiple
Sesión N°7, 8 y 9
1. Secuenciales
2. Condicionales, y
3. Repetitivas
#include <iostream>
int main()
{
int A, B, C, mayor;
SI ( Expresion<es> ) ENTONCES cout<<"Ingrese 3 numeros separados por
SI (Expresion<es>) ENTONCES espacios";
: cin>>A>>B>>C; //Lectura de valores por
SINO teclado
: mayor=0;
FIN-SI if ( A > mayor )
SINO {
SI (Expresion<es>) ENTONCES mayor =A;
: if ( B > mayor)
SINO {
: mayor=B;
FIN-SI }
FIN-SI else
{
if (C > mayor)
{
mayor = C;
}
}
}
cout<<"el numero mayor es: "<<mayor;
}
Condicional Anidada
Esta estructura se emplea cuando se requiere condicionar dentro de otra
condicional, es decir cuando dentro de una condicional simple o doble existe otra
condicional simple o doble.
Sintaxis :
SI ( Expresion<es> ) ENTONCES
SI (Expresion<es>) ENTONCES
:
SINO
:
FIN-SI
SINO
SI (Expresion<es>) ENTONCES
:
SINO
:
FIN-SI
FIN-SI
Ejemplo 1 : Ingrese un número entre 1 y 3, luego visualice su
equivalente en letras.
Algoritmo Ejemplo1
var
entero: n
INICIO
leer( n )
si( n = 1 ) entonces
escribir(“UNO”)
si_no
si( n = 2 ) entonces
escribir(“DOS”)
si_no
si( n = 3 ) entonces
escribir(“TRES”)
si_no
escribir(“NUMERO NO VALIDO”)
fin_si
fin_si
fin_si
FIN
Ejemplo 2 : Ingrese el puntaje obtenido por un postulante y luego
visualice a que carrera ingreso, según la siguiente tabla :
Puntaje Carrera
[ 70 – 90 > Contabilidad SI NO LOGRO
[ 90 – 100 > Administración INGRESO,
VISUALIZAR
[ 100 – 120 > Derecho CUANTOS
[ 120 – 150 > Ingeniería PUNTOS LE
[ 150 a más … Medicina FALTO
Consumo Tarifa
[ 1 – 50 > 0.8
[ 50 – 100 > 1.5
[ 100 – 150 > 1.8
[ 150 – 200 > 2.0
[ 200 a más … 2.2
Algoritmo Ejemplo2
var
entero: puntaje
INICIO
leer( puntaje )
escribir(“Contabilidad”)
si_no
escribir (“Administración”)
si_no
escribir (“Derecho”)
si_no
si_no
escribir (“MEDICINA”)
si_no
fin_si
fin_si
fin_si
fin_si
fin_si
FIN
Algoritmo Ejemplo3
var
entero: consumo
real: tarifa, totalPagar
INICIO
leer( consumo )
si (consumo >= 1) Y (consumo < 50) entonces
tarifa ← 0.8
si_no
si (consumo >= 50) Y (consumo < 100) entonces
tarifa ← 1.5
si_no
si (consumo >= 100) Y (consumo < 150) entonces
tarifa ← 1.8
si_no
si (consumo >= 150) Y (consumo < 200) entonces
tarifa ← 2.0
si_no
tarifa ← 2.2
fin_si
fin_si
fin_si
fin_si
totalPagar ← consumo * tarifa
escribir ( totalPagar )
FIN
Ejemplo 4 : Ingrese el ciclo y turno a estudiar, luego calcule el total a
pagar según la siguiente tabla :
CICLO TURNO PENSION
1 M 850
1 N 800
2 M 750
2 N 700
3 - 10 M 650
3 - 10 N 600
Sintaxis :
CASO (Variable) HACER
Lista_1: Instrucciones_Sentencias
Lista_2: Instrucciones_Sentencias
:
Lista_N: Instrucciones_Sentencias Opcional
OTRO CASO:
Instrucciones_Sentencias
FIN_CASO
Ejemplo 1 : Ingresar un número entre 1 y 5, y
luego visualizar su equivalente en letras.
Algoritmo Ejemplo1
var
entero: n
INICIO
leer( n )
CASO ( n ) HACER
1: escribir(“UNO”)
2: escribir(“DOS”)
3: escribir(“TRES”)
4: escribir(“CUATRO”)
5: escribir(“CINCO”)
OTRO_CASO : escribir(“# FUERA DE RANGO”)
FIN_CASO
FIN
Ejemplo 2 : Ingrese 2 números y una operación matemática realizar (+,-
,*,/), luego muestre el resultado de operar los 2 números.
Algoritmo Ejemplo2
variables
entero: a, b, resultado
caracter: operador
INICIO
leer (a, b, operador)
CASO ( operador ) HACER
‘+’ : Resultado ← A + B
‘-’ : Resultado ← A – B
‘*’ : Resultado ← A * B
‘/’ : si ( B <> 0 ) entonces
Resultado ← A DIV B
si_no
Resultado ← 0
fin_si
FIN_CASO
escribir( Resultado )
FIN
Ejemplo 3 : Ingrese número entre 1 y 99, luego visualice su equivalente en
romanos.
Algoritmo Ejemplo3
variables
entero: n, a, b
INICIO
leer( n )
si ( n >= 1) Y ( n <= 99 ) entonces
a ← n DIV 10 : b ← n MOD 10
CASO ( a ) HACER
1: escribir(“X”)
2: escribir(“XX”)
:
9: escribir(“XC”)
FIN_CASO
CASO ( b ) HACER
1: escribir(“I”)
2: escribir(“II”)
:
9: escribir(“IX”)
FIN_CASO
fin_si
FIN
Ejemplo 4 : Calcular el total a pagar por una compra,
sabiendo que existe un recargo según tipo de tarjeta de
crédito con la que se paga la compra.
Tipo de Tarjeta Recargo
Visa Electron ( E ) 0%
VISA ( V ) 5%
MasterCard ( M ) 7%