開平法
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/12/13 03:32 UTC 版)
![]() |
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。2016年7月)
( |
開平法(かいへいほう、英: extraction of square root)とは、正の数の平方根の小数表示を求めていくアルゴリズムである。開平や開平算、開平計算とも。平方根を求めることを開平するという。開法の一種。
開平法の原理
与えられた正の数の正の平方根の小数表示を求めるために、ここではまず漸化式を立てて、一般的な求値法を求める。そして、求値の明確化のために、開平法と呼ばれる筆算の原理を導出する。以下は十進法表示の場合だが、他の位取り記数法でも同様な計算で求められる。ここで述べるのと基本的には同じ方法で、立方根を求める開立法や、もっと一般に n 乗根を求めることも可能である。
問題の定式化
与えられた √x (x > 0) に対し、10k の位 ak (k ≤ n) を求める:
am は 10m+1pm + 10mam ≤ √x を満たす最大の am、すなわち
- (20pm + am)am ≤ 10−2mx − 100pm2 … (1)
を満たす最大の am である。これを見つける。
- am の値は 0 から 9 までの 10 通りなので、順に試していけば am は求まる。
-
m = n のとき、pn = 0 より
- an2 ≤ 10−2nx
-
m < n のとき、
- 20pmam ≤ (20pm + am)am ≤ 10−2mx − 100pm2
pm ≠ 0 より
開平法
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/12/23 00:17 UTC 版)
籌算による開平計算のアルゴリズムは開方術として『九章算術』に記載されており、いくらか用語は異なるが『孫子算経』にも記述がある。 『孫子算経』中巻第19問に平方根の近似値 234567 ≈ 484 311 968 {\displaystyle {\sqrt {234567}}\approx 484{\tfrac {311}{968}}} を求める問題がある。 今有積二十三萬四千五百六十七步。問:為方幾何?答曰:四百八十四步九百六十 八分步之三百一十一。 孫子算經. - ウィキソース. この計算アルゴリズムを以下に示す。 (1) 算盤の2段目(実(實))に数234567を作る。4段目(下法)の10000の位に1を置く。 商 実 方法 下法 (2) 平方根の1桁までを400と見積もり、1段目(商)の100の位に4を置く。商と下方の積 1 × 4 = 4 を取り、3段目(方法)に書く。 商 実 方法 下法 (3) 実の「23」から商と方法の積 4 × 4 = 16 を差し引き、 23 − 16 = 7 を残す。 商 実 方法 下法 (4) 方法の4を2倍にして、1桁ぶん右に動かす(縦式を横式に変える)。次に下法を2桁ぶん右に動かす。 商 実 方法 下法 (5) 平方根の2桁目を8と見積もり、商の10の位に8を置く。次に、今加わった桁の「8」と下方1との積を取り、方法に加える。 商 実 方法 下法 (6) 方法第1桁の「8」に第2桁の「8」をかけ、その積を実の「74」から差し引く。その結果 74 − 8 × 8 = 10 が実に残る。 商 実 方法 下法 (7) 次に、方法第2桁の「8」を自乗したものを、実の「105」から差し引く。その結果 105 − 8 × 8 = 41 が実に残る。 商 実 方法 下法 (8) 方法88の最終桁「8」を2倍して、最終桁を除いた「80」に加える。方法は 80 + 8 × 2 = 96 となる。 商 実 方法 下法 (9) 方法を右に1桁ぶん移す。次に、下法を右に2桁ぶん移す。 商 実 方法 下法 (10) 平方根の3桁目を4と見積もり、商に記す。次に、今加わった4と下方1との積を取り、方法に加えて964とする。 商 実 方法 下法 (11) 方法の第1桁の9に第3桁の4をかけて、その積を実の「41」から差し引く。その結果 41 − 9 × 4 = 5 が実に残る。 商 実 方法 下法 (12) 続いて、方法の第2桁の6に第3桁の4をかけて、その積を実の「56」から差し引く。その結果 56 − 6 × 4 = 32 が実に残る。 商 実 方法 下法 (13) さらに、方法の第3桁の4を自乗したものを実の「27」から差し引く。その結果 27 − 4 × 4 = 11 が実に残る。 商 実 方法 下法 (14) 方法の第3桁の4を2倍して、第3桁を除いた960に加え、968とする。 商 実 方法 下法 最後に残った商の484、実の311、方法の968は、求める平方根 234567 ≈ 484 311 968 {\displaystyle {\sqrt {234567}}\approx 484{\tfrac {311}{968}}} を表している。 北宋の数学者賈憲(中国語版)は、開平計算の途中で「方法」を2倍する代わりに、効果は変わらないが「商」の1桁を「方法」に加えるアルゴリズムを発展させた。
※この「開平法」の解説は、「籌算」の解説の一部です。
「開平法」を含む「籌算」の記事については、「籌算」の概要を参照ください。
- 開平法のページへのリンク