On 29/03/13 11:33, Ghadir Ghasemi wrote:
Hi guys I am trying to create part of a vending machine.

when I entered a non integer like 'dfsdf', the program just broke.
> Is there a way that the program can check if the input is an integer,

Yes you can use try/except to catch the failure.

if it isn't the program just keeps asking for an input?

and a while loop will keep you circulating.

You may not have come across these in your tutorial/course yet

fiftypencecoins = int(input("how many 50p coins do you want to insert or press 'e' 
to exit : "))
if fiftypencecoins == 'e':
         break

But this check needs to be before you convert to int() otherwise the 'e' will always raise an error when you try to convert it!

else:
      currentmoney += fiftypencecoins * 5/10
      print("your newly updated credit is £" + str(currentmoney) + "0")

So in pseudo code you should have

while True:
   read input
   if exit condition break
   try: convert to int
   except ValueError: continue
   process the value

HTH
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to