百五減算

百五減算（ひゃくごげんざん）は、未知の数（厳密には 0 ～ 104 の整数）を 3, 5, 7 でそれぞれ割った余りから元の数を求める和算の一つ。
3 で割った余りには 70、5 で割った余りには 21、7 で割った余りには 15 をかけた合計から 105 未満になるまで繰り返し 105 を引く（つまり 105 で割った余りを求める）もの。
例.
以下に百五減算を利用して相手の年齢を当てるゲームを示す。これは百五減算を利用した遊びとして典型的なものである。
「あなたの年齢を 3 で割った余りを教えて下さい」と聞いて、例えば「 1 です」という答えを得る。同様に 5 と 7 で割った余りも尋ねてそれぞれ 4 , 5 であると教えてもらったとする。
そこで素早く 1 × 70 + 4 × 21 + 5 × 15 = 229 を計算し、229から105を引けるだけ引いていくと 229 - 105 = 124 , 124 - 105 = 19 となり、余りを聞いただけで「あなたの年齢は 19 歳ですね」と言い当てられるというわけである。
もちろんこの計算だけでは124歳や229歳である可能性もあるのだが、19歳か124歳かは相手を見ればすぐにわかるので、人間の年齢を当てるには十分である。
一般解.
3で割った余りを"a"、5で割った余りを"b"、7で割った余りを"c"とするとき、解"x"は、合同式を用いて
　　　　"x" ≡ 70"a" + 21"b" + 15"c" (mod 105)
と表される。
解から105を引いた数もまた解になるので、70から105を引いて 70 - 105 = -35 として、別解
　　　　"x" ≡ -35"a" + 21"b" + 15"c" (mod 105)
を得る。
なお、余りを知る数が3、5、7でなくても、どの2つをとっても互いに素となるような数の組み合わせであれば、中国剰余定理によりこのような合同式を導くことができる。
原文.
吉田 1977から問題と回答の原文を引用する。
問題.
第十三　百五げんといふ事
▲ばかりをきゝてかづを云事なり。七づゝ時、二つ残ると云。又五つひく時、一つ残ると云。又三づゝ引時、二つ残ると云時に、此ばかりをて惣数を知る。
回答.
惣数八十六あるといふなり。
　七づゝ引時の半一つを、十五づゝのさん用に、三十とおき、又五づゝ引時の半一つを、二十一と入て。又三づゝの時のを、一つを七十づゝのさん用にして百四十と入て、三口百九十一有時、百にあまる時には百五はらい、のこり八十六あるといふなり。