|
「コンピュータでπを小数1億桁まで求めた」などのように、とんでもない桁数の話がでます。それで、大きい桁数の計算の基本・プログラムの基本を掲載いたします。たとえば、1000桁のたし算をする方法です。
通常、プログラムで数字を扱う場合、だいたいは最高で15桁くらいまでしか扱えなくて、桁数を越えてしまうとオーバーフローのエラーになってしまいます。そこで、それなりのテクニックを使ってエラーを回避する必要があります。
小学生に戻って、たとえば3278*782を計算してみます
これを応用して、100進法で計算してみます。 1万進法のたし算のプログラムを説明します。 2つの数AとBがあって、A+Bを計算してみます。A、Bそれぞれ1000桁を4桁ずつ区切って、 A(250)にはAの997桁目から1000桁目 ・ ・ A(2)にはAの5桁目から8桁目 A(1)にはAの1桁目から4桁目 同様に、B(250) B(2) B(1)にBから入れます。 計算結果は、C(250) C(2) C(1)に入れることにします。 1000桁のオーバー分は切り捨てとします。 For I = 1 to 250 C(I) = 0 Next I For I = 1 to 250 C(I) = C(I) + A(I) + B(I) -------------------4桁ごとに加算 IF I = 250 Then C(I) = C(I) - Int(C(I) / 10000) * 10000 Exit For End if C(I + 1) = C(I + 1) + Int(C(I) / 10000) --------5桁目以降は繰り上げ C(I) = C(I) - Int(C(I) / 10000) * 10000 --------10000で割ったときの余り Next Iその他、ひき算・かけ算・わり算・小数のたし算等も、小学生の計算方法の 「繰り上げ」を応用すればできます。 そして、√(ルート)・Sin・Cos・Tan等については、高校で習う テーラー展開で計算できます。 |
「こだわりハウス」写真館| 数学公式集| ピンポイントストリートビュー| FaceBook| Excel Vba テクニック集| Excel 計算式解析・他解析| 富山の建築家| Excel 計算式解析・他解析| 積分の定義・積分の記号の意味の研究| |