Está en la página 1de 24

Universidad Pedagógica Nacional

Francisco Morazán

Espacio Pedagógico:
Programación I

Docente:
Lic. José Gerardo Fuentes Zúñiga

Sección: U

Asunto:
Ejercicios estructuras condicionales simples

Responsable:
Martin Gerardo García Gabarrete
1413 1994 00373

Lugar y fecha:
San Marcos Ocotepeque, 03 de julio de 2021
1. Determinar si un alumno aprueba o reprueba un curso, sabiendo que aprobará si su promedio de
tres calificaciones es mayor o igual a 60; reprueba en caso contrario.

Análisis:
Entrada: 3 datos [(Enteros, Nota 1 n1), Nota 2 n2), Nota 3 (n3)]
Salida: 1 dato [Real, Promedio (prom)]
Proceso:
prom=(n1+n2+n3)/3

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese la primera nota” Ingrese la primera nota
Lea n1 60
Escriba” Ingrese la segunda nota” Ingrese la segunda nota
Lea n2 65
Escriba” Ingrese la tercera nota” Ingrese la tercera nota
Lea n3 75
prom=(n1+n2+n3)/3 prom=(70+65+75)/3=70
Si (prom>=60) 70>=60
Escriba “El alumno aprueba” El alumno aprueba
Si no Su promedio es 70
Escriba “El alumno reprueba”
Fin si
Escriba “Su promedio es ”+prom
Fin }
2. Unas camisas se venden en 10 dólares, cada una si es que se compran más de tres y en 12 dólares
en otro caso. Escriba un programa que lea un número de entrada con la cantidad de camisas a
adquirir y escriba al fina el costo total.

Análisis:
Entrada: 2 datos [(Reales, Cantidad de camisas (c), Billete (billete)]
Salida: 3 datos [Reales, Costo final (Cf), Cambio (Cambio) || Faltante (Faltante)]
Proceso:
Cf=c*10 || c*12
Cambio=Billete-Cf || Faltante=Cf-Billete

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese la cantidad de camisas que compra” Ingrese la cantidad de camisas que compra
Lea c 4
Si (c>3) 4>3
Cf=c*10 Cf=4*10=40
Si no Usted debe 40
Cf=c*12 De cuanto es el billete que paga
Fin si 100>40
Escriba “Usted debe ”+Cf Cambio=100-40=60
Escriba “De cuanto es el billete con el que paga” Su cambio es 60
Lea billete
Si (billete>Cf)
Cambio=Billete-Cf
Escriba “Su cambio es “+Cambio
Si no
SI (Billete==Cf)
Escriba “No hay cambio”
Si no
Faltante=Cf-Billete
Escriba “Le falta”+Faltante
Fin Si
Fin }
3. Escriba un programa que reciba dos números enteros y que diga cuál de los dos es el mayor.

