第六章过程.pptVIP

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章过程

第六章 过 程 6.1 函数过程 6.2 子过程 6.3 参数传递 6.4 综合应用 6.5 自主学习--递 归 6.0 过程概述 过程的引入: 使同类的操作不重复编写,写一次多次用 把一项复杂的工作分成简单的功能块,分而治之 过程: 完成一段独立功能,可供其他过程使用(调用)。 调用过程: 调用其他过程的过程 常用过程分类: 6.1 函数过程 6.1.1 引例 6.1.2函数过程的定义 6.1.3函数过程的调用 函数过程的调用 6.2 子过程的定义与调用 6.2.2子过程的定义 子过程与函数过程的区别 6.2.3子过程调用 参数问题 6.3 参数传递 6.3.2 传址与传值 传值、传址对比例 传递方式的选择 6.3.3 数组参数的传递 数组参数的传递规定 6.3.4 变量的作用域 变量的作用域 6.3.5 静态变量 6.4 综合应用 Welcome stud 6.5 自主学习 6.5.2 二分法 利用计算机二分法算法可解决很多问题: 猜数游戏、二分法查找、二分法求根等 1.电脑猜数 分析: 猜数实质就是二分法查找,思路是对一组有序的数据,设置查找区间的下界low、上界high,每次猜数取其中间项: mid =(low + high)\ 2: 计算机每次猜的数应该取mid值。 ①若Keymid,则后半部作为继续查找的区域, low=mid; ②若Keymid,则前半部作为继续查找的区域, high=mid。 ③ Key=mid 猜对 2.二分法查找 利用猜数的思想,查找有序数组a中值为的Key的数组元素下标,k中返回找到的下标,找不到返回-1)。 Search(ByRef%(),ByVal Key%,ByRef k%) 3.二分法求根 高次方程求解,通常通过迭代法求得方程的近似解。常用迭代法有:二分法、牛顿切线法、弦截法等。 例6.18 对高次方程 求(-2,0)之间的根 例6.15编fac(n)=n! 的递归函数 Function fac%(n %) If n = 1 Then fac = 1 Else fac = n * fac(n - 1) End If End Function 用自身的结构来描述自身就称为递归 最典型的例子是阶乘运算,作如下的定义: 本章目录 递归过程在自身定义的内部调用自己。 6.5.1 递归 递推 回归 由此可见构成递归的结构如下: 递归结束条件及结束时的值; 能用递归形式表示,并且递归向终止条件发展。 fac(2)=2*fac(1) fac(1)=1 fac(4)=4*6 fac(3)=3*2 fac(2)=2*1 fac(3)=3*fac(2) fac(4)=4*fac(3) 本章目录 递归执行过程 递推过程:每调用自身,当前参数压栈,直到达到递归结束条件。 回归过程:不断从栈中弹出当前的参数,直到栈空。 递归算法设计简单,但消耗的机时和占据的内存空间比非递归大 例6.17 利用计算机做猜数游戏。 由用户想好一个[1,1000]的任意整数Key,计算机提问题“x?”,用户根据两种情况:Keyx、Key≤x,分别回答“是”“否”,经过10次提问,计算机能正确猜中用户想好的数,就结束游戏。 二分法求根的思路与二分法查找的思路相似,在二分过程中不断缩小求根的区间。求根方法如下: ①取a与b的中点c=(a+b)/2,将求根区间分成两半,判断根在哪个区间。有三种情况: f(c)f(a)0,求根区间在[a,c],b=c,转①; f(c)f(a)0,求根区间在[c,b],a=c,转①。 f(c)≤ε或|b-a|ε,c为求得的根,结束; 这样不断重复二分过程,将含根区间不断缩小一半,直到达到精度 程序设计基础 本书目录 第六章 过程 本章目录 一、问题的提出 引例1.1  自动和手动事件 例2.5  输入数据合法性检验: 回车键、Tab键表示输入,完成相同的输入数据合法性 本章目录 调用过程: 调用Sprg1 调用Sprg1 调用Sprg2 子过程: Sprg1 子过程: Sprg2 Sub过程 Function过程 事件过程 自定义子过程 内部函数(标准函数) 自定义函数过程 1)过程是一段程序代码,是相对独立的逻辑模块。 2)一个完整的VB应用程序由若干过程和模块组成。 Sub子过程:完成一定的操作和功能,无返回值。 Function函数过程:完成一定的操作和功能,并且可将数据处理的结果返回。 6.1.1 引例求多边形面积 已知多边形各条边的长度,计

文档评论(0)

118books + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档