Python Forum
while loop on a calculator
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
while loop on a calculator
#1
I'm super new to Python and I'm really having a hard time with this assignment. The previous assignment was a basic calculator. This assignment builds on that calculator by adding a while loop and adding the option to quit. The calculator is supposed to repeatedly loop back to the beginning and ask for a new character until the user types Q to quit. The first basic calculator was working perfectly, but adding the while statement changed that.

Here's what I've got. It doesn't work right and it doesn't like the break at the bottom. I'm grateful for any guidance.


print('This program is a basic calculator that allows you to perform calculations using two numbers and a character that indicates which math operation to perform. Options for the characters are + - * / and %.')

char = input('Enter a character to indicate which operation to perform or type Q or q to quit: ') #putting this here leaves it out of the while loop, but I can't put it after 'while' because it has to be defined first. 

while char != 'Q' or 'q': #is it better to start with char == 'q' or 'Q'? Or something entirely diffent?
        
    a = float(input('Enter a number: ')) 
    b = float(input('Enter another number: ')) 


    if char == '+': 
        sum = a + b 
        print('The sum of ',a, ' and ', b,' is ', sum , sep = '')

    elif char == '-': 
        difference = a-b 
        print(a, ' minus ', b, ' equals ', difference, '.', sep = '')

    elif char == '*':  
        product = a*b  
        print(a, ' times ', b, ' equals ', product, '.', sep='')

    elif char == '/': 

        if b == 0: 
            print('You can not divide a number by zero.')

        else: 
            quotient = a/b 
            rounded = format(quotient, '.2f') 
            print(a, ' divided by ', b, ' equals ', rounded, '.', sep = '')

    elif char == '%': 
        remainder = a%b 
        print('The remainder of ',a, ' and ', b, ' is ', a%b, '.', sep='') 


    else:
        print('That is not a valid character. Please enter + - * / or %.')

else:
    print('Goodbye')
    break #this break isn't allowed here because it's after 'else' but I can't figure out where else to put this part
Thanks in advance for any help!
Reply


Messages In This Thread
while loop on a calculator - by missus_brown - Feb-10-2019, 05:57 PM
RE: while loop on a calculator - by Larz60+ - Feb-10-2019, 06:21 PM
RE: while loop on a calculator - by missus_brown - Feb-10-2019, 06:41 PM
RE: while loop on a calculator - by ichabod801 - Feb-10-2019, 08:19 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Calculator Loop Help dock1926 3 3,820 Jun-23-2021, 10:05 PM
Last Post: HereweareSwole
  Python calculator help but not using while loop with true, any flags variable ,break kirt6405 13 5,626 Jun-08-2021, 06:39 AM
Last Post: Larz60+
  Weight loss calculator loop error drogers10940 7 14,428 Feb-14-2021, 12:36 AM
Last Post: Larz60+

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020