タイトルにあるように、複数桁の double を、それぞれ 4 桁を含む複数の部分に分割したいと考えています。
double を最も近い整数に丸めたので、小数部はありません。残っているのは、最大の long long 整数をはるかに超える、非常に長い double です。
整数の部分をいくつかの 4 桁の部分に分割する必要があります。これは、整数の場合は非常に単純です。while ステートメントは次のようになります。
unsigned long long int IntegerWithSeveralParts;
unsigned short int i = 0;
unsigned int Parts[10];
while ( IntegerWithSeveralParts )
{
Parts[i] = IntegerWithSeveralParts % 10000;
IntegerWithSeveralParts /= 10000;
++ i;
}
はい、部品の順序が逆であることは知っていますが、ベクトルで修正できます。問題は、float と double に対してモジュラーを実行できないことです。これは私にとって非常に大きな問題です。それらを文字列に変換し、そこから分割することはできますが、ストリームの使用が含まれるため、かなり時間がかかります。
とにかく他にそれをすることはありますか?