计算机科学导论实验(三)

计算机科学导论实验

——实验三 递归算法、迭代算法及其比较



前言


提示:以下是本篇文章正文内容,下面案例可供参考

一、实验目的

1、掌握递归算法和迭代算法的原理及相互之间的异同。
2、掌握使用可视化计算工具Raptor编写递归及迭代程序的基本方法。
3、能够使用算法复杂度的概念对求解同一类问题的不同算法进行评估。
4、掌握Raptor中子函数的使用方法。

二、实验内容

1.使用函数求解1+2+3+……+n,n的值由用户输入

在这里插入图片描述
在这里插入图片描述

2.求解斐波那契数列问题中指定项的值

设计Raptor程序,分别使用递归和迭代算法,求解斐波那契数列问题中指定项的值,并比较两种算法解决问题所使用的基本符号的执行次数,理解算法时间复杂度的概念。

(1)递归算法
在这里插入图片描述
在这里插入图片描述

(2)迭代算法
在这里插入图片描述
在这里插入图片描述

3.n的“阶乘和”F(n)的计算公式为F(n)=1!+2!+3!+…+n!

(其中n!代表n的阶乘,其求解公式为n!=n*(n-1)*…*1)。请你自行设计或者参考项目案例3.3和3.4,使用递归和迭代算法分别设计2个程序,来求解任意一个不超过10的正整数的“阶乘和”的值。测试和验收时请自行输入几个连续的整数测试验证。例如输入测试数据1、2、3、4之后的正确结果值应该分别为1、3、9、33。并分析和比较两种算法的效率(n由用户输入)。

分别用递归和迭代算法实现 求n!
①迭代算法
在这里插入图片描述
在这里插入图片描述

②递归算法
在这里插入图片描述
在这里插入图片描述


  • 17
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值