小数点の前に常に「0」があるように、科学表記法で数値を出力する必要があります。
たとえば、数値 x = 134.87546 の場合、出力 0.134875E03 NOT 1.348755E02 を生成する必要があります。
誰かがこれを行う方法を知っていますか?
よろしくお願いします -- シラーズ。
小数点の前に常に「0」があるように、科学表記法で数値を出力する必要があります。
たとえば、数値 x = 134.87546 の場合、出力 0.134875E03 NOT 1.348755E02 を生成する必要があります。
誰かがこれを行う方法を知っていますか?
よろしくお願いします -- シラーズ。
int exp = (int)log10(input)+1;
double shifted = input / pow(10.0, exp);
printf("%fE%d", shifted, exp);
int exponent = floor(log10(num)) + 1;
次に、「0.」、小数点なしの数値、「E」、指数の順に出力します。
一般的な出力フォーマット ライブラリであるBoost Format ライブラリを使用して調べることができます。