永发信息网

[急!]java 求100阶乘各位数的和 已有答案,求解释!

答案:3  悬赏:0  手机版
解决时间 2021-12-04 14:16
[急!]java 求100阶乘各位数的和 已有答案,求解释!
最佳答案
import java.math.BigDecimal; //导入包
public class DigitFactorial //定义类
{
public static void main(String[] args)
{
BigDecimal big = new BigDecimal(1); //声明一个BigDecimal对象

int i = 1;
while(i <= 100) //在i小于或等于100的时候执行下面的语句
{

big = big.multiply(new BigDecimal(i++)); //每次都用i的阶乘的结果取乘以i+1,得到i+1
//的阶乘,比如:i=1时, //big=1*2 时, big=1*2*3,最后得到100的阶乘
}

String str = big.toString(); //把100的阶乘转换成字符串

System.out.println("Result: " + str); //输出

int sum = 0;
for(i = 0; i < str.length();i++) //当i在0到str.length()之间时执行,也就是遍历//str 的每一个字符
{
sum += Integer.parseInt(String.valueOf(str.charAt(i))); //把每一个字符都换成整数再相加,得到所有数的和
}

System.out.println("Sum is: " + sum); //输出

}
}

BigDecimal和BigInteger用法的区别:
BigDecimal返回的是小数,可以进行四舍五入,用的较多;
BigInteger返回的是整数,用的较少
其他没多少区别
全部回答
可以啊。
BigDecimal是一个用字符串来进行精确计算的类,这个类中加法就是,add();你可以查标准API里面有这个类的详细解释。银行计算浮点就是用这个类。原理很简单,我也写了这个乘法的类,可以计算如五万的阶乘等。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
求解csol大灾变模式boss是蝎子那个,!!!!
去西安旅游持导游证哪些景点免费
临沂郯城离湖南有多远?
今天去看了美国队长3,在看见佩姬的追悼会那
古今的善举小故事
铸铁可以用水性漆吗?
coc十本有几个墙?
太平人寿犹豫期是指工作日的吗?
三星w2016自动重启 找不到手机卡
。。困LOL那OK了路怕啦
请问什么是云手机?夜神云手机怎么样?
F35宝马左边异响
壮观的观的部首是什么
一分钟测试你在异性眼中有多甜,我竟甜力十足
国家投资修建厂房一栋 总造价为400000元已投
推荐资讯
怎样利用digital micrograph对图象进行FFT
上下左右 怎么玩 带手势图片
土豆的价格不比大米低,为什么贫困的地方是用
长城h7的发动机是哪儿生产的
诺百纳净水器的价格
宝马523典雅型车内座位有多长,多宽,多高?
蜜蜂和蝴蝶都在花间飞舞,但一个在创造,一个
大街上,扫二维码给礼品有风险吗?
蚯蚓和白糖混合的功效
未成年人的银行卡突然转入一百万,会被银行调
为什么分手时男生喜欢吻别
大英县国土资源局回马服务所地址有知道的么?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?