import math def floatInput(prompt, min=-math.inf, max=math.inf): assert min < max, 'ERROR: O valor mínimo é superior ao máximo!' try: res = float(input(prompt)) if (res < min) or (res > max): print(f"ERROR: Value should be in [{min}, {max}]!") floatInput(prompt, min, max) return res except ValueError: print("ERROR: Not a float!") floatInput(prompt) def main(): print("a) Try entering invalid values such as 1/2 or 3,1416.") v = floatInput("Value? ") print("v:", v) print("b) Try entering invalid values such as 15%, 110 or -1.") h = floatInput("Humidity (%)? ", 0, 100) print("h:", h) print("c) Try entering invalid values such as 23C or -274.") t = floatInput("Temperature (Celsius)? ", min=-273.15) print("t:", t) # d) What happens if you uncomment this? # impossible = floatInput("Value in [3, 0]? ", min=3, max=0) return if __name__ == "__main__": main()