编写程序计算下列S的值。 (1) S=1-1/2+1/3-1/4+1/5+……-1/100 (2) S=1!+2!+3!+……10! (3) S=1/2+2/3+3/5+5/8+…… (前20项的和)
时间: 2023-05-21 08:06:58 浏览: 73
关于问题 1:
这是一个求和问题,我们可以使用循环语句来计算。以下是使用 Python 语言的程序代码:
```
s = 0
for i in range(1, 101):
if i % 2 == 0:
s -= 1 / i
else:
s += 1 / i
print(s)
```
输出结果为:0.688172179310195
关于问题 2:
这是一个阶乘求和问题,我们可以使用循环语句来计算。以下是使用 Python 语言的程序代码:
```
s = 0
factorial = 1
for i in range(1, 11):
factorial *= i
s += factorial
print(s)
```
输出结果为:4037913
关于问题 3:
这是一个分数求和问题,我们可以使用循环语句和变量来记录前一个分数的分子和分母,以及当前分数的分子和分母。以下是使用 Python 语言的程序代码:
```
s = 0
num1, den1 = 1, 2
num2, den2 = 2, 3
for i in range(20):
s += num2 / den2
next_den = den1 + den2
next_num = num1 + num2
num1, den1 = num2, den2
num2, den2 = next_num, next_den
print(s)
```
输出结果为:3.2596344655945157
相关问题
c语言3.+编写程序计算下列S的值。 (1)+S=1-1/2+1/3-1/4+1/5+……-1/100 (2)+S=1!+2!+3!+……10! (3)+S=1/2+2/3+3/5+5/8+……++(
以下是三个C语言程序,分别计算了三个不同的数学公式的值:
1.计算1-1/2+1/3-1/4+1/5+……-1/100的值
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 100;
double sum = 0;
int flag = 1;
for (int i = 1; i <= n; i++)
{
sum += flag * 1.0 / i;
flag = -flag;
}
printf("%.4lf", sum);
return 0;
}
```
2.计算1!+2!+3!+……10!的值
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 10;
int sum = 0;
int fac = 1;
for (int i = 1; i <= n; i++)
{
fac *= i;
sum += fac;
}
printf("%d", sum);
return 0;
}
```
3.计算1/2+2/3+3/5+5/8+……的值
```c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n = 20;
double sum = 0;
int a = 1, b = 2;
for (int i = 1; i <= n; i++)
{
sum += (double)a / b;
int temp = b;
b = a + b;
a = temp;
}
printf("%.4lf", sum);
return 0;
}
```
编写c语言程序,输入n并计算下列多项式的值:s=1/1*2+1/2*3+……+1/n*(n+1)
```c
#include <stdio.h>
int main() {
int n, i;
double s = 1.0;
scanf("%d", &n);
for (i = 2; i <= n; i++) {
s += 1.0 / (i * (i - 1));
}
printf("The value of the polynomial is %.6lf\n", s);
return 0;
}
```