Está en la página 1de 12

Herramientas de Programación - IICG 215

INGENIERIA EN INFORMACION Y CONTROL DE GESTION

UNIDAD 1 : PENSAMIENTO COMPUTACIONAL


PROBLEMAS
v
PROPUESTOS
1. Nuevo reglamento de evaluaciones
La Universidad Tropical Filomena Santa Marta ha instaurado un nuevo reglamento de
evaluaciones. Todas las asignaturas deben tener tres certámenes y un examen. Las
notas van entre 0 y 10, con un decimal.

Después de los tres certámenes, l@s estudiantes con promedio menor que 3 reprueban
y los con promedio mayor o igual que 7 aprueban. El resto va a examen, en el que
deben sacarse por lo menos un 5 para aprobar.

Además, para reducir el trabajo del profesor, se decidió que l@s estudiantes que se
sacan menos de un 2 en los dos primeros certámenes reprueban. A su vez, los que
obtienen más de un 9 en los dos primeros certámenes aprueban. En ambos casos, no
deben rendir el tercer certamen.

Diseñe un algoritmo que pregunte a un estudiante las notas de las evaluaciones que
rindió, y le diga si aprueba o reprueba.

ENTRADA SALIDA
Certamen 1 = 1.8 Reprueba
Certamen 2 = 0.9
Certamen 1 = 0.5 Reprueba
Certamen 2 = 2.0
Certamen 3 = 2.5
Certamen 1 = 1.5 Aprueba
Certamen 2 = 3.5
Certamen 3 = 4.5
Examen = 5.1
Certamen 1 = 9.3 Aprueba
Certamen 2 = 9.4
2. Multiplicación Rusa
El método de multiplicación rusa consiste en multiplicar sucesivamente por 2 el
multiplicando y dividir por 2 el multiplicador hasta que el multiplicador tome el
valor 1. En el proceso se suman todos los multiplicandos correspondientes a los
multiplicadores impares. Dicha suma es el producto de los dos números. La siguiente
tabla muestra el cálculo realizado para multiplicar 37 por 12, cuyo resultado final
es 12 + 48 + 384 = 444.
Multiplicador Multiplicando Multiplicador impar Suma
37 12 si 12
18 24 no
9 48 si 60
4 96 no
2 192 no
1 384 si 444

Diseñe un algoritmo que reciba como entrada el multiplicador y el multiplicando y


entregue como resultado el producto de ambos, calculado mediante el método de la
multiplicación rusa.

ENTRADA SALIDA
Ingrese multiplicador = 37 Resultado = 444
Ingrese multiplicando = 12
3. Alzas del dólar
Un analista financiero lleva un registro del precio del dólar día a día, y desea
saber cuál fue la mayor de las alzas en el precio diario a lo largo de ese período.

Diseñe un algoritmo que pida al usuario ingresar el número n de días, y luego el


precio del dólar para cada uno de los n días. El algoritmo debe entregar como
salida cuál fue la mayor de las alzas de un día para el otro.

Si ningún día el precio subió, la salida debe decir: No hubo alzas.

ENTRADA SALIDA
Cuantos dias? 10 La mayor alza fue de 3.34 pesos
Dia 1: 496.96
Dia 2: 499.03
Dia 3: 496.03
Dia 4: 493.27
Dia 5: 488.82
Dia 6: 492.16
Dia 7: 490.32
Dia 8: 490.67
Dia 9: 490.89
Dia 10: 494.10
Cuantos dias? 3 No hubo alzas
Dia 1: 496.96
Dia 2: 496.96
Dia 3: 496.96
Cuantos dias? 2 No hubo alzas
Dia 1: 496.96
Dia 2: 490.00
4. Máquina de Alimentos
Una máquina de alimentos tiene productos de tres tipos, A, B y C, que valen
respectivamente $270, $340 y $390. La máquina acepta y da de vuelto monedas de $10,
$50 y $100. Diseñe un algoritmo que pida al usuario elegir el producto y luego le
pida ingresar las monedas hasta alcanzar el monto a pagar. Si el monto ingresado es
mayor que el precio del producto, el algoritmo debe entregar las monedas de vuelto,
una por una.

ENTRADA SALIDA
Elija producto: A Su vuelto:
Ingrese monedas: 50
100 10
10 10
50 10
100 10
100
Elija producto: B Su vuelto:
Ingrese monedas: 50
100 10
100
100
100
Elija producto: C Pago Exacto.
Ingrese monedas:
100
100
50
10
100
10
10
10
5. Votaciones CONFECH
La CONFECH en su afán de agilizar el proceso de recuento de votaciones a
su convocatoria a PARO, le ha encargado a Ud. el diseño de un algoritmo
de registro de votación por Federación.

Primero el algoritmo debe solicitar al usuari@ ingresar la cantidad de


federaciones que participarán en el proceso.

