Python - Listas y diccionario con funciones

 
Vista:
sin imagen de perfil
Val: 43
Ha disminuido su posición en 2 puestos en Python (en relación al último mes)
Gráfica de Python

Listas y diccionario con funciones

Publicado por Saray (13 intervenciones) el 25/04/2020 08:42:37
Hola necesito ayuda con este ejercicio
A523CD6A-DA0C-4585-88E2-895433819EF7
CA224B87-A0E1-4C12-AF68-DCFC0AD7981F
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-3
Responder

Listas y diccionario con funciones

Publicado por Raul (1 intervención) el 25/04/2020 13:52:52
soy autodidacta y no se si este código es del todo correcto pero funciona.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#adultos a 12.000 $
#niños a 8.000 $
#cantidad de personas
def personas():
    #se ira añadiendo el numero de niños y de adultos
    #diccionario = {grupo n:[adultos, niños],...}
    dic = {}
    grupos = input("numero de grupos: ")
    #por cada grupo pregunta el numero de adultos y niños
    for element in range(1, int(grupos)+1):
        adultos = input("Digite la cantidad de adultos: ")
        niños = input("Digite la cantidad de niños: ")
        dic[element] = [adultos, niños]
    gananciaTotal(ganancias(dic))
 
#Total a pagar:
#Total mentenimiento:
#Total pago a empleados:
#Ganancia neta:
 
def ganancias(dic):
 
    precioAdultos = 12000
    precioNiños = 8000
 
    #el total a pagar es la suma de lo que paga cada grupos
    #lo que paga cada grupo depende del numero de niños y adultos
 
    #en un primer momento ningun grupo paga
    #despues de calcular se efectua el pago
    TotalPagado = 0
 
    #por cada grupo se ira apuntando la ganancia neta
    listaDeGanancias=[]
 
    for grupos in dic.items():
 
        print ("Grupo: -", grupos[0],"-")
 
        numeroDePersonas = grupos[1]
        TotalPagado += int(numeroDePersonas[0]) * precioAdultos + int(numeroDePersonas[1]) * precioNiños
        print ("Total pagado: ",TotalPagado)
 
        #el mantenimiento gasta un 25% del total pagado por los clientes
        mantenimiento = (TotalPagado * 25)/100
        print ("Total mantenimiento: ",mantenimiento)
 
        #se paga un 55% del TotalPagado a los trabajadores
        trabajadores = (TotalPagado * 55)/100
        print ("Total pago a empleados: ",trabajadores)
 
        #el resto 20 % forma parte de las ganancias netas de la empresa
        gananciasNetas = (TotalPagado * 20)/ 100
        print ("Ganancia neta: ",gananciasNetas)
 
        listaDeGanancias.append(gananciasNetas)
 
        TotalPagado = 0
 
 
    return (listaDeGanancias)
 
#sumatorio de cada valor de la lista
def gananciaTotal(listaDeGanancias):
 
    gananciaTotal = 0
    for element in listaDeGanancias:
        gananciaTotal += element
 
    print ("Ganancia total: ",gananciaTotal)
 
 
 
personas()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar