0% encontró este documento útil (0 votos)
24 vistas3 páginas

PD EE2 - 24 2sol

El documento presenta un examen de programación digital para la carrera de ingeniería civil, con tres preguntas que abordan la creación de programas para calcular impuestos prediales, montos y descuentos de ventas, y jornales de obreros. Cada pregunta incluye ejemplos de código y validaciones necesarias para asegurar la correcta entrada de datos. El examen tiene un tiempo de duración de 90 minutos y se enfoca en la aplicación práctica de conceptos de programación.

Cargado por

Fabiola Rivera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
24 vistas3 páginas

PD EE2 - 24 2sol

El documento presenta un examen de programación digital para la carrera de ingeniería civil, con tres preguntas que abordan la creación de programas para calcular impuestos prediales, montos y descuentos de ventas, y jornales de obreros. Cada pregunta incluye ejemplos de código y validaciones necesarias para asegurar la correcta entrada de datos. El examen tiene un tiempo de duración de 90 minutos y se enfoca en la aplicación práctica de conceptos de programación.

Cargado por

Fabiola Rivera
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

FACULTAD DE INGENIERÍA

CARRERA DE INGENIERÍA CIVIL

ASIGNATURA : PROGRAMACIÓN DIGITAL


PERÍODO ACADÉMICO : 2024-2
FECHA : 09/10/2024
TIEMPO : 90 minutos

SOLUCIÓN EXAMEN ESCRITO Nº 02 501


Pregunta1: (6 puntos)
El municipio de un distrito de Lima quiere un programa para calcular el impuesto predial para los vecinos de
su distrito. Para calcular el monto del impuesto, necesita saber el tipo de predio [1, 2 o 3] y el área del predio
(en m2 > 0). Los datos ingresados deben estar validados.
El impuesto predial se calcula en base al tipo de predio y área del predio, de acuerdo con la siguiente tabla:
Predio (Tipo) Impuesto predial (soles / m2)
1. Comercial 20.00
2. Vivienda 12.00
3. Terreno 6.00
Luego del ingreso de datos la aplicación debe indicar el nombre del tipo de predio y el monto a pagar:
tipo=int(input('Ingrese tipo de predio [1-3]: '))
while not(tipo==1 or tipo==2 or tipo==3):
tipo=int(input('Ingrese otro tipo de predio [1-3]: '))
area=float(input('Ingrese area en m2 [>0]: '))
while not(area>0):
Ingrese tipo de predio [1-3]: 1 area=float(input('Ingrese otra area en m2 [>0]: '))
Ingrese área en m2 [>0]: 250 if tipo==1:
Predio Comercial, monto a pagar S/.5000.0 nombre='Comercial'
impuesto=20*area
elif tipo==2:
Ingrese tipo de predio [1-3]: 4 nombre='Vivienda'
Ingrese otro tipo de predio [1-3]: 3 impuesto=12*area
Ingrese área en m2 [>0]: 0 else:
Ingrese otra área en m2 [>0]: 500 nombre='Terreno'
Predio Terreno, monto a pagar S/.3000.0 impuesto=6*area
print('Predio {}, monto a pagar S/.{}'.format(nombre,impuesto))
Pregunta2: (7 puntos)
Una empresa que vende productos para la construcción realiza una campaña por la venta de mayólica y
cemento. Escriba un programa que permita calcular el monto y descuento totales por la realización de N
ventas.
Para cada venta que realiza, el programa debe validar el ingreso del tipo de producto (1 o 2) y la cantidad
comprada (>0), luego debe calcular el monto a pagar considerando el precio indicado y el descuento
correspondiente. El programa debe mostrar el monto de venta total de las N ventas considerando los
descuentos, así como el descuento total considerado por las N ventas.
Ingrese el número de ventas [>0]: 3
Tipo producto Precio (S/.) Descuento
venta 1, ingrese tipo de producto: 1
1. Mayólica 45 20% Ingrese cantidad de compra: 5
2. Cemento 60 15% venta 2, ingrese tipo de producto: 4
venta 2, ingrese otro tipo de producto: 2
Ingrese cantidad de compra: 6
venta 3, ingrese tipo de producto: 1
Ingrese cantidad de compra: 5
Venta total = 666.0
Descuento total = 144.0 1
n=int(input('Ingrese el numero de ventas [>0]: '))
while not(n>0):
can=int(input('Ingrese otro numero de ventas [>0]: '))
ventaT=0
descT=0
for i in range(n):
tPro=int(input('venta {}, ingrese tipo de producto: '.format(i+1)))
while not(tPro==1 or tPro==2):
tPro=int(input('venta {}, ingrese otro tipo de producto: '.format(i+1)))
can=int(input('Ingrese cantidad de compra: '))
while not(can>0):
can=int(input('Ingrese otra cantidad de compra: '))
if tPro==1:
pre=45
tasa=0.2
else:
pre=60
tasa=0.15
des=can*pre*tasa
descT=descT+des
ventaT=ventaT+can*pre-des
print('Venta total = {}'.format(ventaT))
print('Descuento total = {}'.format(descT))

Pregunta3: (7 puntos)
Una empresa constructora desea un programa para calcular el jornal de un obrero de acuerdo con las
siguientes condiciones del contrato:
o Se trabaja todos los días de la semana (1 al 7, donde 1 es lunes, 2 es martes, hasta 7 que es domingo)
o El número de horas trabajadas en turno normal (de 1 a 8 horas máximo).
o El número de horas trabajadas en turno extra (de 0 a 6 horas máximo).
** todos los datos ingresados deben estar validados
Las condiciones para calcular el pago son las siguientes:
o La tarifa en el turno normal es 60 soles la hora.
o La tarifa en el turno extra es 90 soles la hora.
o El sábado se paga 50% adicional en el turno extra.
o El domingo se paga el doble en ambos turnos.

Después de ingresar los datos, el programa debe mostrar el jornal que se pagará al obrero por ese día de
trabajo.
Por ejemplo:

Ingrese día de la semana [1 lun - 7 dom]: 8


Ingrese otro día de la semana [1 lun - 7 dom]: 6
Número de horas turno normal [1-8]: 9
Otro número de horas turno normal [1-8]: 5
Número de horas turno extra [0-6]: 7
Otro número de horas turno extra [0-6]: 6

El pago del día es S/.1110.0

2
dia=int(input('Ingrese día de la semana [1 lun - 7 dom]: ')) if dia<6:
while not(1<=dia<=7): pago=horaN*60+horaE*90
dia=int(input('Ingrese otro día de la semana [1 lun - 7 dom]: ')) elif dia==6:
horaN=int(input('Número de horas turno normal [1-8]: ')) pago=horaN*60+horaE*90*1.5
while not(1<=horaN<=8): else:
horaN=int(input('Otro número de horas turno normal [1-8]: ')) pago=horaN*60*2+horaE*90*2
horaE=int(input('Número de horas turno extra [0-6]: ')) print('El pago del dia es:',pago)
while not(0<=horaE<=6):
horaE=int(input('Otro número de horas turno extra [0-6]: '))

También podría gustarte