Java 求出 1+1/2!+1/3!+…+1/20!的和
3!表示是3的阶乘,也就是3*2*1
double y = 1,x=1;
double sum = 0;
while (y <= 20){ //while语句判断约束y在20以下
x*=y;
sum += 1/x; // 算出总和,X就代表是i!
y++;
/* 将i!看成一个整体;
每次都将i加上(i-1)+...,在用1除去i!
用sum加上每次“1/i”的和
*/
}
System.out.println(sum);
求出1+2+n<8888,n的最大值
int x = 1;
for (int sum = 0; sum < 8888; x++) {
sum += x;
}
//for循环停止时sum已经比8888大了,所以x是多了一次+1,最后结果减一就是正确结果
System.out.println(x-1);