Blog
Convertidor de grados Celsius a Fahrenheit en Python
- Publicado por: Rafael Fernandez
- Categoría: Blog
En el siguiente script crearemos un convertidor de grados celsius a fahrenheit y viceversa. La facilidad de sintaxis de Python nos permite realizar operaciones matemáticas muy facilmente. Podemos realizar desde operaciones aritméticas simples hasta raíces cuadradas (y un poco más con la ayuda de librerías de terceros). Este tipo de programas nos ayudarán a familiarizarnos con las operaciones matemáticas en Python, algo que debemos dominar si queremos extender nuestro conocimiento en el lenguaje. Primero que todo debemos saber que fórmula usaremos para la conversión.
Fórmula de conversión de grados Fahrenheit a Celsius:
(°F – 32) * 5/9 = °C -> Primero restamos 32 a la temperatura origina, luego multiplicamo 5 y finalmente dividimos entre 9.
Fórmula de conversión de grados Celsius a Fahrenheit:
(°C * 9/5) + 32 = °F -> Multiplicamos por 9 a la temperatura original, luego dividimos entre 5 y finalmente sumamos 32.
Código fuente para convertidor de grados Fahrenheit a Celsius:
fahrenheit = int(input('Ingrese una temperatura en grados Fahrenheit: ')) celsius = (fahrenheit - 32) * 5.0/9.0 # Hacemos uso de la funcion str.format() para darle formato a nuestra respuesta print('{} grados Fahrenheit son {} grados Celsius '.format(fahrenheit, celsius))
Código fuente para convertidor de grados Celsius a Fahrenheit:
celsius = int(input('Ingrese la temperatura en grados Celsius: ')) fahrenheit = 9.0/5.0 * celsius +32 print('{} grados Celsius son {} grados Fahrenheit'.format(fahrenheit, celsius))
Si extendemos un poco nuestros pequeños scripts podemos crear dos funciones y darle un poco más de interactividad a nuestro convertidor :
def fahrenheit_celsius(): '''convierte temperatura en grados fahrenheit a grados celsius''' fahrenheit = int(input('Ingrese la temperatura en grados Fahrenheit: ')) celsius = (fahrenheit -32 ) * 5.0/9.0 return '{} grados Fahrenheit son {} grados Celsius'.format(fahrenheit, celsius) def celsius_fahrenheit(): '''convierte temperatura en grados celsius a fahrenheit''' celsius = int(input('Ingrese la temperatura en grados Celsius: ')) fahrenheit = 9.0/5.0 * celsius +32 return '{} grados Celsius son {} grados Fahrenheit'.format(fahrenheit, celsius) while True: print('1.- Fahrenheit a Celsius') print('2.- Celsius a Fahrenheit') try: opcion = int(input('Seleccione una opción: ')) if opcion == 1: print(fahrenheit_celsius()) elif opcion == 2: print(celsius_fahrenheit()) elif opcion == 3: print('Hasta luego') else: raise ValueError except ValueError: print('Ingrese solo números.(1/2)')
Veamos paso por paso la ejecución de este pequeño script:
- Primero definimos las funciones que harán los cálculos para convertir de grados Celsius a Fahrenheit y viceversa. Cada una de las funciones le pide al usuario que ingrese una temperatura en la medida base e imprime la temperatura convertida a la medida objetivo.
- Luego inicia la ejecución dentro de un ciclo while, donde se le pide al usuario que seleccione que tipo de conversión quiere realizar.
- Aplicamos una sentencia try para verificar que el usuario ingrese una opción válida.
- Luego seleccionamos la función a ejecutar dependiendo de la selección del usuario.
Este código desarrolla más la interacción con el usuario permitiendole seleccionar que tipo de conversión quiere realizar y repetirlas tantas veces quiera, también maneja errores de entrada de datos de parte del usuario.
Observo unos detalles:
return ‘{} grados Celsius son {}
grados Fahrenheit’.format(fahrenheit, celsius), CORRECTO PRIMERO CELSIUS (celsius, fahrenheit)
print(‘2.- Celsius a Fahrenheit’)
print(‘3.- Salir’) AGREGADO PARA TERMINAR EL PROGRAMA
print(‘\tHasta luego!!!’)
break AGREGADO PARA TERMINAR EL PROGRAMA
Lea un valor de temperatura t y un código p que puede ser 1 o 2. Si el código es 1 convierta la temperatura t de grados f a grados c con la fórmula c=5/9(t-32). Si el código es 2 convierta la temperatura t de grados c a f con la fórmula: f= 32 + 9t/5. Muestre el resultado
La fórmula para cambiar temperaturas en Fahrenheit la temperatura en Celsius es C = 5/9 (F – 32). La temperatura celsius es una función de la temperatura Fahrenheit. Represente gráficamente la función para cinco valores de temperatura en Fahrenheit. 32 F 50