我先用求三个整数的最大公约数为例。
首先利用for循环来进行判断这三个整数可以被那些数整除
代码如下:
x,y,z=eval(input("请输入三个整数(用逗号隔开):"))
ma=max(x,y,z)
ls=[]
for i in range(2,ma):
a=x%i
b=y%i
c=z%i
接下来一步则是将相同的i值放到列表ls中。
代码如下:(if语句要在for循环下运行)
if a==0 and b==0 and c==0:
ls.append(i)
想到可能会遇到空列表(及无最大公约数)的情况,输出前还需要进行一下判断。
if ls==[]:
print("无最大公约数")
else:
print(max(ls))
这样完成了所有代码的书写。
完整代码:
x,y,z=eval(input("请输入三个整数(用逗号隔开):"))
ma=max(x,y,z)
ls=[]
for i in range(2,ma):
a=x%i
b=y%i
c=z%i
if a==0 and b==0 and c==0:
ls.append(i)
if ls==[]:
print("无最大公约数")
else:
print(max(ls))