(4) 分别用 while 和 for 循环计算 1+1/2!+1/3!+1/4!+…
时间: 2023-11-15 14:04:56 浏览: 44
可以使用while和for循环来计算1+1/2!+1/3!+1/4!+…的值。
以下是两种实现方式:
1.使用while循环实现:
public class Test {
public static void main(String[] args) {
int i = 1;
double sum = 0, a = 1;
while (a > 0) {
sum += a;
i++;
a = 1.0 / (i - 1) / a;
}
System.out.println(sum);
}
}
2.使用for循环实现:
public class Test {
public static void main(String[] args) {
double sum = 0, a = 1;
for (int i = 1; a > 0; i++) {
sum += a;
a = 1.0 / i / a;
}
System.out.println(sum);
}
}
相关问题
java分别用do-while和for循环计算1+1/2!+1/3!+1/4! +…+1/20!
以下是Java分别使用do-while和for循环计算1+1/2!+1/3!+1/4! +…+1/20!的代码实现:
1.使用for循环实现:
```java
public class Test {
public static void main(String args[]){
double sum=0;
int a = 1;
for(int i = 1; i <= 20;i++){
a *= i;
sum += 1.0/a;
}
System.out.println(sum);
}
}
```
2.使用do-while循环实现:
```java
public class Test {
public static void main(String args[]){
double sum=0;
int a = 1, i = 1;
do{
a *= i;
sum += 1.0/a;
i++;
}while(i <= 20);
System.out.println(sum);
}
}
```
java分别用while循环和for循环计算1+1/2!+1/3!+1/4!+……的前20项和
使用while循环计算1+1/2!+1/3!+1/4!+……的前20项和的Java代码如下:
```java
public class Main {
public static void main(String[] args) {
int n = 1;
double sum = 0, factorial = 1;
while (n <= 20) {
factorial *= n;
sum += 1 / factorial;
n++;
}
System.out.println("前20项和为:" + sum);
}
}
```
使用for循环计算1+1/2!+1/3!+1/4!+……的前20项和的Java代码如下:
```java
public class Main {
public static void main(String[] args) {
double sum = 0, factorial = 1;
for (int n = 1; n <= 20; n++) {
factorial *= n;
sum += 1 / factorial;
}
System.out.println("前20项和为:" + sum);
}
}
```
这两段代码的输出结果都为:前20项和为:1.7182818284590455