Separata de trabajo 06 – Estructuras condicionales simples y dobles
anidadas
Semana 08
Ejercicios explicativos
1. Construir un algoritmo que permita ingresar un número entero y muestre si es negativo, creo o positivo.
Proceso ceros
Definir num Como Entero
Escribir "Ingresa un número"
Leer num
Si num = 0 Entonces
Escribir "Es nulo"
SiNo
Si num MOD 2 = 0 Entonces
Escribir "Es par"
SiNo
Escribir "Es impar"
FinSi
FinSi
FinProceso
2. A un trabajador le descuentan de su sueldo el 10% si su sueldo es menor o igual a 1000, por encima de
1000 hasta 2000 el 5% del adicional, y por encima de 2000 el 3% del adicional. Calcular el descuento y
sueldo neto que recibe el trabajador dado un sueldo.
Proceso descuentos
Definir sueldo, dscto, sneto Como Real
Escribir "Ingrese el sueldo"
Leer sueldo
Si sueldo <= 1000 Entonces
dscto <- 0.1*sueldo
SiNo
Si sueldo <= 2000 Entonces
dscto <- 0.05*(sueldo-
1000)
SiNo
dscto <- 0.03*(sueldo-2000)
FinSi
FinSi
sneto <- sueldo - dscto
Escribir "Sueldo: S/",
sueldo Escribir "Descuento:
S/", dscto
Escribir "Sueldo neto: S/", sneto
Ejercicios propuestos
1. Una empresa requiere un sistema de cálculo de bonos de fin de año para los trabajadores, elabore un algoritmo que reciba el salario mensual de un
trabajador. Luego calcule y muestre sus utilidades si este se asigna como un porcentaje de lo que ha ganado durante el año dependiendo de su
antigüedad en la empresa de acuerdo con la siguiente tabla:
Tiempo Utilid
ad
Menos de 1 año 5%
Desde 1 año hasta menos de 2 7%
años
Desde 2 años hasta menos de 5 10%
años
Desde 5 año hasta menos de 10 15%
años
10 años o más 20%
Ganancia= Precio – Costo = Utilidad = Bono*Salario
Algoritmo Bonos
// dv
// ve
Definir salario,bono,utilidad Como Real
Definir tiempo Como Real
// e
Escribir 'Ingrese salario mensual: '
Leer salario
Escribir 'Ingrese la antigüedad en la empresa: '
Leer tiempo
// p
bono <- utilidad
Si tiempo<1 Entonces
bono <- 0.05*salario
SiNo
Si tiempo>=1 Y tiempo<2 Entonces
bono <- 0.07*salario
SiNo
Si tiempo>=2 Y tiempo<5 Entonces
bono <- 0.1*salario
SiNo
Si tiempo<=5 Y tiempo<10 Entonces
bono <- 0.15*salario
SiNo
Si tiempo>=10 Entonces
bono <- 0.2*salario
FinSi
FinSi
FinSi
FinSi
FinSi
// S
Escribir 'El bono de fin de año será: ','S/',bono
FinAlgoritmo
2. Ingresar la cantidad de alumnos aprobados y desaprobados de un curso. Luego mostrar el porcentaje de estudiantes aprobados y el porcentaje de
estudiantes desaprobados.
Algoritmo karolWojtylaxd
// dv
// v
Definir alumtotal Como Entero
Definir apro,noapro,xcen1,xcen2 Como Real
// e
Escribir 'Escribe el total de alumnos:'
Leer alumtotal
Escribir 'Numero de alunmos aprobados:'
Leer apro
// p
noapro <- alumtotal-apro
Si apro>noapro Entonces
xcen1 <- apro*100/alumtotal
xcen2 <- noapro*100/alumtotal
Escribir 'Los alumnos aprobados son el: ',xcen1,'%'
Escribir 'Los alumnos desaprobados son el: ',xcen2,'%'
SiNo
Si noapro>apro Entonces
xcen2 <- noapro*100/alumtotal
xcen1 <- apro*100/alumtotal
Escribir 'Los alumnos desaprobados son el: ',xcen2,'%'
Escribir 'Los alumnos aprobados son el: ',xcen1,'%'
FinSi
FinSi
FinAlgoritmo
3. Elaborar un algoritmo para el siguiente caso: una empresa de seguros asegura una casa ante desastres cobrando una prima anual de acuerdo con el
valor de la casa.
Para los primeros $25 000 cobra el 3% del valor y para el valor restante 5%.
Por ejemplo, si una casa está valorizada en $30 000, cobrará 3% sobre los $25 000 y 5% al resto, es decir 5% a $500.
Haga un programa que muestre el monto que un cliente debe pagar por asegurar su casa. Descarte casas con valores superiores a los $100 000.
Algoritmo aseguradora
// dv
// v
Definir valTotal,inicial,val1,val2,pagoTotal Como Real
// e
Escribir 'valor de la casa'
Leer valTotal
// p
Si valTotal>100000 Entonces
Escribir 'Reinicie el añgoritmo'
SiNo
Si valTotal<=100000 Entonces
inicial <- 25000
val1 <- inicial*0.03
val2 <- (valTotal-inicial)*0.05
pagoTotal <- val1+val2
Escribir 'Para asegurar su casa necesita pagar: ','S/',pagoTotal
FinSi
FinSi
FinAlgoritmo
4. Escribir un programa que determine si un año es bisiesto. Un año es bisiesto si es múltiplo de 4 (por ejemplo 1984). Los años múltiplos de 100 no son
bisiestos, salvo si ellos son también múltiplos de 400 (2000 es bisiesto, pero 1800 no lo es)
Algoritmo añooo
// DV
// V
Definir año Como Real
// E
Escribir 'Ingrese un año cualquiera:'
Leer año
// P
Si año MOD 4=0 Entonces
Escribir 'El es bisiesto'
SiNo
Si año MOD 100<>0 O año=1800 Entonces
Escribir 'El año no es bisiesto'
FinSi
FinSi
FinAlgoritmo