gpt4 book ai didi

python - GCD 分数代码错误且未打印出正确答案

转载 作者:太空宇宙 更新时间:2023-11-03 21:11:31 24 4
gpt4 key购买 nike

我必须获取函数的 GCD,并在除以输入后打印出最终输出。

print('Welcome to Fraction Simplifier')
print('Type "exit" to quit.')

def getInput():

x = (input('Enter Fraction (Int/Int):\n'))
if x!='exit':
x = (input('Enter Fraction (Int/Int):\n'))
new_list = x.split('/') #['10', '/', '2']

return new_list


def gcd(a, b):

if int(b) == 1 or int(b) == 0:
print('Simplified Fraction')
print(a)
else:
print('Simplified Fraction')
gcd(int(b),int(a % b)) #a =b b = b = a % b
print(int(a/b),'/',int(a%b))

if __name__== "__main__":

x = getInput()
a = int(x[0])
b = int(x[1])
gcd(a,b)

我的问题是,当我尝试打印它时,它会得到随机数,而且我不知道它们来自哪里。关于可能出了什么问题的任何想法吗?

一旦这个工作正常,它应该这样做:30/4 将被解决为 15/2(最终输出)

最佳答案

您应该删除 gcd()else 部分中的 print() 调用。因为这是一个递归函数,所以您只需要一次打印调用。至Wikipedia是正确的,递归应该只在 b==0 时停止。

关于python - GCD 分数代码错误且未打印出正确答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55034332/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com