鱼C论坛

 找回密码
 立即注册
查看: 1115|回复: 3

[已解决]求代码

[复制链接]
发表于 2023-6-9 11:25:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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

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

                                                                                                                                                                                .                                                                                                                                                                                                        ..
最佳答案
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))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 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 加到总和中。最后,它输出结果,保留五位小数。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 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))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 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,如果题目描述与预期输出有任何出入,请自行对照代码进行修改。
如果满意,别忘了点右下角设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-28 01:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表