2 usuarios conectados

Convertir entre grados Celsius y Fahrenheit. Ejercicio en Python

Comparte esto

 

Escribe un código en Python que tome una temperatura en grados Celsius y la convierta a grados Fahrenheit. También debe tomar una temperatura en grados Fahrenheit y la convierta a grados Celsius.


Más ejercicios




Mostrar/Ocultar ejercicio resuelto


  Solución al Ejercicio: Convertir entre grados Celsius y Fahrenheit

📋 Copiar código


def convertir_temperatura():
    """
    Permite al usuario convertir temperaturas entre Celsius y Fahrenheit.
    """
    while True:
        print("\nOpciones:")
        print("1. Celsius a Fahrenheit")
        print("2. Fahrenheit a Celsius")
        print("3. Salir")

        opcion = input("Elige una opción: ")

        if opcion == "1":
            try:
                celsius = float(input("Introduce la temperatura en grados Celsius: "))
                fahrenheit = (celsius * 9/5) + 32
                print(f"{celsius} grados Celsius son {fahrenheit:.2f} grados Fahrenheit.")
            except ValueError:
                print("Entrada inválida. Por favor, introduce un número.")
        elif opcion == "2":
            try:
                fahrenheit = float(input("Introduce la temperatura en grados Fahrenheit: "))
                celsius = (fahrenheit - 32) * 5/9
                print(f"{fahrenheit} grados Fahrenheit son {celsius:.2f} grados Celsius.")
            except ValueError:
                print("Entrada inválida. Por favor, introduce un número.")
        elif opcion == "3":
            print("¡Hasta luego!")
            break
        else:
            print("Opción inválida. Por favor, elige una opción válida.")

# Iniciar el conversor de temperatura
convertir_temperatura()

 

Explicación del Código:

  1. def convertir_temperatura()::

    • Define una función llamada convertir_temperatura que contiene la lógica para la conversión de temperaturas.
  2. while True::

    • Se inicia un bucle while que mantiene el programa en funcionamiento hasta que el usuario elige salir.
  3. Se muestran las opciones disponibles para el usuario (convertir de Celsius a Fahrenheit, de Fahrenheit a Celsius, o salir).

  4. Se pide al usuario que elija una opción mediante la entrada por teclado.

  5. Se realizan acciones basadas en la opción elegida:

    • Opción "1" (Celsius a Fahrenheit):
      • Se pide al usuario que introduzca la temperatura en grados Celsius.
      • Se intenta convertir la entrada a un número de punto flotante (float).
      • Se aplica la fórmula de conversión: ( F = (C \times \frac{9}{5}) + 32 ).
      • Se imprime el resultado, formateado a dos decimales.
      • Se incluye un bloque try...except ValueError para manejar el caso en que la entrada del usuario no sea un número.
    • Opción "2" (Fahrenheit a Celsius):
      • Se pide al usuario que introduzca la temperatura en grados Fahrenheit.
      • Se intenta convertir la entrada a un número de punto flotante (float).
      • Se aplica la fórmula de conversión: ( C = (F - 32) \times \frac{5}{9} ).
      • Se imprime el resultado, formateado a dos decimales.
      • Se incluye un bloque try...except ValueError para manejar el caso en que la entrada del usuario no sea un número.
    • Opción "3" (Salir):
      • Se imprime un mensaje de despedida y se sale del bucle while con break, terminando el programa.
    • Opción inválida:
      • Se muestra un mensaje de error si la entrada del usuario no coincide con ninguna de las opciones válidas.
  6. convertir_temperatura():

    • Se llama a la función principal para iniciar el conversor de temperatura cuando se ejecuta el script.