先给你发一下题:输入格式,第一行为数值 i,接着的 i 行为需要输入的算式,每行可能有三个数据或两个数据。若该行为三个数据则第一个数据表示运算类型,a 表示加法运算,b 表示减法运算,c 表示乘法运算,接着的两个数据表示参加运算的运算数。若该行为两个数据,则表示本题的运算类型与上一题的运算类型相同,而这两个数据为运算数。输出格式,输出2×i 行。对于每个输入的算式,输出完整的运算式及结果,第二行输出该运算式的总长度
时间: 2024-03-23 13:42:11 浏览: 30
第四届蓝桥杯真题\2013第四届蓝桥杯-CC++高职高专组
5星 · 资源好评率100%
好的,这是一个简单的输入输出问题。我可以提供一种 Python 代码实现,你可以参考一下:
```python
n = int(input()) # 输入的数值 i
last_op = None # 上一行输入的运算类型
for i in range(n):
line = input().split() # 将一行输入拆分成多个数据
if len(line) == 3: # 如果该行有三个数据,表示输入的是运算类型和运算数
op, a, b = line
# 根据运算类型计算结果
if op == 'a':
result = int(a) + int(b)
elif op == 'b':
result = int(a) - int(b)
elif op == 'c':
result = int(a) * int(b)
# 输出运算式和结果
print("{} {} {} = {}".format(a, op, b, result))
print(len("{} {} {} = {}".format(a, op, b, result)))
last_op = op # 更新上一行输入的运算类型
else: # 如果该行有两个数据,表示输入的是运算数
a, b = line
# 根据上一行输入的运算类型计算结果
if last_op == 'a':
result = int(a) + int(b)
elif last_op == 'b':
result = int(a) - int(b)
elif last_op == 'c':
result = int(a) * int(b)
# 输出运算式和结果
print("{} {} {} = {}".format(a, last_op, b, result))
print(len("{} {} {} = {}".format(a, last_op, b, result)))
```
希望这个代码能够帮助你解决问题。如果你有任何疑问或需要进一步的帮助,请随时告诉我。
阅读全文