Python实现:将分数化简为最简分数
Python实现:将分数化简为最简分数
本文介绍如何使用Python编写程序,将输入的分数化简为最简分数形式。
代码示例:
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
def simplify_fraction(numerator, denominator):
common_divisor = gcd(numerator, denominator)
simplified_numerator = numerator // common_divisor
simplified_denominator = denominator // common_divisor
return simplified_numerator, simplified_denominator
input_str = input('请输入一个分数: ')
numerator, denominator = map(int, input_str.split())
simplified_numerator, simplified_denominator = simplify_fraction(numerator, denominator)
print(f'最简分数为: {simplified_numerator}/{simplified_denominator}')
代码解释:
gcd(a, b)函数:- 使用欧几里得算法计算两个整数的最大公约数(GCD)。
simplify_fraction(numerator, denominator)函数:- 接收分子和分母作为参数。
- 调用
gcd()函数计算分子和分母的最大公约数。 - 将分子和分母分别除以最大公约数,得到最简分数的分子和分母。
- 返回最简分数的分子和分母。
- 主程序:
- 提示用户输入一个分数。
- 使用
map()函数将输入的字符串转换为两个整数(分子和分母)。 - 调用
simplify_fraction()函数计算最简分数。 - 打印最简分数的结果。
使用方法:
- 将代码保存为 .py 文件,例如
simplify_fraction.py。 - 在终端或命令提示符中运行代码:
python simplify_fraction.py - 程序将提示您输入一个分数,例如 '12/18'。
- 程序将输出最简分数:'2/3'。
注意:
本程序示例未考虑负数、零或其他特殊情况。您可以根据需要修改代码以处理这些情况。
原文地址: http://www.cveoy.top/t/topic/RIo 著作权归作者所有。请勿转载和采集!