2 で何回割れる?
#お題
整数 N が与えられます。
N が何回 2 で割れるかを求め、出力してください。
#入力
N
・ 1 行で整数 N が与えられます。
#出力
N が何回 2 で割れるかを求め、出力してください。
#コード
a = int(input())
cnt = 0
ans = a
while ans % 2 == 0:
ans = ans / 2
cnt += 1
print(cnt)
#参考
<別解>
N = int(input())
div_count = 0
while True:
if N % 2 == 0:
N //= 2
div_count += 1
else:
break
print(div_count)
- Python の場合、
While True:
と記述することで永遠にループを回すことができます。 - N が 2 で割れなくなった場合に
break
することで無限ループからブレイクするようにしましょう。