
Cristian Camilo Hernández Ramirez
PreguntaHe creado un videojuego de “Frio o caliente”, consiste en encontrar un número guiándote de la temperatura, pero…
¿Cómo puedo simplificar estas condicionales?¿Hay alguna forma de simplificarlas con funciones o algo así? Gracias de antemano.
import random def run(): print("""Bienvenido a "FRIO O CALIENTE". Guíate de la temperatura para encontrar el número ganador! (●'◡'●)""") random_number = random.randint(1,100) chosen_number = int(input("Elige un número del 1 al 100: ")) while chosen_number != random_number: if chosen_number >= random_number - 2 and chosen_number < random_number or \ chosen_number <= random_number + 2 and chosen_number > random_number: print("¡Te quemas!") elif chosen_number >= random_number - 5 and chosen_number < random_number or \ chosen_number <= random_number + 5 and chosen_number > random_number: print("Caliente") elif chosen_number >= random_number - 10 and chosen_number < random_number or \ chosen_number <= random_number + 10 and chosen_number > random_number: print("Tibio") elif chosen_number >= random_number - 20 and chosen_number < random_number or \ chosen_number <= random_number + 20 and chosen_number > random_number: print("Frio") elif chosen_number >= random_number - 40 and chosen_number < random_number or \ chosen_number <= random_number + 40 and chosen_number > random_number: print("Muy Frio") elif chosen_number >= random_number - 100 and chosen_number < random_number or \ chosen_number <= random_number + 100 and chosen_number > random_number: print("Temperaturas Criogénicas") chosen_number = int(input("Elige otro número: ")) print("¡Felicidades, has ganado!")

Cristian Camilo Hernández Ramirez
¡Muchas gracias!

Sebastián Andrade
creo que lo que te dijo el compañero seria la mejor opcion

Tomás Eduardo González Quiñones
Podrias hacer una encapsulación, y pasar esas condicionales a una funcion que se llame calcularTemperatura(num) y luego en el run simplemente llamar a la funcion calcularTemperatura(chosen_number)