Análisis:
Entrada: 2 datos [(Enteros, primer número (a), segundo número (b)]
Salida: El primer número es mayor||El primer número es igual que el segundo||El segundo número es mayor
Proceso: a>b||a==b||a<b

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el primer número” Ingrese el primer número
Lea a 17
Escriba” Ingrese el segundo número” Ingrese el segundo número
Lea b 22
Si (a>b) 17<22
Escriba “El primer número es mayor” El segundo número es mayor
Si no
Si (a==b)
Escriba “El primer número es igual que el segundo”
Si no
Escriba “El segundo número es mayor”
Fin Si
Fin }
4. Escriba un programa que reciba como entrada 2 números naturales uno mayor que otro, (sin importar
el orden) que realice la diferencia entre ellos, pero el resultado de la diferencia debe ser positivo.
Análisis:
Entrada: 2 datos [(Real, Primer número (n1), Segundo número (n2)]
Salida: 1 dato [Real, (Diferencia (dif)]
Proceso:
dif=n1-n2||dif=-dif

Pseudo código Prueba de escritorio

Inicio {
Escriba ”Ingrese el primer número” Ingrese el primer numero
Lea n1 12
Escriba “Ingrese el segundo número” Ingrese el primer numero
Lea n2 16
Si (n1!=n2) 12!=16
dif=n1-n2 dif=12-16=-4
Si (dif<0) -4<0
dif=-dif dif=-(-4)=4
Escriba “La diferencia entre los números es “+dif La diferencia entre los números es de 4
Si no
Escriba “La diferencia entre los números es “+dif
Fin Si
Si no
Escriba “No ingreso números diferentes”
Fin Si
Fin }
5. Suponga que el precio unitario de unos balones de futbol es de L. 500 si se compran más de 10
balones y de L. 700 si se compran menos.

Análisis:
Entrada: 2 datos [(Reales, Cantidad de balones (b), Billete (billete)]
Salida: 3 datos [Reales, Costo final (Cf), Cambio (Cambio) || Faltante (Faltante)]
Proceso:
Cf=b*500 || b*700
Cambio=Billete-Cf||Faltante=Cf-Billete

Pseudo código Prueba de escritorio

Inicio {
Escriba” Cuantos balones desea comprar” Cuantos balones desea comprar
Lea b 12
Si (b>10) 12>10
Cf=b*500 Cf=12*500=6000
Si no Usted debe 6000
Cf=b*700
Fin Si Cuanto es el dinero con el que paga
Escriba “Usted debe ”+Cf 6000
Escriba “Cuanto es el dinero con el que paga” 6000=6000
Lea dinero No hay cambio
Si (dinero>Cf)
Cambio=dinero-Cf
Escriba “Su cambio es “+Cambio
Si no
Si (dinero==Cf)
Escriba “No hay cambio”
Si no
Faltante=Cf-Billete
Escriba “Le falta”+Faltante
Fin Si
Fin }
6. Escriba un programa que reciba un número entero y que escriba si es positivo, negativo o cero.
Análisis:
Entrada: 1 dato [(Entero, Numero 1 (a)]
Salida: El número es positivo||El número es cero||El número es negativo

Proceso: a>0||a==0||a<0

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el número 1” Ingrese el numero 1
Lea a -3
Si a>0 -3<0
Escriba “El número es positivo” El número es negativo
Si no
Si a==0
Escriba “El número es cero”
Si no
Escriba “El número es negativo”
Fin Si
Fin }
7. Escriba un programa que reciba dos números enteros y que diga si son de signos opuestos.
Análisis:
Entrada: 2 datos [(Real, Primer número (n1), Segundo número (n2)]
Salida: Los números son de signos opuestos||Al menos uno de los números es cero||Los números son de igual signo

Proceso: (n1*n2<0)||(n1*n2==0)

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese un número entero” Ingrese un número entero
Lea n1 -5
Escriba” Ingrese otro número entero” Ingrese otro número entero
Lea n2 7
Si (n1*n2<0) -5*7<0=-35<0
Escriba “Los números son de signo opuesto” Los números son de signos opuestos.
Si no
Si (n1*n2==0)
Escriba “Al menos uno de los números es cero”
Si no
Escriba “Los números son de igual signo”
Fin Si
Fin }
8. Un trabajador recibe su sueldo normal por las primeras 30 horas y se le paga 1,5 veces su sueldo
normal por cada hora después de las primeras 30 horas. Escriba un programa que calcule y escriba
el pago que recibirá el empleado.
Análisis:
Entrada: 2 datos [(Reales, Horas trabajadas (hr), Sueldo por hora (Sh)]
Salida: 1 dato [(Reales, Sueldo total (St)]
Proceso:
St=Sn*hr||Sn*1.5*hr

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el sueldo por hora del trabajador” Ingrese el sueldo por hora del trabajador
Lea Sh 100
Escriba” Ingrese la cantidad de horas por el trabajador” Ingrese las horas trabajadas por el trabajador
Lea hr 44
Si (hr<30) hr>30
St=Sh*hr St=100*1.5*44=6 600
Escriba “El sueldo del trabajador es “+St El sueldo del trabajador es 6 600
Si no
St=Sh*1.5*hr
Escriba “El sueldo del trabajador es “+St
Fin Si
Fin }
9. Escriba un programa que reciba un número que representa a cada planeta del sistema solar según
su orden desde el Sol y que diga que planeta es. P.e. Si se ingresa el número 3 el programa debe
decir es el planeta Tierra.
Análisis:
Entrada: 1 dato [(Entero, Numero (num))]
Salida: Mercurio||Venus||Tierra||Marte||Júpiter||Saturno||Urano||Neptuno
Proceso: num==1|| num==2|| num==3|| num==4|| num==5|| num==6|| num==7|| num==8

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese un número del 1 al 8” Ingrese un número del 1 al 8
Lea num 5
Si (num=1) Júpiter
Escriba “Mercurio”
Si no
SI (num=2)
Escriba “Venus”
Si no
Si (num=3)
Escriba “Tierra”
Si no
Si (num=4)
Escriba “Marte”
Si no
SI (num=5)
Escriba “Jupiter”
Si no
Si (num=6)
Escriba “Saturno”
Si no
Si (num=7)
Escriba” Urano”
Si no
Si (num=8)
Escriba “Neptuno”
Si no
Escriba “Gracias por participar”
Fin }

10. Escriba un programa que realice una de las operaciones aritméticas básicas según lo pida el
usuario. Al inicio debe presentar un menú presentándole las opciones a elegir. Así:

Menú
1. Suma
2. Resta
3. Multiplicación
4. División
5. Salir
Al elegir según el número realizará la operación solicitada.
Análisis:
Entrada: 2 datos [(Reales, opción (op), numero 1 (a) y numero 2 (b)]
Salida: 4 datos [(Reales, suma (sum), resta (res), multiplicación (mult), división (div)]
Proceso:
sum=a+b || rest=a-b || mult=a*b || div=a/b

Pseudo código Prueba de escritorio

Inicio {
Escriba” Elija un número del siguiente menú ” Elija un número del siguiente menú
Escriba” 1. Suma ” 1. Suma
Escriba” 2. Resta ” 2. Resta
Escriba” 3. Multiplicación ” 3. Multiplicación
Escriba” 4. División ” 4. División
Lea op 3
Si (op=1) Ingrese un numero
Escriba “Ingrese un número” 4
Lea a Ingrese otro numero
Escriba “Ingrese otro número” -5
Lea b mult=4*-5=-20
sum=a+b La multiplicación da como resultado -20
Escriba “La suma da como resultado “+sum
Si no
Si (op=2)
Escriba “Ingrese un número”
Lea a
Escriba “Ingrese otro número”
Lea b
res=a-b
Escriba “La resta da como resultado “+res
Si no
Si (op=3)
Escriba “Ingrese un número”
Lea a
Escriba “Ingrese otro número”
Lea b
mult=a*b
Escriba “La multiplicación da como resultado “+mult
Si no
SI (op=4)
Escriba “Ingrese un número”
Lea a
Escriba “Ingrese otro número”
Lea b
SI (b!=0)
div=a/b
Escriba “La división da como resultado “+div
Si no
Escriba “La división no está definida”
Si no
Escriba “Gracias por participar”
Fin }
11. Un sistema de ecuaciones lineales
ax+by=c
dx+ey=f

Se puede resolver con las siguientes fórmulas:


x=(ce-bf) /(ae-bd)
y=(af-cd) / (ae-bd)
Escribir un programa que lea los coeficientes a, b, c, d, e, f y muestre los valores de x e y.

Análisis:
Entrada: 6 datos [(Reales, coeficiente a (a), coeficiente b (b), coeficiente c (d), coeficiente d (d), coeficiente e (e),
coeficiente f (f)]
Salida: 2 datos [Reales, variable x (x), variable y (y)]
Proceso:
x=(ce-bf) /(ae-bd)
y=(af-cd) / (ae-bd)

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el coeficiente a” Ingrese el coeficiente a
Lea a 2
Escriba” Ingrese el coeficiente b” Ingrese el coeficiente b
Lea b 3
Escriba” Ingrese el coeficiente c” Ingrese el coeficiente c
Lea c 2
Escriba” Ingrese el coeficiente d” Ingrese el coeficiente d
Lea d -2
Escriba” Ingrese el coeficiente e” Ingrese el coeficiente e
Lea e 4
Escriba” Ingrese el coeficiente f” Ingrese el coeficiente f
Lea f -2
Si ((a*e-b*d)!=0) 2*4-3*-2)!=0=14)!=0
x=(c*e-b*f) /(a*e-b*d) x=(2*4-3*-2) /(2*4-3*-2)=1
Si no y=(2*-2-2*-2) /(2*4-3*-2)=0
Escriba “El sistema no tiene solución” C.S: (1,0)
Si ((a*e-b*d)!=0)
y=(a*f-c*d) /(a*e-b*d)
Si no
Escriba “El sistema no tiene solución”

Escriba” C.S: (”+x “,”+y”)”


Fin }
12. Escriba un programa que diga los días que tiene un mes dado el valor numérico del mes.
Análisis:
Entrada: 1 datos [(Entero, numero del mes (mes)]
Salida: 31 días||30 días|| 28 días
Proceso: mes==1||mes==2||mes==3||mes==4|mes==5|| mes==6||mes==7||mes==8||mes==9||mes==10||mes==11||mes==12

Pseudo código Prueba de escritorio

Inicio {
Escriba” Elija uno de los siguientes meses” Elija uno de los siguientes meses
Escriba “1. Enero” 1. Enero
Escriba “2. Febrero” 2. Febrero
Escriba “3. Marzo” 3. Marzo
Escriba “4. Abril” 4. Abril
Escriba “5. Mayo” 5. Mayo
Escriba “6. Junio” 6. Junio
Escriba “7. Julio” 7. Julio
Escriba “8. Agosto” 8. Agosto
Escriba “9. Septiembre” 9. Septiembre
Escriba “10. Octubre” 10. Octubre
Escriba “11. Noviembre” 11. Noviembre
Escriba “12. Diciembre” 12. Diciembre
Lea mes 16
Si (mes=1)||(mes=3)||(mes=5)||(mes=7)||(mes=8)||(mes=10)||(mes=12) Gracias por participar
Escriba “El mes tiene 31 días”
Si no
Si (mes=4)||(mes=6)||(mes=9)||(mes=11)
Escriba “El mes tiene 30 días”
Si no
Si (mes=2)
Escriba “El mes tiene 28 días”
Si no
Escriba “Gracias por participar”
Fin }
13. Escribir un programa que muestre el mayor de 3 números enteros ingresados por el usuario.

Análisis:
Entrada: 3 datos [(Enteros, primer número (a), segundo número (b), tercer número (c)]
Salida: a es el mayor||b es el mayor||c es el mayor
Proceso: a>b&&b<c||a<b&&b>c||a<b&&b<c

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el primer número” Ingrese el primer número
Lea a -4
Escriba” Ingrese el segundo número” Ingrese el segundo número
Lea b 5
Escriba” Ingrese el tercer número” Ingrese el tercer número
Lea c 0
Si (a>b&&b<c) 5 es el mayor.
Escriba +a” es el mayor”
Si no
Si (a<b&&b>c)
Escriba +b” es el mayor”
Si no
Si (a<b&&b<c)
Escriba +c” es el mayor”
Fin }
14. Escribir un programa que calcule las raíces de una ecuación cuadrática.

Análisis:
Entrada: 3 datos [Reales, coeficiente a (a), coeficiente b (b), coeficiente c (c)]
Salida: 3 datos [Reales, discriminante (d), variable x1 (x), variable x2 (x2)]
Proceso: d=Math.sqrt(b*b-4*a*c))

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el coeficiente a” Ingrese el coeficiente a
Lea a 1
Escriba” Ingrese el coeficiente b” Ingrese el coeficiente b
Lea b -4
Escriba” Ingrese el coeficiente c” Ingrese el coeficiente c
Lea c 3
Si (a!=0) d=sqrt(-4*-4-4*1*3)=2
d=Math.sqrt(b*b-4*a*c) x1=(-(-4)+2)/(2*1)=3
Si (d>0) x2=(-(-4)-22)/(2*1)=1
x1=(-b+d)/(2*a) La ecuación tiene dos soluciones y
x2=(-b-d)/(2*a son x1=3 y x2=1
Escriba “La ecuación tiene dos soluciones y son x1= ”+x1 “ x2=”+x2
Si no
SI (d=0)
x1=-b/(2*a)
Escriba “La ecuación tiene una solución y es x1= ”+x1
Si no
SI (d<0)
Escriba “La ecuación no tiene solución”
Fin si
Fin }
15. Dado el número de orden de los días de la semana escriba que día le corresponde.

Análisis:
Entrada: 1 dato [semana (s)]
Salida: lunes||martes||miércoles||jueves||viernes||sábado||domingo
Proceso: s==1||s==2||s==3||s==4||s==5|| s==6||s==7

Pseudo código Prueba de escritorio

Inicio {
Escriba” Escoja un número del 1 al 7” Ingrese un número del 1 al 7
Lea s 5
Si (s==1) viernes
Escriba “lunes”
Si no
Si (s==2)
Escriba “martes”
Si no
Si (s==3)
Escriba “miércoles”
Si no
Si (s==4)
Escriba “jueves”
Si no
Si (s==5)
Escriba “viernes”
Si no
Si (s==6)
Escriba “sábado”
Si no
Si (s==7)
Escriba “domingo”
Si no
Escriba “Gracias por participar”
Fin }
16. Dadas las medidas de tres lados de un triángulo (a, b, c) ver si se forma un triángulo, si se forma,
ver qué tipo de triángulo es, si es equilátero, si es isósceles o si es escaleno

Análisis:
Entrada: 3 datos [Reales, lado 1 (a), lado 2 (b), lado 3 (c)]
Salida: Los tres lados forman un triángulo||Los tres lados no forman un triángulo, El triángulo es isósceles ||El triángulo es
equilátero||El triángulo es escaleno
Proceso: (a+b>c)&&(a+c>b)&&(b+c)>a), (a==b)||(b==c)||(a==c) (a==b)&&(b==c)&&(a==c)

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese el lado 1” Ingrese el lado a
Lea a 4
Escriba” Ingrese el lado 2” Ingrese el lado b
Lea b 3
Escriba” Ingrese el lado 3” Ingrese el lado c
Lea c 5
Si ((a+b>c)&&(a+c>b)&&(b+c)>a) ((4+3>7)&&(4+5>3)&&(3+5)>4)
Escriba” Las tres medidas forman un triángulo” Las tres medidas forman un triángulo
Si (a==b)||(b==c)||(a==c) (4!=3)&&(4!=5)&&(3!=5)
Escriba “El triángulo es isósceles” El triángulo es escaleno
Si no
Si (a==b)&&(b==c)&&(a==c)
Escriba “El triángulo es equilátero”
Si no
Si (a!=b)&&(a!=c)&&(b!=c)
Escriba “El triángulo es escaleno”
Fin }
17. Escribir un programa que diga si un año es o no bisiesto.

Análisis:
Entrada: 1 dato [Enteros, año (anho)]
Salida: El anho es bisiesto||El año no es bisiesto
Proceso: Si (((anho%4==0)&&((U!=0)||(D!=0)))||((D==0)&&(U==0)&&(anho%100==0)&&(anho%400==0)))

Pseudo código Prueba de escritorio

Inicio {
Escriba” Ingrese un año cualquiera” Escriba un año cualquiera
Lea nh 1700
M=anho/1000 m=1700/1000=1
Res=anho%1000 r=1700%1000=700
C=Res/100 c=700/100=7
Res2=Res%100 r2=700%100=0
D=Res2/10 d=0/10=0
Res3=Res2%10 r3=0/10=0
U=Res3 u=0
Si (((anho%4==0)&&((U!=0)||(D!=0)))||((D==0)&&(U==0)&&(anho%100==0)&&(anho%400==0))) El año no es bisiesto
Escriba “El año es bisiesto”
Si no
Escriba “El año no es bisiesto”
Fin }

También podría gustarte