puts "enter a number"
x = gets.chomp.to_i
y = 0
while x != 1
y += 1
if x % 2 == 0
x = x/2
else
x = x*3 + 1
end
print "#{x} "
end
puts "\nThe number of sequence is #{y+1}"
嗨,如果我鍵入負數或0,我會得到一個無限循環。如果我的號碼是0或負數,我該如何避免進入循環。我的代碼導致無限循環
_Sidenote:_規則thumb:在Ruby中如果你使用while循環,你做錯了。 – mudasobwa
您的情況是多餘的。如果'x <0',則遵循'x!= 1'。 – sawa
@mudasobwa雖然這是真的,當迭代的次數是不確定的,因爲在這個問題中,這是可以接受的。 –