Python定义一个Calculator类表示计算器(作业)
定义一个Calculator类表示计算器,在该类中定义四个方法add(x, y)、subtract(x, y)、multiply(x, y)、divide(x, y)四个方法分别实现两个数的加法、减法、乘法和除法。创建Claculator对象,提示用户输入两个操作数和运算符(+,-,*,/),调用对应的方法得到计算结果。请设计一个友好的信息交互方式。##main.py#Calculator##Cr
·
- 定义一个Calculator类表示计算器,在该类中定义四个方法add(x, y)、subtract(x, y)、multiply(x, y)、divide(x, y)四个方法分别实现两个数的加法、减法、乘法和除法。
创建Claculator对象,提示用户输入两个操作数和运算符(+,-,*,/),调用对应的方法得到计算结果。请设计一个友好的信息交互方式。
#
# main.py
# Calculator
#
# Created by Mewlan Musajan on 4/29/21
# Bug fixed on 2/2/24.
#
from decimal import Decimal, DecimalException
class Calculator():
first_number = 0
last_number = 0
result = ''
def add(self):
print("%s + %s = %s" % (self.first_number, self.last_number, self.first_number + self.last_number))
def subtract(self):
print("%s - %s = %s" % (self.first_number, self.last_number, self.first_number - self.last_number))
def multiply(self):
print("%s * %s = %s" % (self.first_number, self.last_number, self.first_number * self.last_number))
def divide(self):
if self.first_number != 0:
print("%g / %g = %g" % (self.first_number, self.last_number, self.first_number / self.last_number))
else:
inputViewModel()
def inputViewModel():
calculator = Calculator()
calculator.first_number = 0
calculator.last_number = 0
calculator.first_number = input('HÉSABLIMAQCHI BOLGHAN DESLEPKI SANNI KIRGÜZÜNG: ')
calculator.last_number = input('HÉSABLIMAQCHI BOLGHAN KIYINKI SANNI KIRGÜZÜNG: ')
isInputValid(calculator.first_number, calculator.last_number)
calculator.first_number.split(" ")
calculator.last_number.split(" ")
calculator.first_number = float(calculator.first_number)
calculator.last_number = float(calculator.last_number)
calculator.result = input('(HÉSABLASH) EMEL BELGISINI KIRGÜZÜNG(+, -, *, /): ')
if calculator.result == '+':
calculator.resultdd()
elif calculator.result == '-':
calculator.subtract()
elif calculator.result == '*':
calculator.multiply()
elif calculator.result == '/':
calculator.divide()
else:
inputViewModel()
print("HÉSABLASH TAMAMLANDI.")
exit()
def isInputValid(first_number, last_number):
try:
Decimal(first_number)
except DecimalException:
inputViewModel()
except DivisionByZero:
inputViewModel()
try:
Decimal(last_number)
except DecimalException:
inputViewModel()
except DivisionByZero:
inputViewModel()
else:
pass
finally:
pass
inputViewModel()
更多推荐
已为社区贡献2条内容
所有评论(0)