- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
过程和子过程的定义和调用方法
实习六过程和子过程的定义和调用方法地点:计算机实验室。每名学生一台计算机。
实习时间:90分钟
指导教师:任课教师,实习指导教师
学生分组:每三人为一组。每名教师负责七个组的指导。实习目的:
掌握自定义函数过程和子过程的定义和调用方法.
掌握形参和实参的对应关系.
掌握值传递和地址的传递方式.
掌握变量、函娄和过程的作用域.
掌握递归概念和使用方法.
熟悉程序设计中的常用算法.实验6.1 编一子过程ProcMin,求一维数组a中的最不值,子过程的形参自己确定.主调程序随机产生10个-300~-400之间的整数,调用ProcMin子过程,显示最小值.
实验6.2 编一函数Max(a( )),求一维数组a中的最大值.主调程序随机产生10个100~200之间的数,调用Max函数,显示最大值.
实验6.3 编一个函数过程MySin(x),求
MySin(x)=
当第n项的精度小于时结束计算,x为弧度.主要程序同时调用MySin和内部函数Sin,进行验证.
【提示】
关键是找部分级数和的通项,通项表示如下:
实验6.4编一个函数过程HtoD(H),将十六进制字符串H转换成十进制数.主调程序调用HorD函数,再调用内部函数Hex(number)进行逆向验证.
实验6.5 参阅教篇例6.2,编一个子过程DeleStr(s1,s2),将字符串s1中出现s2子字符串删去,结果还是存放在s1中.
例如:s1=AABBDFG12345” s2=”234”
结果:s1=”15678AAABBDFG15”
【提示】
解决此题的方法有以下要点:
在s1字符串中找s2的子字符串,可利用lnStr()函数,要考虑到s1中可能存在多个或不存在s2字符串,用Do While Instr(s1,s2)﹥0循环结构来实现.
若在s1中找到s2的子字符串,首先要确定s1字符串的长度,因s1字符串在进行多次删除时,长度在变化..然后通过Left() 、Mid() 或Rigth()函数的调用达到删除s1中存在的s2字符串.
实验6.6 编一函数过程MaxLength(s),在已知的字符串s中,找出最长的单词.假定字符s内只含有字母和空格,空格发隔不同的单词.程序运行界面如图2.6.1所示
【提示】
程序中有到当前单词当前单词长度最长单词最长单词长度等变量.
首先求出输入的字符串长度,然后从字符串中分离出单词,即对每个字符判断:若不为空格,将每个字符连接到当前单词的字符串变量,当前单词长度计数器加1;若为空格,表示一个单词结束,将每个字符连接到当前单词长度与最长单词长度比较,若长,当前单词替代最长单词.当前单词置空,当前单词计数器清除为0.
实验6.7编一函数过程IsH(n),对于已知正整数n判断该数是否是回文数,函数的返回值类型为布尔型.主调程序每输入一个数,调用IsH函数过程,然后在图形框显示输入的数,对于是回文数显示一个”★"见图2.6.2。
图2.6.2 实验6.7回文数程序运行界面
【提示】
所谓回文数是指顺读与倒读数字相同,即指最高位与最低们相同,次高位与次低位相同,依次类推.当只有一位数时,也认为是回文数.
回文数的求法,只要对输入的数(按字符串类型处理),利用MID函数从两边往中间比较,若不相同,就不是回文数.
实验6.8编一函数过程 IsZ(n),对于已知正整数n,判断该数是否是质数,函数的返回值类型为布尔型.方调程序每输入一个数,调用IsZ函数过程,然后在图形框显示输入的数,对于是质数显示一个"★",界面见上题.
实验6.9编一函数过程,用矩形法求定积数f(x)dx.矩形法的第i块小面积的公式为: =h*f()
h 为小面积 的宽度主调程序调用函数过程,求的定积分.
实验6.10用迭代法编一个函数过程f(a),求x=求立方根的迭代公式为: =(2/3)+a/3
精度为ε=.主调程序调用该函数过程,a的值分别为3、9和12,显示计算结果.同时,利用幂运算符“^”检验函数过程的正确性.迭代法求高次方程根的算法见教学篇例6.18.
实验 6.11 用递归方法,编写求的函数.
对于有如下递归形式:
递归条件:
实验 6.12 类似第10题,将迭代法改为递归法编函数过程f2(x0,a),求,求立方根的迭代公式为:
精度为.
主调程序分别调用函数过程,a的值分别为3、9和12,显示计算结果.同时,利用运算符“”检验数时程的正确性.
【提示】
递归法求根时,形参要有两个,x0为每次递归调用时的初值,假定x0的初值为a.
文档评论(0)