高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt

上传人:ni****g 文档编号:567716901 上传时间:2024-07-22 格式:PPT 页数:13 大小:276.50KB
返回 下载 相关 举报
高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt_第1页
第1页 / 共13页
高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt_第2页
第2页 / 共13页
高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt_第3页
第3页 / 共13页
高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt_第4页
第4页 / 共13页
高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt》由会员分享,可在线阅读,更多相关《高中信息技术 奥林匹克信息学竞赛班进阶篇 pascal-04 子程序课件.ppt(13页珍藏版)》请在金锄头文库上搜索。

1、PASCAL-子程序过程过程(子程序)过程过程单独写成一个程序段,可以多次调单独写成一个程序段,可以多次调用,可以用,可以 通过参数处理不同的数据。通过参数处理不同的数据。procedure abc ( x:integer);begin end ;过程名过程名参数表参数表子程序的内容子程序的内容过程过程(子程序)program ex701; var u,v:integer; procedure p1(x,y:integer); var i,j:integer; begin for i:=1 to x do begin j:=y+i; write(j); end; end;Begin u:=6;

2、 v:=5; p1(u,v); writeln; u:=u+v; v:=u*v; p1(u,v); writeln(end);End. 过程在程序中的位置及调用过程在程序中的位置及调用过程过程(子程序) 无参过程无参过程Program draws; procedure line; const length=10; var i : integer; begin for i:=1 to length do write(); writeln; end;Begin line; writeln ( Hello ! ); line;End. 输出输出: Hello! 过程过程(子程序) 有参过程有参过程P

3、rogram draws; procedure line(length:integer); var i : integer; begin for i:=1 to length do write(); writeln; end;Begin line(10); writeln ( Hello ! ); line(8); line(5);End. 输出输出: Hello!过程过程(子程序) 参数:值参、参数:值参、变参变参procedure line ( x : integer );值参值参procedure line ( var y : integer );变参变参过程过程(子程序) 值参和变参的

4、区值参和变参的区别别Program zc; var n:integer; procedure A (x:integer); var i:integer; begin for i:=1 to x do write(); writeln; x:=x+10; end;Begin read(n); A(n); writeln(n=,n);End. 输入:输入:5 5 输出:输出:n=5n=5 55x=155nx5复制复制值参值参15过程过程(子程序) 值参和变参的区值参和变参的区别别Program zc; var n:integer; procedure B (var x:integer); var

5、i:integer; begin for i:=1 to x do write(); writeln; x:=x+10; end;Begin read(n); B(n); writeln(n=,n);End. 输入:输入:5 5 输出:输出:n=15n=15 55x=15变参变参xn没有开新的空间!没有开新的空间!515过程过程(子程序)var a,b:integer;var a,b:integer; x,y:integer; x,y:integer;procedure fun(a,b:integer);procedure fun(a,b:integer);var k:integer;var

6、k:integer;begin k:=a; a:=b; b:=k; end;begin k:=a; a:=b; b:=k; end;beginbegin a:=3; b:=6; a:=3; b:=6; x:=a; y:=b; x:=a; y:=b; fun(x,y); fun(x,y); writeln(No.1:, a , b ); writeln(No.1:, a , b ); fun(a,b); fun(a,b); writeln(No.2:, a , b ); writeln(No.2:, a , b );end.end.例:2007年联赛第4题 : 指向内存地址指向内存地址 : 该地

7、址的内容该地址的内容输出:No.1: 3 6No.2: 3 6忘了值参值参过程过程(子程序) 全局变量和局部全局变量和局部变量变量在主程序说明的为全局变量;在主程序说明的为全局变量;在子程序说明的为局部变量;在子程序说明的为局部变量; 当全局变量和局部变量同名时,当全局变量和局部变量同名时,子程序中的变量不影响全局变量。子程序中的变量不影响全局变量。仅在该子程序中有效仅在该子程序中有效过程过程(子程序)Program same; var x:integer; procedure let; var x:integer; begin x:=1; writeln(x); end;Begin x:=0

8、; let; writeln(x);End. 全局变量和局部变量全局变量和局部变量同名同名运行结果:运行结果:输出:输出: 1 0 局部变量局部变量全局变量全局变量计算机内存:计算机内存:全局全局x局部局部x (let过程)函数函数:和过程类似,都是独立的程序段,不同函数:和过程类似,都是独立的程序段,不同之处之处 在于它会返回一个值。在于它会返回一个值。function abc ( x:integer) : boolean;begin abc:=.;end ;函数名函数名参数表参数表给函数赋值给函数赋值函数类型函数类型函数program area; 求五边形面积求五边形面积 var L1,L

9、2,L3,L4,L5,L6,L7,s:real; function ts(a,b,c:real):real; 计算三角形面积计算三角形面积ts var p:real; begin p:=(a+b+c)/2; ts:=sqrt(p*(p-a)*(p-b)*(p-c); 海伦公式海伦公式 end;Begin read(L1,L2,L3,L4,L5,L6,L7); 输入各边长输入各边长 s:=ts(L1,L2,L6)+ts(L6,L3,L7)+ts(L7,L4,L5); 计算五边形面积计算五边形面积 writeln(area=,s); 输出面积输出面积End. S1L2S2S3L1L6L3L7L5L4

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题 > 高中试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号