-
Notifications
You must be signed in to change notification settings - Fork 0
/
Ejercicio 9.py
78 lines (64 loc) · 3.2 KB
/
Ejercicio 9.py
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
75
76
77
78
#Ejercicio: Uso de funciones en Python
#Ejercicio 1: Trabajar con argumentos en funciones
#Los argumentos requeridos en las funciones se utilizan cuando las funciones necesitan que esos argumentos funcionen correctamente.
# En este ejercicio, construirás un informe de combustible que requiere información de varias ubicaciones de combustible en todo el cohete.
#IP Dedica unos minutos para tratar de encontrar una solución.
# Luego desplázate hacia abajo hasta la parte inferior para ver si has logrado compilar el programa de acuerdo con las especificaciones
#Comienza por crear una función que necesite tres lecturas de combustible y devuelva un informe:
# Función para leer 3 tanques de combustible y muestre el promedio
def generate_report(main_tank, external_tank, hydrogen_tank):
total_average = (main_tank + external_tank + hydrogen_tank) / 3
return f"""Fuel Report:
Total Average: {total_average}%
Main tank: {main_tank}%
External tank: {external_tank}%
Hydrogen tank: {hydrogen_tank}%
"""
# Llamamos a la función que genera el reporte print(funcion(tanque1, tanque2, tanque3))
print(generate_report(80, 70, 85))
# Función promedio
def average(values):
total = sum(values)
number_of_items = len(values)
return total / number_of_items
# Test the averaging function with a list of integers:
average([80, 85, 81])
# Actualiza la función
def generate_report(main_tank, external_tank, hydrogen_tank):
return f"""Fuel Report:
Total Average: {average([main_tank, external_tank, hydrogen_tank])}%
Main tank: {main_tank}%
External tank: {external_tank}%
Hydrogen tank: {hydrogen_tank}%
"""
# Call the updated function again with different values
print(generate_report(88, 76, 70))
#--------------------------------------------------------------------------------------------
#Ejercicio 2:Trabajo con argumentos de palabra clave
# Función con un informe preciso de la misión. Considera hora de prelanzamiento, tiempo de vuelo, destino, tanque externo y tanque interno
def mission_report(pre_launch_time, flight_time, destination, external_tank, main_tank):
return f"""
Mission to {destination}
Total travel time: {pre_launch_time + flight_time} minutes
Total fuel left: {external_tank + main_tank} gallons
"""
print(mission_report(14, 51, "Moon", 200000, 300000))
# Escribe tu nueva función de reporte considerando lo anterior
def mission_report(destination, *minutes, **fuel_reservoirs):
return f"""
Mission to {destination}
Total travel time: {sum(minutes)} minutes
Total fuel left: {sum(fuel_reservoirs.values())}
"""
print(mission_report("Moon", 10, 15, 51, main=300000, external=200000))
# Escribe tu nueva función
def mission_report(destination, *minutes, **fuel_reservoirs):
main_report = f"""
Mission to {destination}
Total travel time: {sum(minutes)} minutes
Total fuel left: {sum(fuel_reservoirs.values())}
"""
for tank_name, gallons in fuel_reservoirs.items():
main_report += f"{tank_name} tank --> {gallons} gallons left\n"
return main_report
print(mission_report("Moon", 8, 11, 55, main=300000, external=200000))