我试图计算电子商务使用线程的时间尽可能少,我的任务给予用户将传递一个变量与线程的量会用于计算,但我无法让我的多线程正常工作以实现某种结果。我被告知,一个好的计算方法是使用下面的数学表达式:e = sum((3-4k^2)/((2k + 1)!)),其中k =(0;无穷大)。但到目前为止,我只拿到了这个基本的方法:计算使用Java常数e多线程
public class MainClass {
public static long fact(int x) {
long p = 1;
for (int i = 1; i <= x; i++)
p = p * i;
return p;
}
public static void main(String[] args) {
double e = 1;
for (int i = 1; i < 50; i++)
e = e + 1/(double) (fact(i));
System.out.print("e = " + e);
}
}
*“我无法让我的多线程正常工作”*您在哪里尝试使用多线程做些什么? – Tom
在这种情况下,我认为您不会从多线程中获益。更好地使用动态编程方法来计算这些“fact()”值。如果你使用'long'来存储'x!':''log2(49!)= 208.5 ...' – fabian
我没有发布多线程源代码,因为它非常糟糕。我只知道线程的基本知识,如 线程t =新线程(对象) 和 t.start().. –