kotonoha_pcg@気ままに雑記

kotonoha_pcgが気分次第で様々書き置きます.dlang関係他:http://kotonoha-pcg.hatenadiary.com

GCD / LCM

 昨日書いた記事の続きかなんかだと思ってください.LCMの求め方についての補足記事です.

GCD

 こちらは昨日の記事でも少し触れたが,これを求めることで最小公倍数(=LCM)が求められることになる.GCD=二つ以上の正の整数が与えられた時,それぞれに共通した公約数の中で最大となるもののことを指す.LCM=二つ以上の正の整数が与えられた時,それぞれに共通な公倍数の中で最小のもののことを指している.なお,最「小」公約数と最「大」公倍数は有り得ない.存在してはいるが,前者は必ず1になり,後者はほぼ無限にあることが自明でありあまり意味が無いからである.

どうやって最小公倍数を求めるか

 本題の最小公倍数の求め方(の式)ですが,次のようになります.

              LCM=m*n/GCD

このとき,m,nは与えられた二数で,これを最大公約数で除算していることになります.例えば,二数30,42が与えられたとします.このときのGCDは6であり,LCMは30*42/6=210となり,LCMが確かに求められていることになります.

 以上が今回書きたかったことになります.もともとこういった数学よりも算数染みたのは嫌いではないのですがイメージしにくいので,理屈を覚えるまではすごく苦しみました(学校の教員に聞いて解説を貰っても分からない時があった).こういったものも含めて深く考えて解くようにしたいと思います.