- 1
- 0
- 约 22页
- 2018-05-03 发布于河南
- 举报
这是精心收集的精品经典资料,值得下载保存阅读!
Pascal程序设计基础
第四章 过程和函数
子程序是什么
在程序设计中,我们会发现一些程序段在程序的不同地方反复出现,此时可以将这些程序段作为相对独立的整体,用一个标识符给他起一个名字,凡是程序中出现该程序段的地方,只要简单地写上其标识符即可。这样的程序段,我们称之为子程序。
Pascal中的子程序有两种形式:函数和过程。
函数
之前我们接触了pascal中提供的标准函数,如abs(),sqrt(),inc()等等,这些函数为我们编写程序提供了很大的方便。但是这些函数知识常用的函数,编程的时候需要自定义一些函数。
[例4.1]编程找出由键盘任意输入五个整数中的最大整数。
解:设输入的五个整数为n1、n2、n3、n4、n5,为了便于处理,引入一个中间变量t1,按如下步骤处理:①令t1=n1;②将t1和n2比较,将两者中较大的数放入t1;③将t1与n3比较,将两者中较大的数放入t1;④将t1与n4比较,将两者中较大的数放入t1;⑤将t1与n5比较,将两者中较大的数放入t1;⑥经过以上5步处理后,t1即为5个数中最大者。从上面规划的步骤看来,从步骤②到步骤⑤需处理的目标是相同的,因此我们可以设计一段子程序Max(x1,x2),以找出x1和x2中最大的值并返回。
Program Exp41;Var n1,n2,n3,n4,n5,t1 : integer;Function max(x1,x2 : integer) : integer;Begin If x1x2 then Max := x1 Else Max := x2;End;
Begin Write(‘Input 5 numbers : ‘);Readln(n1,n2,n3,n4,n5);T1 := n1;T1 := Max(t1,n2);T1 := Max(t1,n3);T1 := Max(t1,n4);T1 := Max(t1,n5);Writeln(‘Max number : ‘,t1);End.
从上例看出,引入函数实际上是将一个复杂的问题划分成若干个易于处理的子问题,将编程化简的一种有效办法,而化简的方法是多种多样的,如前面已经做过求三个数中的最大数,所以可定义一个专门求三个数中最大数的函数(Max)。第一次用这个函数求出n1,n2,n3三个数中的最大数t1;第二次调用这个函数求出t1和n4,n5三个数中的最大数,也就是前三个数的最大数(已在t1中)和后面二个数再求一次,就得到五个数的最大数。因此,需要两次使用“求三个数中的最大数”,步骤如下:①调用函数Max ( n1, n2, n3), 求出n1,n2,n3中的最大者 t1;②调用函数Max ( t1, n4, n5 ),求出t1, n4, n5中的最大者t2;③输出最大数 t2。
Program Exp41se;Var n1,n2,n3,n4,n5,t1: integer;
function Max(x1,x2,x3: integer): integer; {自定义函数Max}Var XX: integer; {函数内部变量说明}begin {函数体}if X1>X2 then XX:=X1 else XX:=X2; if X3>XX then XX:=X3;Max:=XXend; Begin {主程序} Write(Input 5 numb:); Readln(n1,n2,n3,n4,n5); {输入五个数} t1:=Max(n1,n2,n3); {用函数求n1, n2, n3的最大数} t1:=Max(n4,n5,t1); {用函数求n4, n5, t1 的最大数} Writeln(Max Number :, t1); ReadlnEnd.
格式
自定义函数的一般格式为:
function 函数名(形式参数表): 类型; {函数首部} 局部变量说明部分; begin 语句系列;
您可能关注的文档
最近下载
- 河南省开封市五县2024-2025学年高二上学期1月期末联考生物试题(解析版).docx VIP
- 2025版煤矿安全规程执行说明.docx VIP
- 肺结节术后护理查房.pptx VIP
- 舟山地区近10年阵风特征分析.docx VIP
- 惠普 M375NW M475DN 彩色激光一体机中文拆机手册.pdf VIP
- 2025年水利质量检测员量测题库及答案.docx VIP
- 水利工程质量检测员量测类全部题库.doc VIP
- xx年水利工程质量检测员量测类全部题库及答案.doc VIP
- 2024年紫外固化材料项目可行性研究报告.docx VIP
- 2024-2025山东青岛市高一(上)期末数学【答案版】.pdf VIP
原创力文档

文档评论(0)