ーおもしろいかな算数(16) 「孫子算経」(セミナー通信 2021年11月号)

律令時代からの算術の教科書「孫子算経」から2題 

「?」

今有孕婦行年二十九。難九月、未知所生。
 答曰、生男。
 術曰、置四十九、加難月、減行年。所餘、以天除一、地除二、人除三、四時除四、
 五行除五、六律除六、七星除七、八風除八、九州除九。其不盡者、竒則爲男、耦則爲女。

  今29歳の妊婦がいて、妊娠して苦しむこと9か月になる。まだ生まれる子の性別は分からない。

 答 男が生まれる。

 解法
 49を置き、苦しむ月9を加え、行年の29を引く。
 その余り29から、天の1を引き、地の2を引き、人の3を引き、四時の4を引き、五行の5を引き、六律の6を引き、七星の7を引き、八風の8を引き、九州(中国全域の古称)の9を引く。
 その余りが奇数ならば(生まれる子は)男とし、偶数ならば女とする。

 中国の数には男と女の区別がありました。奇数は男、偶数は女でした。
 (49+9-29)-1-2-3-4-5-6-7=1 ここまでしか引けません。余りが1になったので男ということのようです。

 男が生まれるか女が生まれるかを算術で占っています。
 古代、「数が使える者」=「呪術・占星を行うもの」だったということでしょうか。

 次は高校数学の「剰余定理」です。

今有物、不知其数。三・三数之、剰二。五・五数之、剰三。七・七数之、剰二。
 問、物幾何
 答曰、二十三。
 術曰、『三・三数之、剰二』、置一百四十。『五・五数之、剰三』、置六十三。『七・七数之、剰二』、置三十。并之、得二百三十三。以二百一十減之、即得。凡、三・三数之、剰一、則置七十。五・五数之、剰一、則置二十一。七・七数之、剰一、則置十五。一百六以上、以一百五減之、即得。

  今物が有るが、その数はわからない。3つずつにして物を数えると、2余る。5で割ると、3余る。7で割ると、2余る。物はいくつあるか?

 答 二十三。

 解法
 3で割ると、2余る数として、140と置く。
 5で割ると、3余る数として、63と置く。7で割ると、2余る数として、30と置く。
 これらを足し合わせて、233を得る。これから210を引いて、答えを得る。
 一般に、3つずつにして物を数え、1余ると、その度に70と置く。
 5で割った余りに21をかける。
 7で割った余りに15をかける。
 106以上ならば、105を引くことで、答えを得る。

 *210を引くというのは 3×5×7=105 233からこの105を1回引いて128、また105を引いて23が最小の答えということでです。

 aは5でも 7でも割り切れるが、3で割ると2余る数、
 bは3でも7でも割り切れるが、5で割ると3余る数、
 cは3でも5でも割り切れるが、7で割ると2余る数とします。

 上の解法の140がaに当たり、63がbに当たり、30がcに当たります。

 aの場合、140を素因数分解すると5×7×22です。5×7が入っているので、5でも7でも割り切れます。

 ここでM=a+b+c という数字を作ってみますと、Mを3で割ると2余り、5で割ると3余り、7で割ると2余ります。従って140+63+30=233 は確かに条件を満たす数ですが、そのような数は105おきに無限に存在するということを述べているのが、中国式剰余定理です。

 ガウスが考案した合同式を使うと次のようになります。

 合同式とは137≡5≡2(mod 3) 137と5と2は3で割ると余りが同じになる。というふうに使います。

x ≡ 2 (mod 3) ←xは3で割ると2余る

x ≡ 3 (mod 5) ←xは5で割ると3余る

x ≡ 2 (mod 7) ←xは7で割ると2余る

を同時に満たす整数 x を求める。まず、1番目の式より x = 3m1 + 2 (m1 ∈ Z) と表せる。(Zは整数全体の集合)これを2番目の式に代入し

m1 +2 ≡ 3 (mod 5)

両辺から2 を引くと、

m1 ≡ 1 (mod 5)

この式の両辺に 2 をかけると、(左辺)= 6m1 = 5m1 + m1 ≡ m1 (mod 5)

(右辺)= 2 (mod 5)なので

m1 ≡ 2 (mod 5) となる

 したがって、m1 = 5m2 + 2 (m2 ∈ Z) と表せ、これにより x = 15m2 + 8 を得る。更にこれを連立合同式の3番目の式に代入すると、

15m2 + 8 ≡ 2 (mod 7)となる。

この式の両辺から 8 を引き、左辺=15m2 = 14m2 + m2 ≡ m2 (mod 7)

右辺=-6(mod 7)なので

m2 ≡ −6 (mod 7).

更にこれは、−6 ≡ 1 (mod 7) より

m2 ≡ 1 (mod 7)

と書き直せるので、m2 = 7m3 + 1 (m3 ∈ Z) と表せ、これにより x = 105m3 + 23 を得る。すなわち、

x ≡ 23 (mod 105)となり23が答えになります。

ユークリッドの互除法を使って解くこともできます。高校生はぜひ解いてみてください。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください