怎么用Python/R语言分别解决金字塔数求和问题(python,r语言,开发技术)

时间:2024-04-29 09:15:35 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    1、前N阶乘求和

    阶乘是基斯顿·卡曼(Christian Kramp,1760~1826)于 1808 年发明的运算符号,是数学术语。

    n!=1∗2∗3∗...∗(n−1)∗n

    或者可以使用递归方式定义:

    怎么用Python/R语言分别解决金字塔数求和问题

    对其前N项阶乘求和即是sum(1!+2!+3!+...+n!),有了以上的理论基础,我们一起看看图解,加强一下理解 !

    1.1 图解问题

    怎么用Python/R语言分别解决金字塔数求和问题

    如图,如果要输出每一个值 ,可以嵌入循环的思想,每一次将前一个值进行乘法运算即可!

    1.2 算法流程

    怎么用Python/R语言分别解决金字塔数求和问题

    在此可以看到 ,我们需要加以人工控制需要算前多少项。在循环体内,这是对阶乘数的累加和赋值。

    1.3 代码实现

    1.3.1 python代码实现

    n=int(input("n="))s=0t=1foriinrange(1,n+1):t*=is+=tprint("前{}阶乘的和是:{}".format(n,s))

    怎么用Python/R语言分别解决金字塔数求和问题

    1.3.2 R语言代码实现

    factorial<-function(n){n<<-as.integer(readline("请输入需要阶乘个数(从1开始):"))fac=1ans=0for(iin1:n){fac=fac*ians=ans+fac}return(ans)}test_3<-function(){print("前n阶乘之和为:")factorial(n)}test_3()

    怎么用Python/R语言分别解决金字塔数求和问题

    1.4实验小结

    这个实验核心的点是循环的使用;

    至于R代码部分均使用函数的形式进行包装方便理解;函数内部采用互动的方式,便于拓展使用。有需要了解的留言或私信。

    2、金字塔数求和运算

    此处的金字塔是真金字塔;就按简单的金字塔形状的数字:

    怎么用Python/R语言分别解决金字塔数求和问题

    求s=a+aa+aa+aaa+aa...a的值,其中 a 是一个数字。例如:

    2+22+222+2222+22222

    (此时共 有 5 个数相加),几个数相加由键盘控制。

    2.1 图解问题

    怎么用Python/R语言分别解决金字塔数求和问题

    通过对每一层金字塔数的拆解,即可得到如下的通项公式:

    怎么用Python/R语言分别解决金字塔数求和问题

    这样问题不久又解决了吗?与上面的前n项阶乘求和一样,使用循环求出每一层数,然后求和。

    2.2 算法流程

    怎么用Python/R语言分别解决金字塔数求和问题

    与上面实验基本没有差异;主要是循环体的算法不同而已。此处不做讲解了。

    2.3 代码实现

    2.3.1 python代码

    a=int(input("请输入需要a的值:"))n=int(input("请输入需要n的值:"))Fn=0pyr=[]foriinrange(n):Fn=Fn+aa=a*10pyr.append(Fn)print(Fn)print("前{}个数的和为:{}".format(n,sum(pyr)))

    怎么用Python/R语言分别解决金字塔数求和问题

    2.3.2 R语言代码实现

    sum_pyr<-function(){a<-as.integer(readline("请输入a的值:"))n<-as.integer(readline("请输入n的值:"))Fn<-0pyr<-c()for(iin1:n){Fn<-Fn+aa<-a*10pyr[i]<-Fnprint(Fn)}ans<<-sum(pyr)}test_4<-function(){print("金字塔为:")sum_pyr()print("求和结果为:")ans}test_4()

    怎么用Python/R语言分别解决金字塔数求和问题

     </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
    本文:怎么用Python/R语言分别解决金字塔数求和问题的详细内容,希望对您有所帮助,信息来源于网络。
    上一篇:Flutter组件状态管理的方法有哪些下一篇:

    14 人围观 / 0 条评论 ↓快速评论↓

    (必须)

    (必须,保密)

    阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18