奶味凹凸曼 发表于 2023-6-9 11:25:09

求代码

题目描述
Sn=1-1/2+1/3-1/4+........       
输入
n
输出
Sn,保留5位小数

样例输入
100
样例输出
Sn=0.68817

                                                                                                                                                                                .                                                                                                                                                                                                        ..

isdkz 发表于 2023-6-9 11:32:04

下面是一个使用C语言的解决方案:

#include<stdio.h>

int main() {
    int n, i;
    double sum = 0;
   
    printf("请输入n的值: ");
    scanf("%d", &n);
   
    for(i = 1; i <= n; i++) {
      if(i % 2 == 0) {
            sum -= 1.0/i;
      } else {
            sum += 1.0/i;
      }
    }
   
    printf("Sn=%.5lf\n", sum);
   
    return 0;
}


这个程序首先提示用户输入一个数值 n 。然后,它遍历从1到 n 的所有整数。如果当前的整数 i 是偶数,程序就从总和中减去1/ i ,否则,就把1/ i 加到总和中。最后,它输出结果,保留五位小数。

212741 发表于 2023-6-10 10:52:01

n = int(input())
s = 0
for i in range(1, n+1):
    sign = (-1) ** (i+1)
    s += sign / i
print("Sn={:.5f}".format(s))

高山 发表于 2023-6-29 07:13:44

本帖最后由 高山 于 2023-6-29 07:15 编辑

这个题目可以使用 C 语言来计算数列的部分和并保留5位小数。

以下是使用 C 语言编写的代码示例:


#include <stdio.h>

double calculate_partial_sum(int n) {
    double sum = 0;
    int sign = 1;
   
    for (int i = 1; i <= n; i++) {
      sum += (double)sign / i;
      sign *= -1;
    }
   
    return sum;
}

int main() {
    int n;
    printf("请输入项数:");
    scanf("%d", &n);
   
    double result = calculate_partial_sum(n);
    printf("Sn=%.5f\n", result);
   
    return 0;
}

C++:
#include <iostream>

double calculate_partial_sum(int n) {
    double sum = 0;
    int sign = 1;

    for (int i = 1; i <= n; ++i) {
      sum += static_cast<double>(sign) / i;
      sign *= -1;
    }

    return sum;
}

int main() {
    int n;
    std::cout << "请输入项数:";
    std::cin >> n;

    double result = calculate_partial_sum(n);
    std::cout << "Sn=" << std::fixed << std::setprecision(5) << result << std::endl;

    return 0;
}


你可以将上述代码保存成一个以 `.c`(C语言或 ‘。cpp'(C++)为后缀名的文件,通过编译器(如GCC)进行编译,并执行生成的可执行文件。然后输入数列的项数来获取结果。

注意:由于本回答生成时间为 2023-06-28,所有知识截至日期为 2021-09-01,如果题目描述与预期输出有任何出入,请自行对照代码进行修改。
如果满意,别忘了点右下角设置最佳答案
页: [1]
查看完整版本: 求代码