apoyo
M-v-C-2 opened this issue · 0 comments
class Empleado:
def init(self, nombre, apellido, sueldo_base, afp, fecha_ingreso, hijos):
self.nombre = nombre
self.apellido = apellido
self.sueldo_base = sueldo_base
self.afp = afp
self.fecha_ingreso = fecha_ingreso
self.hijos = hijos
def calcular_base_imponible(self):
meses_trabajados = (2021 - int(self.fecha_ingreso.split("/")[-1])) * 12
bonificacion = self.sueldo_base * (meses_trabajados * 0.01)
asignacion_familiar = self.sueldo_base * (self.hijos * 0.05)
base_imponible = self.sueldo_base + bonificacion + asignacion_familiar
return base_imponible
def calcular_descuentos(self):
base_imponible = self.calcular_base_imponible()
essalud = base_imponible * 0.07
if self.afp == "AFP(X)":
afp = base_imponible * 0.12
elif self.afp == "AFP(Y)":
afp = base_imponible * 0.114
else:
afp = 0 # Asignación predeterminada si no se cumple ninguna condición
return essalud, afp
def calcular_pago_total(self):
essalud, afp = self.calcular_descuentos()
base_imponible = self.calcular_base_imponible()
pago_total = base_imponible - essalud - afp
return pago_total
Pedir datos de los empleados
empleados = []
for i in range(2):
print(f"Ingrese los datos del empleado {i+1}:")
nombre = input("Nombre: ")
apellido = input("Apellido: ")
sueldo_base = float(input("Sueldo base: "))
afp = input("AFP (AFP(X) o AFP(Y)): ")
fecha_ingreso = input("Fecha de ingreso (DD/MM/YYYY): ")
hijos = int(input("Cantidad de hijos: "))
empleado = "Empleados"(nombre, apellido, sueldo_base, afp, fecha_ingreso, hijos)
empleados.append(empleado)
Calcular y mostrar los pagos individuales
for empleado in empleados:
base_imponible = empleado.calcular_base_imponible()
essalud, afp = empleado.calcular_descuentos()
pago_total = empleado.calcular_pago_total()
print(f"\nEmpleado: {empleado.nombre} {empleado.apellido}")
print(f"Base imponible: {base_imponible:.2f}")
print(f"Descuento ESSALUD: {essalud:.2f}")
print(f"Descuento AFP: {afp:.2f}")
print(f"Pago total: {pago_total:.2f}")
Calcular y mostrar los promedios de pago
total_pagos = sum(empleado.calcular_pago_total() for empleado in empleados)
promedio_pago = total_pagos / len(empleados)
print(f"\nPromedio de pago a los empleados: {promedio_pago:.2f}")