· 

数学系掲示板_約分計算


約分計算は、要するにある数の素因数分解ができればよい。ただ分数の約分(2数の最大公約数の算出)に限定すれば、③ユークリッドの互除法(紀元前3世紀のユークリッド著の『原論(ストイケイア)』)に最後は頼ればよい。但し、その前の下処理として①や②を行っておく。①と②だけで十分対応できればそれでよい。また100以下の25個の素数は知識として知っておく。※素数判定機

①差分して素因数を炙り出す

例えば、3007/3201を約分する場合、分母と分子で数字が近いので、仮に同じ素因数を持つとすれば、差分してもそこに素因数Pは残る。※Pa-Pb=P(a-b)

よって、3201-3007=194となり、194の素因数分解を行う。②の倍数判定法で、194=2*97となり、97が素因数だと知っていればここで終り。

②倍数判定法で除する

7の倍数、11の倍数、13の倍数などの素因数の倍数を知っておくと素数以外で大きな数を無暗に扱うことを避けられる。

③ユークリッドの互除法 ※2数の最大公約数の算出方法

例えば、3007/3201を約分する場合、①の処理をせずとも直接ユークリッドの互除法で最大公約数(両者に共通する最大の素因数)を求められる。

3201の商3007と余194、3007の商194と余97、194の商97と余ゼロ、よって最大公約数は97に決定。

※商と余を出すには、単に差分でよいので、3201-3007=194, 3007-194*15=97, 194-97*2=0となり、最大公約数は97に決定。

3007/3201は、97*31/97*33=97*31/97*11*3となり、約分すると、31/33で完了。