Vous êtes sur la page 1sur 8

1

Instituto de Educacin Superior Norbert Wiener


Curso : Algoritmos

Tema

Semana4 Laboratorio 1

Prof. D.Noriega A.

: Estructuras Condicionales

Objetivo:
Reconocer los casos donde se aplicar Estructuras condicionales.
Aplicar la instruccin "si" en casos especficos
Aplicar la instruccin "eval" en casos especficos

Ejercicio N 1
Un hombre desea saber cunto dinero se genera por concepto de intereses sobre la cantidad que tiene
en inversin en el banco. El decidir reinvertir los intereses siempre y cuando estos excedan a S/.
7000, y en ese caso desea saber cunto dinero tendr finalmente en su cuenta.

var
p_int, cap :
int
capf

numerico
:
numerico
:
numerico

inicio
cls()
imprimir("\nIngrese Capital a invertir: ")
leer(cap)
imprimir("\nIngrese Porcentaje de Interes: ")
leer(p_int)
int = cap * p_int
si(int>7000)
{
capf = cap + int
}
imprimir("\nEl Capital final ser de: ", capf)
fin

Ejercicio N 2
Determinar si un alumno aprueba a reprueba un curso, sabiendo que aprobara si su promedio de tres
calificaciones es mayor o igual a 70; reprueba en caso contrario.
var
calif1, calif2, calif3
prom
:
mensaje
:

:
numerico
numerico
cadena

inicio
cls()
imprimir("\nIngrese Calificacin 1: ")
leer(calif1)

2
imprimir("\nIngrese Calificacin 2: ")
leer(calif2)
imprimir("\nIngrese Calificacin 3: ")
leer(calif3)
prom=(calif1 + calif2 + calif3) / 3
si(prom>=11)
{
mensaje="Alumno aprobado"
sino
mensaje="Alumno desaprobado"
}
imprimir("\n", mensaje)
fin

Ejercicio N 3
En un almacn se hace un 20% de descuento a los clientes cuya compra supere los $1000 Cual ser la
cantidad que pagara una persona por su compra?.
var
compra
desc
tot_pag

:
:
:

numerico
numerico
numerico

inicio
cls()
imprimir("\nIngrese Total de la Compra: ")
leer(compra)
si(compra>1000)
{
desc = compra * 0.2
sino
desc=0
}
tot_pag = compra - desc
imprimir("\nEl total a pagar es: ", tot_pag)
fin

Ejercicio N 4
Un obrero necesita calcular su salario semanal, el cual se obtiene de la siguiente manera:
Si trabaja 40 horas o menos se le paga $16 por hora
Si trabaja ms de 40 horas se le paga $16 por cada una de las primeras 40 horas y $20 por cada hora extra.
var
ht
he
ss

:
:
:

numerico
numerico
numerico

inicio
cls()
imprimir("\nIngrese Horas trabajadas: ")

3
leer(ht)
si(ht>40)
{
he = ht - 40
ss= he * 20 + 40 *16
sino
ss = ht * 16
}
imprimir("\n El Salario semanal ser: ", ss)
fin

Ejercicio N 5
Que lea dos nmeros y los imprima en forma ascendente.
var
num1, num2

numerico

inicio
cls()
imprimir("\nIngrese primer nmero: ")
leer(num1)
imprimir("\nIngrese segundo nmero: ")
leer(num2)
si(num1 < num2)
{
imprimir("\n", num1, "\n", num2)
sino
imprimir("\n", num2, "\n", num1)
}
fin

Ejercicio N 6
Que lea tres nmeros y determine el mayor.
var
n1, n2, n3 :
mayor

numerico
:
numerico

