広告スペース(バナー)
💎Ruby レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 48 / 68
最大公約数・最小公倍数を求める
このレッスンでは、Rubyの組み込みメソッドgcdとlcmを使って最大公約数・最小公倍数を求める方法を学ぶことを目標にします。「Ruby gcd lcm 使い方」で調べている方向けの内容です。
Rubyには整数のメソッドとして.gcd(最大公約数)・.lcm(最小公倍数)が最初から用意されています。内部ではユークリッドの互除法という古代からのアルゴリズムが使われています。
サンプルコードでは、12.gcd(18)で最大公約数を、4.lcm(6)で最小公倍数を、それぞれ1回のメソッド呼び出しだけで求めています。自分でアルゴリズムを実装しなくても、標準ライブラリだけで完結する手軽さに注目してみましょう。
初心者がよくつまずくのが、なぜこの計算がこんなに簡単にできるのかという背景です。自作するより組み込みメソッドを使う方が速く安全で、Rubyの標準ライブラリの充実ぶりがよく分かる例です。仕組みを理解したい場合は、あえて自分で実装してみるのも良い練習になります。
3つ以上の数の最大公約数を求めたい場合は、reduceと組み合わせることで計算できます。数学的な計算処理でも、Rubyの標準ライブラリの充実ぶりが実感できる題材です。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではRubyを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
分数を約分するような、ミニ計算ツールが作れるようになります。
分数を約分するような、ミニ計算ツールが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)