分别用do while和for循环计算1到1/20的阶乘之和
时间: 2024-05-05 10:15:03 浏览: 16
使用do while循环计算1到1/20的阶乘之和:
```
double sum = 0;
int i = 1;
do {
double factorial = 1;
for (int j = 1; j <= i; j++) {
factorial *= j;
}
sum += factorial;
i++;
} while (i <= 20);
System.out.println("1到1/20的阶乘之和为:" + sum);
```
使用for循环计算1到1/20的阶乘之和:
```
double sum = 0;
for (int i = 1; i <= 20; i++) {
double factorial = 1;
for (int j = 1; j <= i; j++) {
factorial *= j;
}
sum += factorial;
}
System.out.println("1到1/20的阶乘之和为:" + sum);
```
两种方法都是先计算每个数的阶乘,然后将它们相加得到最终的结果。其中do while循环需要先定义一个计数器i,然后在循环体中更新它,直到达到循环的终止条件。而for循环则在循环头中定义计数器i,并在循环体中更新它,条件判断也在循环头中完成。
相关问题
分别用do while和for循环计算前二十项阶乘之和
使用do while循环计算前二十项阶乘之和:
```
int sum = 0, i = 1;
long long factorial = 1;
do {
factorial *= i;
sum += factorial;
i++;
} while (i <= 20);
```
使用for循环计算前二十项阶乘之和:
```
int sum = 0;
long long factorial = 1;
for (int i = 1; i <= 20; i++) {
factorial *= i;
sum += factorial;
}
```
编写shell脚本,使用for循环和while循环,计算1到100的阶乘
使用for循环计算1到100的阶乘的shell脚本如下:
```shell
#!/bin/bash
result=1
for i in {1..100}
do
result=$((result * i))
done
echo "1到100的阶乘为:$result"
```
使用while循环计算1到100的阶乘的shell脚本如下:
```shell
#!/bin/bash
result=1
i=1
while [ $i -le 100 ]
do
result=$((result * i))
i=$((i + 1))
done
echo "1到100的阶乘为:$result"
```
注意,由于100的阶乘非常大,可能会超出shell的数值范围,导致计算结果不准确。如果要计算更大的阶乘,建议使用其他编程语言或者数学库进行计算。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)