Nombres - johncroth/pythonEd2024 GitHub Wiki
Python es una herramienta fantástica para realizar cálculos, porque podemos usar nombres para organizar las piezas de un cálculo complejo.
Déjame recordarte un poco de matemáticas.
d = vt
, que su distancia es la velocidad multiplicada por el tiempo. Entonces, igualmente,t = d / v
.d = kg
, que su distancia es Además, la distancia es el kilometraje multiplcado por la cantidad de gasolina. Entonces, la cantidad de gas necesaria esg = d / k
Imaginemos que somos parte de una empresa camionera con una ruta de Calca a Puno, 400km. Un directivo sugiere que los conductores vayan lo más rápido posible, porque así se ahorra tiempo y, por tanto, se reduce el coste por ruta. Ofrece este programa Python para calcular el costo
distancia = 400 # km de Calca a Puno
velocidad = 80 # km / h
paga_por_hora = 30 # soles / h
tiempo = distancia / velocidad
costo_de_tiempo = paga_por_hora * tiempo
print( "Con veolcidad", velocidad )
print( "el costo del tiempo será", costo_de_tiempo )
Guarde y ejecute este programa como nombres_a.py
.
Algunos puntos de explicación:
- Python ignora todo lo que está a la derecha del símbolo
#
. Estos se denominan "comentarios de código" y pueden ayudar explique su código a los lectores (como su yo futuro) pero no tienen ningún efecto cuando se ejecuta el programa. Los uso para realizar un seguimiento de las unidades. - Los símbolos
+
y-
son suma y resta, y*
y/
representan multiplicación y división. - El signo
=
es "tarea". Significa "deje que el nombre de la izquierda represente el valor de la derecha". Podemos elegir los nombres como queramos, y elegí nombres para sugerir el significado de cada cantidad, para que sea fácil. para comprender cada paso del cálculo. - Cuando aparece un nombre en el lado derecho de
=
, Python pone su valor asignado en ese lugar. Así, en la línea 5,distancia / velocidad
se convierte en400/80
debido a las líneas anteriores. Python evalúa esto como 5 y asigna 5 al nombre "tiempo". Luego, en la siguiente línea, la expresiónpaga_por_hora * tiempo
pasa a ser30 * 5
, que es150
, y eso se asigna acosto_de_tiempo.
PARE AQUÍ y haga el ejercicio 1 a continuación.
Rendimiento de la gasolina
Un colega no está de acuerdo y afirma que los conductores sólo deberían conducir a 60 km/h, porque esa es la velocidad a la que Nuestras camionetas tienen el mejor rendimiento de gasolina. Por una razón, a altas velocidades la resistencia al viento hace que el camión sea menos eficiente. Ha medido el kilometraje de nuestros camiones y tiene una fórmula para estimar el rendimiento de la gasolina. Ofrece el siguiente programa Python modificado:
distancia = 400 # km de Cucsco a Puno
precio_combustible = 20 / 3.78 # soles / l
velocidad = 60 # km / h
# Fórmula para el consumo de combustible a una velocidad determinada
kilometraje = 25 * (1 - (velocidad - 60) ** 2 / 60 ** 2) # km / l
cantidad_de_combustible = distancia / kilometraje
costo_de_combustible = cantidad_de_combustible * precio_combustible
print("Con velocidad", velocidad)
print("El costo de combustible será", costo_de_combustible)
Guarde y ejecute este programa como nombres_b.py
.
Un par de comentarios más para tu información.
- El
**
significa "función de potencia", por lo quex ** 2
esx
al cuadrado, lo que significax * x
. Pero No te preocupes demasiado por esta fórmula por ahora; puedes confiar en que es razonable. - Tenga en cuenta que la cantidad de gasolina multiplicada por el consumo de gasolina da la distancia recorrida; por lo tanto Podemos calcular la cantidad de gasolina que usaremos dividiendo la distancia por el kilometraje.
PARE AQUÍ y haga el ejercicio 2 a continuación.
Poniendo todo junto.
Observa que ambas observaciones son correctas; el costo de la gasolina y el costo de Se deben tener en cuenta ambos aspectos del pago al conductor. Combinando los dos programas, tenemos esto:
distancia = 400 # km de Calca a Puno
precio_combustible = 20 / 3.78 # soles / l
velocidad = 75 # km / h
paga_por_hora = 30 # soles / h
tiempo = distancia / velocidad
costo_de_tiempo = paga_por_hora * tiempo
print( "Con velocidad", velocidad)
print( "El costo de tiempo será", costo_de_tiempo )
kilometraje = 25 * (1 - (velocidad - 60) ** 2 / 60 ** 2) # km / l
combustible = distancia / kilometraje
costo_de_combustible = combustible * precio_combustible
print("El costo de combustible será", costo_de_combustible)
costo_total = costo_de_tiempo + costo_de_combustible
print( "Costo total será", costo_total )
Explorará más este programa en los ejercicios 3 y 4.
Estos cálculos ilustran cómo Python permite usar nombres para dividir cálculos complejos en partes y volver a ensamblar las partes.
Ejercicios
- Cambiando el valor de
velocidad
ennombres_a.py
, completa la siguiente tabla. ¿Cuál de estas velocidades tiene el menor costo de tiempo?
Velocidad | Costo de tiempo |
---|---|
60 | |
70 | |
80 | |
90 |
2.Cambiando el valor de velocidad
en nombres_b.py
, completa la siguiente tabla. ¿Cuál de estas velocidades
¿Tiene el costo de combustible más bajo?
Velocidad | Costo de combustible |
---|---|
50 | |
60 | |
70 | |
80 |
- Como arriba, cambia el valor de
velocidad
ennombres_c.py
para completar la siguiente tabla. Cual ¿De estas velocidades tiene el costo total más bajo?
Velocidad | Costo |
---|---|
60 | |
70 | |
80 | |
85 | |
90 | |
100 |
- Supongamos que ahora solo les pagamos a los conductores 20 soles la hora. Cambie
nombres_c.py
en consecuencia y complete la tabla a continuación. ¿Cuál de estas velocidades tiene el costo total más bajo? ¿Tiene sentido que sea diferente al ejercicio 3?
Velocidad | Costo |
---|---|
60 | |
70 | |
80 | |
85 | |
90 | |
100 |
-
Supongamos que compramos 6 manzanas a 1,5 soles cada una, 8 naranjas a 2 soles cada una y 16 plátanos a 1/2 soles cada una. cada. Podemos calcular el coste total así:
manzanas = 1.5 * 6 naranjas = 2 * 8 platanitos = 0.5 * 16 total = manzanas + platanitos + naranjas print( "El costo total es", total )
A. Guarda este programa en el archivo
nombres_4.py
y ejecútalo. ¿Cúal es el costo total?B. Supongamos que compramos 8 manzanas en lugar de 6. Cambie el programa para reflejar esto y ejecútelo para calcular el nuevo total.
C. Continuando con la parte B, ¿y si las naranjas costaran 2,5 soles cada una?
D. Finalmente queremos comprar también 1,5 kg de chirimoya a 8 soles el kg. Aumente el programa en consecuencia.
-
Compraste snacks para una reunión de 12 personas: 2/3 kg de maná a 10 soles/kg, un paquete de chulpi a 11 soles, 3 tortas a 7 soles cada una, y 12 botellas de refresco a 1,5 soles cada una. Escribe un programa
nombres_5.py
que calcule e imprima el costo total de los snacks y también el costo por persona. Su programa debe utilizar nombres de variables significativos para que sea fácil de entender, y los mensajes que imprima el programa deben ser fáciles de leer, no solo números sin contexto. -
Copie y pegue el siguiente código en un nuevo archivo
nombres_6.py
(que está destinado aproximadamente a convertir una edad en años a una edad en días) y ejecutarlo.nombres = "Lionel Andrés" apellidos "Messi Cuccittini" edad = 37 nombre_completo = nombres + " " + apellidos edad_en_dias = 365 x edad print( nombre_completo, "ha vivido mas que" edad_en_dias, "dias" )
A. Uno por uno, busque y corrija los 3 errores del programa.
B. Leyendo el programa y el resultado, explica brevemente qué hace la línea
nombre_completo = nombres + " " + apellidos
.