inicio
cls()
imprimir("\nIngrese
leer(n1)
imprimir("\nIngrese
leer(n2)
imprimir("\nIngrese
leer(n3)
si(n1 > n2)
{
si(n1>n3)
{
mayor =
sino

primer nmero: ")


segundo nmero: ")
tercer nmero: ")

n1

4
mayor = n2
}
sino
si(n2>n3)
{
mayor = n2
sino
mayor = n3
}
}
imprimir("\nEl mayor es: ", mayor)
fin

Ejercicio N 7
Que lea cuatro nmeros y determine el menor.
var
n1, n2, n3, n4
:
numerico
menor
:
numerico
inicio
cls()
imprimir("\nIngrese primer nmero: ")
leer(n1)
imprimir("\nIngrese segundo nmero: ")
leer(n2)
imprimir("\nIngrese tercer nmero: ")
leer(n3)
imprimir("\nIngrese cuarto nmero: ")
leer(n4)
menor=n1
si(n2 < menor)
{
menor=n2
}
si(n3 < menor)
{
menor=n3
}
si(n4 < menor)
{
menor=n4
}
imprimir("\nEl menor es: ", menor)
fin

Ejercicio N 8
Hacer un algoritmo que imprima el nombre de un articulo, clave, precio original y su precio con descuento. El
descuento lo hace en base a la clave, si la clave es 01 el descuento es del 10% y si la clave es 02 el descuento
en del 20% (solo existen dos claves)..
var
prec_orig
nombre, clave
prec_desc

:
:
:

numerico
cadena
numerico

5
inicio
cls()
imprimir("\nIngrese nombre del producto: ")
leer(nombre)
imprimir("\nIngrese clave del producto (01 o 02): ")
leer(clave)
imprimir("\nIngrese precio original: ")
leer(prec_orig)
si(clave =="01")
{
prec_desc= prec_orig - prec_orig * 0.10
sino
prec_desc= prec_orig - prec_orig * 0.20
}
imprimir("\n\n", nombre, "\t", clave, "\t", prec_orig,
"\t", prec_desc)
fin

Ejercicio N 9
Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si se compran tres camisas o ms se
aplica un descuento del 20% sobre el total de la Compra y si son menos de tres camisas un descuento del 10%.
var
num_camisas, prec
tot_comp
:
tot_pag

:
numerico
numerico
:
numerico

inicio
cls()
imprimir("\nIngrese nmero de camisas: ")
leer(num_camisas)
imprimir("\nIngrese precio unitario: ")
leer(prec)
tot_comp = num_camisas * prec
si(num_camisas >= 3)
{
tot_pag = tot_comp - tot_comp * 0.20
sino
tot_pag = tot_comp - tot_comp * 0.10
}
imprimir("\nEl total a pagar es: ", tot_pag)
fin

Ejercicio N 10
Disear un Algoritmo que verifique si los tres valores ingresados por el usuario pueden ser utilizados como
longitudes de un tringulo. Tener en cuenta que ninguno de sus lados puede ser superior a la suma de los otros
dos.
var
a, b, c : numerico
inicio
cls()
imprimir("\nIngresar los tres lados del tringulo:")

6
leer (a, b, c)
si ( (a > b + c) or (b > a + c) or (c > a + b) )
{
imprimir("\nNo pueden ser los lados de un tringulo")
sino
imprimir("\nPueden formar un tringulo")
}
fin

Ejercicio N 11
Disear un Algoritmo que permita ingresar un nmero de mes (del 1 a 12). Luego, imprimir el Trimestre a
que pertenece el nmero. Si el nmero ingresado no es ningn valor del 1 al 12, entonces imprimir Mes no
vlido.
var
mes
trimestre

: numerico
: cadena

inicio
cls()
imprimir("\nIngresar nmero del mes (1-12):")
leer (mes)
si (mes>=1 and mes<=3)
{
trimestre="Primer trimestre"
sino si(mes>=4 and mes<=6)
trimestre="Segundo trimestre"
sino si(mes>=7 and mes<=9)
trimestre="Tercer trimestre"
sino si(mes>=10 and mes<=12)
trimestre="Cuarto trimestre"
sino
imprimir("\nMes NO vlido")
}
imprimir("\n",trimestre)
fin

Ejercicio N 12
Disear un Algoritmo que permita ingresar un nmero de mes (del 1 a 12). Luego, imprimir el nombre del
mes. Si el nmero ingresado no es ningn valor del 1 al 12, entonces imprimir Mes no vlido.
var
mes
: numerico
nom_mes
: cadena
inicio
cls()
imprimir("\nIngresar nmero del mes (1-12):")
leer (mes)
eval
{
caso(mes==1)

7
nom_mes="ENERO"
caso(mes==2)
nom_mes="FEBRERO"
caso(mes==3)
nom_mes="MARZO"
caso(mes==4)
nom_mes="ABRIL"
caso(mes==5)
nom_mes="MAYO"
caso(mes==6)
nom_mes="JUNIO"
caso(mes==7)
nom_mes="JULIO"
caso(mes==8)
nom_mes="AGOSTO"
caso(mes==9)
nom_mes="SEPTIEMBRE"
caso(mes==10)
nom_mes="OCTUBRE"
caso(mes==11)
nom_mes="NOVIEMBRE"
caso(mes==12)
nom_mes="DICIEMBRE"
sino
imprimir("\nMes NO vlido")
}
imprimir("\n",nom_mes)
fin

Ejercicio N 13
Se pide ingresar 3 notas desde el teclado, determinar el promedio y el Calificativo.
El promedio debe redondearse a cero decimales.
El Calificativo se obtiene:
EXCELENTE
Si el promedio es 20
MUY BUENO Si el promedio es mayor o igual a 18 y menor o igual a 19
BUENO: Si el promedio es mayor o igual a 15 y menor o igual a 17
REGULAR: Si el promedio es mayor o igual a 11 y menor o igual a 14
INSUFICIENTE : Si el promedio es mayor o igual a 6 y menor o igual a 10
MUY INSUFICIENTE: Si el promedio es mayor o igual a 0 y menor o igual a 6
En cualquier otro caso debe enviar el mensaje
ERROR! Vuelva a intentar
var
n1,n2,n3
: numerico
promr, prom, promf
: numerico
calif
: cadena
inicio

8
cls()
imprimir("\nIngresar nota 1:")
leer (n1)
imprimir("\nIngresar nota 2:")
leer (n2)
imprimir("\nIngresar nota 3:")
leer (n3)
promr = (n1 + n2 + n3) / 3
prom = int((n1 + n2 + n3) / 3)
si(promr-prom>=0.5){
prom=prom+1
}
eval
{
caso(prom==20)
calif="EXCELENTE"
caso(prom>=18 and prom<=19)
calif="MUY BUENO"
caso(prom>=15 and prom<=17)
calif="BUENO"
caso(prom>=11 and prom<=14)
calif="REGULAR"
caso(prom>=6 and prom<=10)
calif="INSUFICIENTE"
caso(prom>=0 and prom<=6)
calif="MUY INSUFICIENTE"
sino
calif="ERROR! Vuelva a intentar."
}
imprimir("\nPromedio real: ",promr,
"\nPromedio redondeado: ", prom,
"\nCalificativo: ", calif)
fin

Vous aimerez peut-être aussi