Функция калькулятора не выводит ничего

Мне нужно спроектировать калькулятор со следующим пользовательским интерфейсом:

Welcome to Calculator! 1 Addition 2 Subtraction 3 Multiplication 4 Division Which operation are you going to use?: 1 How many numbers are you going to use?: 2 Please enter the number: 3 Please enter the number: 1 The answer is 4. 

Это то, что у меня есть до сих пор:

 print("Welcome to Calculator!") class Calculator: def addition(self,x,y): added = x + y return sum def subtraction(self,x,y): diff = x - y return diff def multiplication(self,x,y): prod = x * y return prod def division(self,x,y): quo = x / y return quo calculator = Calculator() print("1 \tAddition") print("2 \tSubtraction") print("3 \tMultiplication") print("4 \tDivision") operations = int(input("What operation would you like to use?: ")) x = int(input("How many numbers would you like to use?: ")) if operations == 1: a = 0 sum = 0 while a < x: number = int(input("Please enter number here: ")) a += 1 sum = calculator.addition(number,sum) 

Мне очень нужна помощь! Все учебные пособия по калькуляторам в Python 3 намного проще, чем это (так как в нем принимают только 2 номера, а затем просто распечатывают ответ).

Мне нужна помощь в выполнении функций в классе калькулятора, который я сделал для работы. Когда я пытаюсь запустить то, что у меня есть до сих пор, он позволяет мне вводить мои цифры и еще много чего, но потом это просто заканчивается. Он не запускает операцию или что-то еще. Я знаю, что у меня есть только дополнение, но если кто-то может просто помочь мне разобраться в добавлении, я думаю, что смогу сделать все остальное.

2 Solutions collect form web for “Функция калькулятора не выводит ничего”

Код как есть не работает. В функции addition вы возвращаете переменную sum которая будет конфликтовать с функцией build в sum .

Так что просто верните добавленные и вообще избегайте sum , используйте что-то вроде sum_ :

Это отлично работает для меня:

 print("Welcome to Calculator!") class Calculator: def addition(self,x,y): added = x + y return added def subtraction(self,x,y): diff = x - y return diff def multiplication(self,x,y): prod = x * y return prod def division(self,x,y): quo = x / y return quo calculator = Calculator() print("1 \tAddition") print("2 \tSubtraction") print("3 \tMultiplication") print("4 \tDivision") operations = int(input("What operation would you like to use?: ")) x = int(input("How many numbers would you like to use?: ")) if operations == 1: a = 0 sum_ = 0 while a < x: number = int(input("Please enter number here: ")) a += 1 sum_ = calculator.addition(number,sum_) print(sum_) 

Бег:

 $ python s.py Welcome to Calculator! 1 Addition 2 Subtraction 3 Multiplication 4 Division What operation would you like to use?: 1 How many numbers would you like to use?: 2 Please enter number here: 45 Please enter number here: 45 90 

Ваша программа принимает ввод, выполняет ряд операций, а затем заканчивается, не отображая результат. Попробуйте что-то вроде print(sum) после окончания цикла while.

Python - лучший язык программирования в мире.