Looks like you are making some pretty good progress. The short answer to your question is that the menu & user input need to be inside the while loop. That way cal_opt has a chance to change value before it gets evaluated by the while loop again.
Another comment - the global cal_opt is considered evil by many. Better would be: def cal(): return int(raw_input("Option: ")) print "Mini Calculator" print "By Nathan Pinno" print while cal_opt != 9: menu() cal_opt=cal() if cal_opt == 1: X = input("First number:" ) Y = input("Second number:" ) print X, "+", Y, "= ",X + Y .... Keep hacking away at it... you're making good progress. --Todd On Saturday 30 July 2005 09:55 pm, Nathan Pinno wrote: > When I run the following code it just keeps repeating. Here is a screen > shot showing what I mean: Mini Calculator > By Nathan Pinno > > CALCULATE MENU > 1) Add > 2) Subraction > 3) Multiplication > 4) Division w/o remainder > 5) Division with remaider > 6) Exponation > 7) Square roots > 9) Exit > Option: 5 > First number:4 > Second number:2 > 4 / 2 = 2 R 0 > First number:3 > Second number:6 > 3 / 6 = 0 R 3 > First number:5 > Second number:6 > 5 / 6 = 0 R 5 > First number: > > Here is the relevant code: > # This is a small calculator. > def menu(): > print "CALCULATE MENU" > print "1) Add" > print "2) Subraction" > print "3) Multiplication" > print "4) Division w/o remainder" > print "5) Division with remaider" > print "6) Exponation" > print "7) Square roots" > print "9) Exit" > > def cal(): > global cal_opt > cal_opt = int(raw_input("Option: ")) > > print "Mini Calculator" > print "By Nathan Pinno" > print > menu() > cal() > while cal_opt != 9: > if cal_opt == 1: > X = input("First number:" ) > Y = input("Second number:" ) > print X, "+", Y, "= ",X + Y > elif cal_opt == 2: > X = input("First number:" ) > Y = input("Second number:" ) > print X, "-", Y, "= ",X - Y > elif cal_opt == 3: > X = input("First number:" ) > Y = input("Second number:" ) > print X, "*", Y, "= ",X * Y > elif cal_opt == 4: > X = input("First number:" ) > Y = input("Second number:" ) > if Y == 0: > print "Division by zero ot allowed!" > Y = input("Second number:" ) > else: > print X, "/", Y, "= ",X / Y > elif cal_opt == 5: > X = input("First number:" ) > Y = input("Second number:" ) > if Y == 0: > print "Division by zero ot allowed!" > Y = input("Second number:" ) > else: > print X, "/", Y, "= ",X / Y," R ", X % Y > elif cal_opt == 6: > X = input("First number:" ) > Y = input("Power:" ) > print X, "**", Y, "= ",X**Y > elif cal_opt == 7: > X = input("Number to find the square root of:" ) > print "The square root of", X, " = ",X**0.5 > else: > print "That's not an option. Try again." > menu() > cal() > print "Goodbye" > > How do I stop this, and make it go back to the main menu? > > Thanks in advance, > Nathan _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor