问题是:
Z=(89x-y) /10
X,Y和Z可能有504种组合,但只有一种是正确的
这是我写的代码:
for x in range (1,10):
for y in range (1,10):
for z in range (1,10):
if x=y or x=z or y=z :
break
print (x, y, z)
答案 0 :(得分:1)
这是您可以使用的代码。不需要3个循环;因为一个变量取决于其他两个变量。
>>> for i in range(1,10):
... for j in range(1,10):
... v = (89*i - j)/10
... if v == int(v) and 1<= v<= 9: print(i,j,int(v))
...
1 9 8
答案 1 :(得分:0)
在您的代码中,我看不到您在哪里使用z =(89x-y)/ 10关系,因此我们不应该期望您的代码能够找到解决方案。另外,要检查是否相等,请使用==而不是=。
除了使用另一个解决方案中所示的两个for循环外,如果我们想使用数学来解决问题,请注意,我们有
89x-y = 10z
89x = 10z + y
由于我们要求解一个取值范围为1到9的单位解决方案,因此右手边小于100,因此x必须为1。z代表十位值,y必须为十进制值。一个地方的价值。
因此x = 1,y = 9,z = 8。