paiza様の問題集の課題から記事にします。
2 以上の整数N, Kが与えられます。
「Nを 2 倍した数でNを更新する」という操作を何度か繰り返すことを考えます。
このとき, ちょうどある回数 M で N の値は K 以上になります。この時点で操作の繰り返しを終>了することにします。ただし100回を超えることはできません。
Rubyで書いたコードです
#標準入力
input_line = gets
#文字列を「 」で区切って配列に格納する
array1 = input_line.split(' ')
#与えられた数
n = array1[0].to_i
#超えてはいけない数
k = array1[1].to_i
#回数
s = 0
#最大計算できる回数
c = 100
#ループ処理
for i in 1..c
#NがK以上になったらループを抜ける
if n >= k then
break
else
n *= 2
end
# iを変数sに格納する
s = i
end
#結果を表示
puts s
ループ文にして条件を満たしたらループを抜けるようにします。