We use the standard algorithm input validation to check that the user is entering a value that is expected by the program. In the example below our function is used to check that the entered integer is between a max and min value.
def getValidInt(fMin,fMax):
print("Please enter a number between",str(fMin), "and",str(fMax))
number=int(input())
while number<fMin or number>fMax:
print("Sorry try again")
print("Please enter a number between",str(fMin), "and",str(fMax))
number=int(input())
return number
def main():
min=-100
max=100
number1=getValidInt(min,max)
number2=getValidInt(1,20)
print(number1,number2)
main()
The function follows the AREA standard algorithm, that is Ask Repeat Error Ask. so
- Ask for valid number
- Repeat While number not valid
- Display Error
- Ask for valid number
Too remember this mnemonic easier think Jonathan Ross for step 2, as in Python we would use a While.
The code above makes use of local variables as well as formal and actual parameters. Can you spot them?
