需要一个伪代码来从键盘输入一系列数字,并确保它们按升序排列,即使它们不需要连续。数字可以是正数或负数,并以虚拟值 9999 结尾。
这是我编写的python代码,它工作正常,
li=[]
num=int(raw_input("Enter number"))
while num!=9999:
li.append(num)
num=int(raw_input("Enter number"))
new=0
print "Entered sequence is "
print li
j=0
while j<len(li):
for i in range(len(li)-1):
value1=li[i]
value2=li[i+1]
if (value1>value2):
new=li[i]
li[i]=li[i+1]
li[i+1]=new
j+=1
print "ordered list is "
print li
但是我把这个写成算法有问题。
这是我尝试过的算法:
Main
li list
num integer
new=0,j=0 integer
Begin
num=INPUT num.
while num<>9999.
append num to li.
num=INPUT num.
ENDWHILE.
DISSPLAY "Entered Sequence is".
OUTPUT li.
while j<(length of li).
FOR i=0 to (length of li-2).
value1=i th element of li
value2=(i+1) th element of li
if (value1>value2):
new=value1
value1=value2
value2=new
ENDIF
END FOR
j=j+1
ENDWHILE
DISPLAY "ORDERED LIST IS"
DISPLAY li
END
END
我可以在算法中使用“列表”吗,因为我认为“列表”对象不会出现在每种编程语言中。算法不应该是通用代码。同样的方式是允许在编写算法时使用数组
可以说“li 中的 value1=ith 元素”吗?
以及如何表明我将从键盘输入的值分配给变量“num”