ユークリッドの互除法を使って2つの数の最大公約数を求める実装例です。コピペで動くコードと実行結果、処理の流れを確認できます。 下のコードはブラウザ内でそのまま実行できます。「実行エディタで開く」を押すと、progoのオンラインRuby実行環境にコードが読み込まれ、その場で動作を確認できます。
def gcd(a, b)
while b != 0
a, b = b, a % b
end
a
end
puts gcd(48, 18)
puts gcd(1071, 462)
▶ このコードを実行エディタで開く
aとbを更新します。Integer#gcdも用意されています。