有理数をのように1.24234
、または45.314
整数のように124234
、または45314
小数桁数を取得するように変換するにはどうすればよいですか?
3 に答える
1
文字列に変換する
小数点の位置を見つけます。
上記の文字列の長さから、小数点以下の桁数を引きます。
次に、文字列からポイントを取り出します。
于 2012-12-17T22:37:40.463 に答える
0
int i=0;
float a = 1.24234;
for(i; i<20; i++){
float b=pow(10,i);
if((a*b)%10==0)
break;
}
int c = pow(10,i-1);
int result = a*c;
このコードが役立つと思います。
于 2012-12-17T22:42:27.197 に答える
0
番号がWD(Whole.Decimal)の場合
Wを取得するには(int)WDを実行しますDを取得するにはWDを実行できます-(int)WD
これで、整数と小数点が分離されました。Wのx10乗数を計算するには、結果が10未満になるまで、Dを10で除算し続けます。
現在:WxN + D(ここで、Nは10で割った回数です)
注:これは宿題の可能性があると思うので、例としてコードを記述しませんでした。また、非常に長い(つまり、正確なフローティングポイント)を使用している場合、これは保持されず、オーバーフローする可能性があります。このようなものを実装する前に、境界を確認してください。
于 2012-12-17T23:29:33.720 に答える