第3关:计算数列的前n项之和

本篇博客介绍如何用Python编程求解数列的前n项之和,用户通过键盘输入n值,例如输入30,程序将返回48.84060068717216;输入100,则返回162.1029798996649。
n = float(input())
a = 2
b = 1
x = 0
sn = 0
while x < n: # a 和 b 作为中间变量传递numerator和denominator的值
    numerator = a
    denominator = b
    #先将中间变量a,b的值分别赋给分子和分母
    an = numerator/denominator
    numerator += b
    #下一项的分子等于上一项的分子加分母
    denominator = a    
    #下一项的分母的上一项的分子                                                     
    a = numerator
    b = denominator   
    #再将下一项的分子分母传递给中间变量
    x += 1
    sn += an
print(sn)

“”"
本关任务:编写程序,有数列
在这里插入图片描述
求该数列的前n项之和,其中n的值由键盘输入。
测试输入1:30
预期输出1:48.84060068717216
测试输入2:100
预期输出2:162.1029798996649

“”"

虽然给定的引用中没有直接涉及头歌平台第4求斐波那契数列n的解答,但可以参考相信息来给出实现思路代码示例。 斐波那契数列的定义是:$F(0)=0$,$F(1)=1$, $F(n)=F(n - 1)+F(n - 2)$($n ≥ 2$,$n ∈ N*$)。要求n,可以先计算出每一的值,再进行累加。 以下是用C语言实现求斐波那契数列n的代码示例: ```c #include <stdio.h> int main() { int n; printf("请输入n的值:"); scanf("%d", &n); if (n == 0) { printf("sum = 0"); return 0; } if (n == 1) { printf("sum = 1"); return 0; } int f1 = 1, f2 = 1, t; int sum = 2; for(int i = 3; i <= n; i++) { t = f1; f1 = f2; f2 = t + f2; sum = sum + f2; } printf("sum = %d", sum); return 0; } ``` 在上述代码中,首先读取用户输入的n值,然后根据n的值进行不同情况的处理。当n为0时,为0;当n为1时,为1;当n大于1时,使用循环计算斐波那契数列的每一,并累加到sum中,最后输出结果。 如果使用Java语言实现,可参考以下代码: ```java import java.util.Scanner; public class FibonacciSum { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入n的值:"); int n = scanner.nextInt(); if (n == 0) { System.out.println("sum = 0"); return; } if (n == 1) { System.out.println("sum = 1"); return; } int f1 = 1, f2 = 1; int sum = 2; for (int i = 3; i <= n; i++) { int temp = f1; f1 = f2; f2 = temp + f2; sum = sum + f2; } System.out.println("sum = " + sum); } } ``` 此Java代码的逻辑与C语言代码类似,先读取用户输入的n值,然后根据n的值进行不同情况的处理,最后计算并输出斐波那契数列n
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-阿呆-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值