永发信息网

如何运用多线程编写阶乘相加问题

答案:4  悬赏:0  手机版
解决时间 2021-04-24 14:19

运用Java多线程实现阶乘相加问题,比如:1!+2!+3!+。。。。。+n!=

要求输出格式也是向上面的那样

最佳答案

这种题的意思是用N个线程分别计算1!、2!、……N!


还是只开一个线程计算1!+2!+3!+。。。。。+n!


如果开N个线程,那出这个题的人脑子有问题,线程开这么多也很费资源的。


第二种在线程里写个递归函数,依次计算就好。


建议你自己查查递归写法,这种题目自己做多了才会有长进,老是看现成的表面上也许长了知识,但是动手能力成长有限。

全部回答

//运用数组求更大的阶乘 public class factorial { static long[] tabal=new long[21]; static {tabal[0]=1;} static int last=0; public static long jisuan(int x){ if(x>tabal.length){ System.out.println("The X is too large !"); } if(x<0) System.out.print("The X must >=0 !"); while(last<x){ tabal[last+1]=tabal[last]*(last+1); last++; } return tabal[last]; } public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("The factorial of the X is "+jisuan(20)); }

} //运用BigInteger计算更大更大的阶乘 import java.math.BigInteger; import java.util.*; public class factorial { protected static ArrayList table = new ArrayList(); static{ table.add(BigInteger.valueOf(1));} public static synchronized BigInteger jisuan(int x){ for(int size=table.size();size<=x;size++){ BigInteger lastfact= (BigInteger)table.get(size-1); BigInteger nextfact= lastfact.multiply(BigInteger.valueOf(size)); table.add(nextfact); } return (BigInteger) table.get(x); }

public static void main(String[] args) { // TODO Auto-generated method stub System.out.println(jisuan(1480)); }

}

如果是多线程计算,在拆解大运算公式的时候确实有必要,但是得用动态规划的思路进行,并且得注意缓存已计算过的公式结果

这个应该不需要递归函数吧?

long sum=1;

long long summ = 0

for(int i=1;i<=n;i++)

for(int j=1;j<=i;j++)

{ sum = j*sum

}

summ = sum+summ;

} 这个算法就应该可以了 这个跟怎么线程扯上关系了 扯淡 如果开N个线程只能说脑残

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
无法转载日志?
穿紧内衣造成乳癌,要是改过来穿合适的乳癌会
天堂下工区我想知道这个在什么地方
PPC没有中文,要怎么才能添加
我的QQ不让登陆了,说是异常关闭错误,怎么办
野蛮静儿的QQ空间点击率为什么那么高?
假如迩在专卖书店买了本书,时间囿一个多月了
微生物实验室设备有哪些?
广西一区剑魂攻速套是什么?多少钱?有人卖给
谁能教我魔兽世界怎么玩?
梦幻问区RT
有谁知道这个视频的背景音乐是什么?
2010年广州市区最低的工资是多少?
为什么我会感到空虚,寂寞,感觉这个人生对我
我月经有两年没来了,也吃了很多中药就是没效
推荐资讯
腰背酸痛原因
红豆生活馆在哪里啊,我有事要去这个地方
我是强迫症还是变态
YY多开器开了之后网站却打不开了
帮忙写一篇以“理解”为话题的作文
湖北武汉有跳墨尔本曳步舞的么?
这个红色的果实是什么啊?附图
摩托罗拉A1600的导航显示未绑定设备怎么办
大漠户外在哪里啊,我有事要去这个地方
猫不吃猫粮怎么办?
过去你的爱人你该去恨他(她)还是祝福他(她
怎样才可以加入 游戏人生
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?