怎么利用java代码计算阶乘?
java程序计算20的阶乘并使用bigdecimal类接收数据,如下所示:;公共类测试{publicstaticvoidmain(string[]args){bigdecimalcnt=newbigdecimal(0)for(inti=1i<=20i){cnt=控制添加(解成(i))//循环计算20内的阶乘}系统输出打印(cnt)}publicstaticbigdecimaljiecheng(intn){if(n==1){returnnewbigdecimal(1)}//multiply()multiplyreturn结城(n-1)。multiply(newbigdecimal(n))}
给出了一个例子来说明算法:
1!2!3n
!=12*(13*(14*(15(1.(1(n-1)*(1n))
但当n=100时,它似乎溢出。因此,有必要实现大数乘法的功能。
#include
voidmain()
{
longsum
intn=100
sum=n
while(n!=1)
{
sum=1
sum*=n-1//使用大数乘法函数替换此处的处理
n-->]printf(%dn“,sum)
}
原文标题:java阶乘的算法 怎么利用java代码计算阶乘?,如若转载,请注明出处:https://www.tzjingsheng.com/wenda/49625.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「豪运号」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。