题目:
编写一个程序,求e的值。(直到最后一项小于10-6为止)
e ≈ 1 + 1/1! + 1/2! + 1/3! + … + 1/n!
思路:
优化:在上一次阶乘结果上进行运算,避免重复计算降低效率。
注意:阶乘至少用double存储
实现:
public class Valueofe {
public static void main(String[] args) {
// TODO Auto-generated method stub
int n =1;
double sum = 1;
double fac = 1;
do{
fac = fac*n; //在上一次计算出的阶乘的基础上计算( n! = (n-1)!*n )
sum += 1/fac;
n++;
}while(1/fac >= 1E-6);
System.out.println(sum);
}
}