Untitled

 avatar
unknown
python
5 months ago
1.9 kB
27
Indexable
class Caculator:
    def __init__(self):
        pass
    def add(self, num1, num2):
        return num1+num2
    def subtract(self, num1,num2):
        return num1-num2
    def multiply(self, num1,num2):
        return num1*num2
    def divide(self,num1,num2):
        return num1/num2
    def __display_menu(self):
        print('Select an option: \n 1 Add \n 2 Subtract \n 3 Multiply \n 4 Divide \n q Quit ')
    def __get_input(self):
        # Take input from the user 
        choice = input("Enter choice(1/2/3/4,q):")
        # handling the quit choice
        if choice == 'q' or choice not in ['1', '2', '3', '4']:
            return choice, None,None
        # handling wrong number input
        else:
        
            num1 = float(input("Enter first number: "))
            num2 = float(input("Enter second number: "))
            return choice, num1,num2
        # except ValueError:
        #     print('Invalid Number')
        #     return None, None, None
        
        
    def run_calculator(self):
        while True:
            self.__display_menu()
            choice,num1,num2 = self.__get_input()
            
            if choice == 'q':
                print('bye!')
                break
            
            
                
            elif choice == '1':
               print(num1,"+",num2,"=", self.add(num1,num2))
            
            elif choice == '2':
               print(num1,"-",num2,"=", self.subtract(num1,num2))
            
            elif choice == '3':
               print(num1,"*",num2,"=", self.multiply(num1,num2))
            
            elif choice == '4':
               print(num1,"/",num2,"=" ,self.divide(num1,num2))
            # elif choice == 'q':
            #     print('You are quiting')
            else:
               print("Invalid input")
               
Editor is loading...
Leave a Comment