-3
def sequence(n):
    while n != 1:
        print n,
        if n%2 == 0:        # n is even
           n = n/2
      else:               # n is odd
            n = n*3+1


sequence(6)
6 3 10 5 16 8 4 2

ここで出力に 1 が含まれていないのはなぜですか?

4

3 に答える 3

1

たとえば、<=またはを使用してみてください。それはあなたが必要とすることをするはずです:)>=while n >= 1

于 2012-05-29T22:31:55.737 に答える
0

if の中断に while ループが設定されていますn == 1n > 0またはを実行してみてくださいn >= 1

于 2012-05-29T22:34:01.210 に答える
0
while n != 1:
       print n

n の値が 1 になると、ループに入らないため、「n」を出力できません。

于 2012-05-29T22:34:07.297 に答える