質問
python3で、奇数には1を足して偶数は2で割るよくあるプログラムを組んだのですが、なぜか小数が出力されます。この理由と解消法を教えて頂きたいです。
ソースコード
python3
1x = int(input()) 2while(x > 1): 3 if x % 2 == 0: 4 x /= 2 5 print(x) 6 else: 7 x += 1 8 print(x) 9
###101を入力した例
101 102 51.0 52.0 26.0 13.0 14.0 7.0 8.0 4.0 2.0 1.0
補足情報(FW/ツールのバージョンなど)
Python 3.6.3
IDLE(Python3.6 32-bit)
ご回答ありがとうございました!無事うまく挙動し、助かりました。
参考にした記事がどうやらpython2時点のもので、思いもよらない部分で嵌まってしまったようです。
回答2件
あなたの回答
tips
プレビュー