Delphiに組み込まれているメソッドを使用して、多数(10 ^ 400を超える)で作業できますか?
3 に答える
組み込みではありませんが、MPArithを調べて任意精度の計算を行うことをお勧めします。
SourceForgeにはDelphiBigIntライブラリもあります。私はそれを試していませんが、完全を期すために含めます。
Delphi の演算子のオーバーロードを使用して、独自の多数のルーチンを実装できます。
たとえば、足し算、引き算、掛け算、割り算です。
Intel は、近い将来に登場する最新のチップ設計で、乗算およびおそらく除算用の新しい命令も追加しました。
これらの命令の 1 つが呼び出されます: mulx
Intel は、乗算も高速化できる複数のキャリー ストリームについて言及しています。
x86 には既にボロー付きの減算、キャリー付きの加算があったため、これらの新しい命令は、長い乗算や除算などに対して多かれ少なかれ同じことを行います...乗算を行うには 2 つの方法があり、明らかに両方を使用することでこれが可能になります。
将来、Delphi はおそらくこれらの新しい命令もサポートし、このようなプログラミングをさらに興味深いものにする可能性があります。
今のところ、これらの 4 つの基本的な操作によって、どこかへ行くことになるかもしれません。
それはあなたが何をしたいかによって少し異なります..どんな種類の数学ですか?add/sub/mul/div のような基本的な計算
または余弦、正弦、正接などのより複雑な数学、およびその他のあらゆる種類の数学機能。
私が知る限り、演算子のオーバーロードはレコードで使用できます...クラスにも追加された可能性があることを漠然と覚えていますが、今のところそれについては少し考えてください。
演算子のオーバーロードには、型間の変換時にバグがありました...しかし、それは後の Delphi バージョンで解決されているので、うまくいくはずです。