Pascal初级习题(赋值语句----过程和函数).doc

Pascal初级习题(赋值语句----过程和函数).doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Pascal初级习题(赋值语句----过程和函数).doc

PAGE  PAGE 2 每周回顾与作业(六)____函数与过程 函 数过 程function 函数名 (形式参数表):类型; procedure 过程名 (形式参数表); 函数调用的一般格式: <函数名>或<函数名>(实在参数表)过程调用是通过一条独立的过程调用语句来实现 <过程名> 或 <过程名>(实在参数表)用过程来实现,通过全局变量带回结果 program hs_exam1; var i:integer;s:longint; procedure fac(n:integer); var k:integer; t:longint; begin t:=1; for k:=2 to n do t:=t*k; s:=s+t; end; begin for i:=1 to 10 do fac(i); write(s=,s); readln; end. 例1、计算s:=1+2!+3!+……10!的函数 用函数来实现,通过函数名带回结果 program hs_exam1; var i:integer;s :longint; function fac(n:integer):longint; var k:integer; t:longint; begin t:=1; for k:=2 to n do t:=t*k; fac:=t; { 将计算结果值赋给函数,返回调用处 } end; begin for i:=1 to 10 do s:=s+fac(i); write(s=,s); readln; end. 例2、求正整数A和B之间的完全数(AB)。 分析:所谓完全数是指它的小于该数本身的因子之和等于它本身,如6=1+2+3,6即是一个完全数。因此我们可定义一个布尔型函数perfect(x),若x是完全数,其值为TURE,否则为FALSE。 program ex7_1; var i,a,b : integer; function perfect(x:integer):boolean; var k,sum : integer; begin {累加x所有小于本身的因数}  sum:=1;  for k:=2 to x div 2 do if x mod k=0 then sum:=sum+k; {判断x是否是完全数}  perfect:=x=sum; {将结果赋值给函数名} end;{end of perfect} begin{主程序开始}  write(Input a,b:);  repeat {输入0ab} readln(a,b); until (a0)and(b0)and(ab); writeln(List of all perfect numbers:); {从a到b逐个判断,是完全数则打印出来 for i:=a to b do if perfect(i) then writeln(i); end. 例3:编写一个给一个分数约分的程序。 program ex7_6;  变量参数 var a,b:integer; procedure common(var x,y:integer); var a,b,r:integer; begin{求x,y的最大公约数} a:=x;b:=y; repeat  r:=a mod b; a:=b; b:=r; until r=0; x:=x div a; y:=y div a; {对x,y进行约分} end;  begin  readln(a,b); common(a,b); writeln(a,b:5); end. 如输入:Input a,b=12 8 则输出: 3 2 练习 指出下列程序中的全程变量、局部变量、变量参数、数值参数,写出程序运行后的输出结果。 program pf; var a , b , c : integer; procedure change (var x : integer; y : integer); var m,n : integer; begin m := x * y; x := x + 1; y := y + 10; n := x + y; writeln (‘ x= , x , y= , y , ‘ m= , m , n=, n ); end; begin a := 3; b := 3; change ( a , b ); change ( a , b ); change ( a , b ); end. Program ex1-6-1; var a

文档评论(0)

170****0532 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8015033021000003

1亿VIP精品文档

相关文档