-4

2 番目の関数で bubblesort を呼び出す 2 つの関数を作成しました。

  def bubblesort(s):
       for i in range(len(s)-1):
                      for j in i:
                           if x[j]>s[j+1]:
                           p=s[j+1]
                           s[j+1]=s[j]
                           s[j]=p
  return s
  def main():
      x=[]
      z=1
      while z<=4:
          y =  int(raw_input("enter your numbers: ")) 
          z +=1
          x.append(y)   
          print "Your input: " + x
          print bubblesort(x)

  raw_input ("press<enter>")

ソートされた出力を印刷しない

4

2 に答える 2

0

機能したコード:

def bubblesort(s):
     p = 0
     for i in range(len(s)-1):
          for j in range(len(s)-1):
             if s[j]>s[j+1]:
               p=s[j+1]
               s[j+1]=s[j]
               s[j]=p
     return s
def main():
  x=[]
  z=1
  while z<=6:
        y =  int(raw_input("enter your numbers: "))
        z +=1
        x.append(y)
        print "Your input: " + str(x)
        print bubblesort(x)

main()
raw_input ("pres<enter>")

しかし、なぜ int 型 'i' を反復できないのかを知る必要があります。「for j in range(len(s)-1)」の代わりに「for j in i」行の i = range(len(s)-1) の場合。

于 2013-10-22T22:11:44.327 に答える