用python编写程序,实现n(n>=2)个分数相加。需要化简。
时间: 2023-05-27 13:03:45 浏览: 200
python 实现两数相加
可以使用 Python 的分数模块 fractions 来实现分数的加法和化简。
具体步骤如下:
1. 导入 fractions 模块。
2. 定义一个列表,用来存储 n 个分数。
3. 使用循环输入每个分数,将其化成最简分数形式,并加入列表。
4. 使用 reduce 函数将列表中的所有分数相加。
5. 将结果分数化简,并输出。
代码如下:
```
from fractions import Fraction
from functools import reduce
# 输入 n
n = int(input("请输入分数的个数:"))
# 定义一个列表,用来存储 n 个分数
fractions = []
# 输入每个分数
for i in range(n):
s = input("请输入第 %d 个分数:" % (i + 1))
# 将分数化成最简分数形式,并加入列表
f = Fraction(s)
fractions.append(f)
# 将列表中的所有分数相加
total = reduce(lambda x, y: x + y, fractions)
# 将结果分数化简,并输出
result = total.numerator, total.denominator
print("结果为: %d / %d" % result)
```
运行程序,输入 n 和 n 个分数,即可得到它们的和并化简输出。
例如,输入:
```
请输入分数的个数:3
请输入第1个分数:1/3
请输入第2个分数:2/5
请输入第3个分数:3/4
```
则输出:
```
结果为:47 / 60
```
阅读全文