编写程序计算下列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 21:06:58 浏览: 106
关于问题 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++编写程序,计算下列公式中s的值(n是运行程序时输入的一个正整数)。 5=1+(1+2)+(1+2+3)+…+(1+2+3+…+n) s=12+22+32+…+(10n+2) s=1x2-2x3+3x4-4×5+… +(-1)(n1)xnx(n+1)
下面是一个C++程序实现以上三个公式的计算:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n;
cout << "请输入一个正整数n:" << endl;
cin >> n;
// 计算第一个公式中s的值
int sum1 = 0, sum2 = 0, sum3 = 0;
for (int i = 1; i <= n; i++)
{
sum1 += i;
sum2 += sum1;
sum3 += sum2;
}
int s1 = sum3;
// 计算第二个公式中s的值
int s2 = 0;
for (int i = 1; i <= n; i++)
{
int term = 10 * i + 2;
s2 += pow(term, 2);
}
// 计算第三个公式中s的值
int s3 = 0;
for (int i = 1; i <= n; i++)
{
int term = pow(-1, i+1) * i * (i+1);
s3 += term;
}
// 输出结果
cout << "第一个公式中s的值为:" << s1 << endl;
cout << "第二个公式中s的值为:" << s2 << endl;
cout << "第三个公式中s的值为:" << s3 << endl;
return 0;
}
```
运行程序后,输入一个正整数n,程序将分别计算三个公式中s的值,并输出结果。
阅读全文