利用多态技术,设计实现两个操作数进行运算的计算器类(加减乘除) 【输入形式】 第一行n表示要进行n次计算, 之后n行每一行有三部分组成,运算类型和两个操作数 【输出形式】 输出n行表示n个结果
时间: 2024-05-06 16:16:13 浏览: 146
以下是实现多态的计算器类的代码,可以进行加减乘除四则运算:
```python
class Calculator:
def __init__(self, op1, op2):
self.op1 = op1
self.op2 = op2
def calculate(self):
pass
class Add(Calculator):
def calculate(self):
return self.op1 + self.op2
class Subtract(Calculator):
def calculate(self):
return self.op1 - self.op2
class Multiply(Calculator):
def calculate(self):
return self.op1 * self.op2
class Divide(Calculator):
def calculate(self):
return self.op1 / self.op2
n = int(input("请输入要进行计算的次数:"))
for i in range(n):
op, op1, op2 = input().split()
op1 = int(op1)
op2 = int(op2)
if op == "+":
calculator = Add(op1, op2)
elif op == "-":
calculator = Subtract(op1, op2)
elif op == "*":
calculator = Multiply(op1, op2)
elif op == "/":
calculator = Divide(op1, op2)
print(calculator.calculate())
```
输入格式为:
```
n
op1 op2
op1 op2
...
```
其中 `n` 表示要进行计算的次数,之后的每一行都有三个部分,分别是运算类型和两个操作数。输出格式为 `n` 行,表示每次运算的结果。
阅读全文