I need to get the average of a set of numbers from user input, but also need to use try and except for entering "bob" that outputs an error message, then let's them try again.
I've tried having the try/except in the if/else statement, but it just produces the error message after the first integer input (wrong). Now, I have it set up to run the user input, produce the average, and provide the error message if "bob" is entered. BUT it needs to let the user keep trying, not end the program.
try:
val = int(input("Enter how many numbers: "))
sums = 0
if val == 0:
average = "error"
print("error, try again")
else:
for value in range(val):
num = float(input("enter a number: "))
sums = sums + float(num)
average = sums / val
num = "bob"
#num = float(input("enter a number: "))
print("Average: " + str(average))
except:
print("error, try again")
expected: Number of numbers: 3 Enter number: 2.5 Enter number: bob error, try again Enter number: 1.5 Enter number: 3.5 Average: 2.5
actual: Enter how many numbers: 3 enter a number: 2.5 enter a number: bob error, try again
Aucun commentaire:
Enregistrer un commentaire