我是编程的新手,我正在尝试创建一个程序,它将采用3个随机数XY和Z,并使用Min,Max函数和变量(tmp)将它们按升序X排序,Z最高。 )
我知道我需要使用一种特殊的策略,首先影响(X,Y)对然后(Y,Z)然后再次影响(X,Y),但我无法掌握逻辑。
我到目前为止最接近的是......
y=min(y,z)
x=min(x,y)
tmp=max(y,z)
z=tmp
tmp=max(x,y)
y=tmp
x=min(x,y)
tmp=max(x,y)
y=tmp
我尝试了很多不同的组合,但似乎问题是UNSOLVABLE可以帮助其他人吗?
答案 0 :(得分:1)
你需要先对X,Y对进行排序
tmp=min(x,y)
y=max(x,y)
x=tmp
然后对Y,Z对进行排序
tmp = min(y,z)
z=max(y,z)
y=tmp
然后,使用X,Y对(如果原始Z是最低值......
tmp=min(x,y)
y=max(x,y)
x=tmp
如果您提到的命令是网站上唯一可用的命令,并且您只能尝试使用每个命令:
# Sort X,Y pair
tmp=max(x,y)
x=min(x,y)
y=tmp
# Sort Y,Z pair
tmp=max(y,z)
y=min(y,z)
z=tmp
# Sort X,Y pair again.
tmp=max(x,y)
x=min(x,y)
y=tmp
希望有所帮助。
答案 1 :(得分:0)
我不确定我是否正确理解了你的问题,但你是在纠正你的变量。或者你是否试图通过限制只使用min()和max()函数来解决一些功课?
使用列表怎么样?
tmp = [x, y, z]
tmp.sort()
x, y, z = tmp