java 程序问题 BigDecimal如何不转化成指数形式

java 程序问题 BigDecimal如何不转化成指数形式,第1张

BigDecimal s=new BigDecimal(04321);

BigDecimal resu=new BigDecimal(1);

for(int i=0;i<20;i++){

resu=resumultiply(s);

}

Systemoutprintln(resustripTrailingZeros()toPlainString());

输出:

0000000051485546410769523333461088309722816989355103538469584536819078372344669296687925011577032261981177960815344404351005221931537855731241753839748672116655664849578355947658989375896199846559724192328123482091071025708759406831692418623701859211014883867392244539899736388670320054589591884371173169296954089443140197881166799395145008783309258181298626999829047735656159813235436840910075731521755159699696652877886586405852983622043075775930755490273653234507475038154594569245843853249171519336862045763879831272103767062419749904382171410416375768642429314394183847087138311467269373236416467834685903492460302189798925836947647730035998024655555247761179862058564791273192018631209756051401338442063588512723796345899479507747157735010650599843880784536326593417875194136068024722851150864463140468567547520031419601530783509898037790706387040699949976652201507633686428809348349909572277221730357318012130647810197334261218719547017121857743632258939923942309334879448254456828779670516051552045270020808414978313024587173478614256227903211993179866112768650054931640625

符合你的要求吗?

有效数字,不计 e 以后的指数

x=2222222e+009 其中 2222222 是 显示的有效数字, double 可以有更多位的有效数字,你可以 增加场宽和小数位 输出 它们。

float 有6-7位有效数字。2222268 这7个数字是有效数字。

有效数字,不计 e 以后的指数,也不计小数点,也不计正负号,也不计e

x=2222268e+004

double的不是书中所写的“15~16位”?而且相差非常多?为什么呢 -- 因为你没有通过给定格式要求来输出全部有效数字。你用的是 默认输出格式。

默认输出格式,印出来的数,并不一定全是有效数字,也不一定印出了 所有有效数字。

#include<iostream>

using namespace std;

int main()         //主函数

{float a,b;        //两实型变量 

 a=25038;         //小数型式赋值

 b=25038e2;       //指数形式赋值就是25038乘10的2次方

 printf("%f",a/b); //用实型输出a/b的值(运行结果1000000)

 system("PAUSE");  //暂停屏幕,以看清运行结果

 return 0;}        //程序结束

var n,i:integer; ans:int64;function js(n:integer):longint;var i:integer;beginjs:=1;for i:=1 to n do js:=jsi;end;beginread(n);for i:=1 to n do inc(ans,js(i)); end

以上就是关于java 程序问题 BigDecimal如何不转化成指数形式全部的内容,包括:java 程序问题 BigDecimal如何不转化成指数形式、C语言中float和double的指数问题。、做C语言程序,设两实型变量a、b,分别用小数、指数形式赋初值250.38后以小数形式输出a\b=值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9698888.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存