• ベストアンサー

最小公倍数をPHPで求めるには

PHPで最小公倍数を求めるプログラムを作りたいのですが、 アルゴリズムをお教えください。 尚、PHPを実行するレンタルサーバーの関係で gmp関数群は使えません。

質問者が選んだベストアンサー

  • ベストアンサー
noname#111181
noname#111181
回答No.2

面倒なのでソースコードを書きました。 エラー処理はしていません。 --------------------- <?php //最大公倍数を求める(ユークリッドの互除法) function gcd($m, $n) { while ($m % $n != 0) { $temp = n; $n = $m % $n; $m = $temp; } return $n; } //最小公倍数を求める function lcm($m, $n) { return $m * $n / gcd($m, $n); } //サンプル $m = 27; $n = 18; $l = lcm($m, $n); echo "$m と $n の最小公倍数は $l です."; ?>

coogon21
質問者

お礼

ご回答ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • mtaka2
  • ベストアンサー率73% (867/1179)
回答No.1

2数をかけてから最大公約数で割ると、最小公倍数になります。 PHPではありませんが、 http://www12.plala.or.jp/dokugaku/algo/lcm.html なんかが参考になるでしょう。 最大公約数を求めるアルゴリズム、ユークリッドの互除法について 詳しく知りたい場合は、 http://ja.wikipedia.org/wiki/%E3%83%A6%E3%83%BC%E3%82%AF%E3%83%AA%E3%83%83%E3%83%89%E3%81%AE%E4%BA%92%E9%99%A4%E6%B3%95 をどうぞ。

coogon21
質問者

お礼

ご回答ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 最小公倍数

    ①「-3」と「-4」の最小公倍数はいくつですか。 ②「3」と「-4」の最小公倍数はいくつですか。

  • 最小公倍数

    3と5と7の最小公倍数は3×5×7=105だと思うんですけど 4と6の最小公倍数は4×6=24じゃなくて12ですよね。 この二つの違いは何でしょうか? 集合をやってて気になったんで回答お願いします。

  • 最小公倍数の教え方

    小学5年生の息子に最小公倍数を教えたいのですが、最小公倍数の概念を教えるにあたって、息子にとって興味を持てるような教え方をしたいのですが、ぴったりの例を考えるのが難しく、困っています。 こういう時に最小公倍数を使うと便利、という例があればぜひお教えいただきたいです。 また最大公約数の概念を教えるにあたっても良い例があればお教えください。 どちらか一方でも構いません。 どうぞよろしくお願いいたします。

  • すみませんが、最小公倍数をよく理かいできないのでおしえてください。3と

    すみませんが、最小公倍数をよく理かいできないのでおしえてください。3と9の最小公倍数は、9でいいんですか?後、2と5の最小公倍数は、10でいいんですか?

  • 最小公倍数の出し方

    先ほど分数の方程式 X/60+X/50=33で最小公倍数300を使用し回答されていましたが、 この最小公倍数の出し方も教えて下さい。 詳細にお願い致します。

  • 最小公倍数

    次の整式の組の最小公倍数を求めよ。 4(a^2)bc^3 、 6(a^3)(b^2)cd 私の解答は (12a^3)(b^2)(c^3)  としましたが、問題集の解答には (12a^3)(b^2)(c^3)d になっていました。 私が(12a^3)(b^2)(c^3) と解答した理由は参考書に、「2つ以上の整式に共通な倍数を公倍数といい、そのうちで次数が最小のものを最小公倍数という。」と書いてありdは2つ以上の整式に共通ではないと思ったからです。 なぜdも最小公倍数に含まれているのか教えてください。

  • Fotranで最小公倍数

    この場をお借りして質問させていただきます。 Fortranで、2つの整数を入力して最小公倍数を求めたいのですが、基本事項過ぎるのか調べても出てこずいまいち分からないでいます。 素数による割り算を繰り返して、結果として出てくる数値を掛け合わせる、というアルゴリズムらしいのですが…。 どなたか教えていただけるとありがたいです。よろしくお願いします。

  • 最小公倍数

    80と75もしくは16と15の最小公倍数を教えてください

  • 2,3,4,5,6の最小公倍数の求め方

    2,3,4,5,6の最小公倍数の求め方がわかりません。

  • 4:8:9の最小公倍数を教えて

    4:8:9の3つがつながる最小公倍数を 急いで教えて下さい。

このQ&Aのポイント
  • 滞在型の旅行先で食べ物が合わずに毎日体調を崩している
  • 語学の勉強もまったく手つかずで悩んでいる
  • ペットを預けてきたこともあり、辛い気持ちになっている
回答を見る