raptor软件使用讲解.pptx

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
RAPTOR程序设计基础 《可视化计算》 循环控制 循环(loop)控制语句允许重复执行一个或多个语句,直到某些条件变为真值(True)。 菱形符号中的表达式结果为“No”,则执行“No”的分支,这将导致循环语句和重复。 要重复执行的语句可以放在菱形符号上方或下方。 循环控制结构在英语环境中被称为“While-do”结构。 典型的循环错误 未修改Count的值 Count的值永远为1 Count的值永远不会等于-100 计数控制循环之一 求一个正整数的累加。 计数控制循环之二 一张纸折几下可以比珠穆朗玛峰高。(0.5mm,8848m) RAPTOR子程序的定义与调用 在计算机科学中,将实际问题抽象化是解决问题的关键要素之一。 为了解决复杂的问题,必须能够研究问题的“主要方面(big issues)”。 组合数求解 很容易看到,求组合数需要多次求阶乘,这会造成许多重复的代码。 可以将求阶乘代码独立出主程序,定义为一个子程序,在主程序运行时,需要计算某数的阶乘时就调用子程序,从而简化整个软件的组成,使结构更清晰。 子程序 子程序如同一个加工厂,输入原材料,然后按设计要求处理原材料,输出产成品。 子程序的原材料就是一些变量,例如(in: m),为统计子程序输入测试样本。 子程序的产成品也是变量,例如(out: s),向调用它的程序返回统计结果。 其中,in, out表示子程序的输入输出参数。 创建RAPTOR子程序 点击“模式”菜单,选择“中级”。 在“main”上点鼠标右键,选择“增加一个子程序”。 子程序定义 子程序定义的参数称为“形式参数”。 RAPTOR的子程序参数不得超过6个。 子程序参数可以是单个变量,也可以是数组。 求阶乘的子程序 过程调用语句 在“main”或其它子程序中添加过程调用语句。 双击定义该语句。 JC(m, m1) 实参 过程调用语句(显示) 注意:调用子程序需要参数。 子程序的调用 如要调用子程序,可以通过调用语句并给子程序的接口赋予“实际参数”进行。 实际参数的名与形式参数的可以不同。 实际参数的数据类型则必须与形式参数的相同。 五、算法示例 1.迭代算法(递推法) 让计算机对一组指令进行重复执行,在每次执行这组指令时,都从变量的原值推出它的一个新值。 在数学中,迭代经常被用来进行数值计算,累加与累乘问题是最典型、最基本的一类算法,实际应用中很多问题都可以归结为累加与累乘问题。 累加: S=0 input n For j=1 to n s=s + j 累乘: F=1 input n For k=1 to n F=F*k 具体方法是:如左图:先给一个近似根的一个初值x1,过A点(f(x1))作切线交x轴于x2点。实际上是找出x2,再由x2找出x3,x4…,直到满足精度为10-6的根(解)。 由点斜式方程得 斜率k: 【例】求一元高次方程2x3-4x2+3x-6=0在x=1.5附近的近似根,要求精度为10-6。 分析:“迭代法”又称“递推法”,其基本思想是把一个复杂的计算过程简化为简单过称的多次重复。每次的重复都是从旧值的基础上递推出新值,直至满足精度要求。 f’(x1)=0-f(x1)/(x2-x1) x2=x1- f(x1)/ f’(x1) 得递推公式: xn+1 = xn – f (xn) / f’(xn) 本题中,我们用 f 表示f(xn),f1 表示 f’(xn) 19 k = y’ = f’(x) A点初的切线在x轴上的x2处 有 y2=0 而 【思考题】小猴有桃若干,第一天吃掉一半多一个;第二天吃剩下桃子的一半多一个;以后每天都吃尚存桃子的一半多一个,到第7天要吃时只剩一个,问小猴原有桃多少? 分析:也是递推(迭代)问题。用后一天的数推出前一天的桃子数。 设第n天的桃子为xn,是前一天的桃子的二分之一减去1。 2.穷举算法 穷举法也叫枚举法,是对众多可能解,通过多重循环一一列举出该问题所有可能的解,并在逐一列举的过程中,检验每个可能的解是否是问题的真正解,若是,就采用这个解,否则抛弃它。穷举的计算量是相当大的,但对于计算机来说,做起来很容易。 采用穷举法解题的基本思想: (1)明确问题要求,确定枚举对象,用合适类型的变量表示枚举对象。 (2)明确枚举对象的取值范围。 (3)根据题目要求,写出有关的条件表达式。这里条件表达式可以是数学表达式、关系表达式或逻辑表达式。 (4)用循环语句枚举出可能的解,在循环体内验证各种条件表达式是否满足。 (5)根据问题背景,优化程序,以便缩小搜索范围,减少程序运行时间。 例1: 从1~10中找出所有是3倍数的数。用流程图描述解决此数学问题的算法如右图所示。 例2:百元买百鸡

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档