Para cada universidad, el usuari@ ingresará el nombre de la universidad


y los votos de sus estudiantes, que pueden ser ACEPTAR(A), RECHAZAR (R),
NULO(N) o BLANCO(B). El fin de las votaciones se indicará ingresando X.

Una vez leídas las votaciones de cada universidad se mostrará un resumen


de votos tal como se muestra en los ejemplos de ejecución. Considere que
si la cantidad de VOTOS ACEPTAR es mayor que la cantidad de VOTOS
RECHAZAR esa Universidad acepta el paro, en caso contrario rechaza el
paro.

Finalmente, el algoritmo debe mostrar el resultado global de votación,


indicando la cantidad de Universidades que aceptan, que rechazan, y en
las que hubo empate entre estas dos opciones.
EJEMPLO DE EJECUCIÓN
ENTRADA SALIDA
Total de Universidades = 3 UV : 3 aceptan, 0 rechazan, 0 blancos, 0 nulos.
Universidad #1 = UV
Voto = A PUCV : 2 aceptan, 2 rechazan, 0 blancos, 1 nulo.
Voto = A
Voto = A USM : 0 aceptan, 3 rechazan, 1 blanco, 0 nulos.
Voto = X
UPLA : 4 aceptan, 1 rechaza, 0 blancos, 0 nulos.
Universidad #1 = PUCV
Voto = A
Voto = R Universidades que ACEPTAN : 2
Voto = A Universidad que RECHAZAN : 1
Voto = R Universidad con EMPATE : 1
Voto = N
Voto = X

Universidad #1 = USM
Voto = R
Voto = R
Voto = R
Voto = B
Voto = X

Universidad #1 = UPLA
Voto = A
Voto = A
Voto = A
Voto = A
Voto = R
Voto = X
6. Supermercado Valpo Market
El supermercado Valpo Market ha lanzado una promoción para todos sus
clientes que posean la tarjeta Valpo Premiun. La promoción consiste en
aplicar un descuento por cada n productos que pasan por caja. El primer
descuento es de 20%, y se aplica sobre los primeros n productos
ingresados. Luego, cada descuento es la mitad del anterior, y es
aplicado sobre los siguientes n productos.

Por ejemplo, si n = 3 y la compra es de 11 productos, entonces los tres


primeros tienen 20 % de descuento, los tres siguientes 10 %, los tres
siguientes 5 %, y los dos ́
útimos no tienen descuento.

Diseñe un algoritmo que pida al usuario ingresar n y la cantidad de


productos, y luego los precios de cada producto. Al final, el programa
debe entregar el precio total, el descuento total y el precio final
después de aplicar el descuento.

ENTRADA SALIDA
n: 3 Total: 3200
Cantidad productos: 8 Descuento: 420
Precio producto 1: 400 Por pagar: 2780
Precio producto 2: 800
Precio producto 3: 500
Precio producto 4: 100
Precio producto 5: 400
Precio producto 6: 300
Precio producto 7: 200
Precio producto 8: 500
7. Equipaje de Avión
Un BOEING 747 tiene una capacidad de carga para equipaje de 18.000
kilogramos.
Diseñe un algoritmo que controle la recepción de equipaje de un vuelo en
un BOEING 747, sabiendo que :
• Se deben rechazar los bultos que pesan más de 5000 kg.
• El valor por kg del bulto es :
• De 0 a 25 Kg $1000 por kg.
• De 26 a 300 Kg $1500 por kg.
• De 301 a 5000 Kg $2000 por kg.
Considere que los pesos ingresados son en kilogramos (sin decimales).
Considere que el precio por un bulto de 30 kilogramos es 30 x 1500 y no
25 x 1000 + 5 x 1500.
Cuando se intenta agregar un nuevo bulto y con este se sobrepasan los
18.000 kilogramos de carga del avión, el algoritmo no debe agregar dicho
bulto y debe imprimir la siguiente información respecto al vuelo :
• Número total de bultos aceptados
• Número total de bultos rechazados
• Peso del bulto más pesado
• Peso promedio de los bultos
• Ingreso total por concepto de carga del avión
Considere que los bultos se ingresan uno por uno. Además existirán
suficientes bultos como para completar la capacidad del avión.
Ejemplo de Ejecución
ENTRADA SALIDA
Ingrese peso bulto : 6000 Número total de bultos aceptados = 8
Ingrese peso bulto : 5000 Número total de bultos rechazados = 3
Ingrese peso bulto : 5000 Peso del bulto más pesado = 5000
Ingrese peso bulto : 5000 Peso promedio de los bultos = 2250
Ingrese peso bulto : 200 Ingreso total por concepto de carga = 3584000
Ingrese peso bulto : 20
Ingrese peso bulto : 7000
Ingrese peso bulto : 80
Ingrese peso bulto : 700
Ingrese peso bulto : 4000
Ingrese peso bulto : 2000

También podría gustarte