ImageVerifierCode 换一换
格式:DOC , 页数:7 ,大小:76.50KB ,
资源ID:7675448      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7675448.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(第一章简单程序.doc)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

第一章简单程序.doc

1、第一章 简单程序 无论做任何事情,都要有一定的方式方法与处理步骤。计算机程序设计比日常生活中的事务处理更具有严谨性、规范性、可行性。为了使计算机有效地解决某些问题,须将处理步骤编排好,用计算机语言组成“序列”,让计算机自动识别并执行这个用计算机语言组成的“序列”,完成预定的任务。将处理问题的步骤编排好,用计算机语言组成序列,也就是常说的编写程序。在Pascal语言中,执行每条语句都是由计算机完成相应的操作。编写Pascal程序,是利用Pascal语句的功能来实现和达到预定的处理要求。“千里之行,始于足下”,我们从简单程序学起,逐步了解和掌握怎样编写程序。 第一节  Pascal 程序结构和

2、基本语句 在未系统学习Pascal语言之前,暂且绕过那些繁琐的语法规则细节,通过下面的简单例题,可以速成掌握Pascal程序的基本组成和基本语句的用法,让初学者直接模仿学习编简单程序。  [例1.1]编程在屏幕上显示“Hello World!”。   Pascal程序: Program ex11; Begin   Writeln(‘Hello World!’);   ReadLn; End.        这个简单样例程序,希望大家的程序设计学习能有一个良好的开端。程序中的Writeln是一个输出语句,它能命令计算机在屏幕上输出相应的内容,而紧跟Writeln语句后是一对圆括

3、号,其中用单引号引起的部分将被原原本本地显示出来。  [例1.2]已知一辆自行车的售价是300元,请编程计算a辆自行车的总价是多少? 解:若总售价用m来表示,则这个问题可分为以下几步处理:  = 1 \* GB3 ①从键盘输入自行车的数目a;  = 2 \* GB3 ②用公式  m=300*a  计算总售价;  = 3 \* GB3 ③输出计算结果。 Pascal程序:   Program Ex12;                               {程序首部}   Var a,m : integer;                              {说

4、明部分}   Begin                                                     {语句部分}     Write(‘a=’);     ReadLn(a);                                          {输入自行车数目}     M := 300*a;                                        {计算总售价}     Writeln(‘M=’,m);                                 {输出总售价}     ReadLn;    

5、                                          {等待输入回车键}   End.   此题程序结构完整,从中可看出一个Pascal 程序由三部分组成: (1)程序首部 由保留字Program开头,后面跟一个程序名(如:Exl1);其格式为:              Program  程序名; 程序名由用户自己取,它的第一个字符必须是英文字母,其后的字符只能是字母或数字和下划线组成,程序名中不能出现运算符、标点符和空格。 (2)说明部分 程序中所用的常量、变量,或类型、及过程与自定义函数,需在使用之前预先说明,定义数据的属性(类型)。[例1

6、2] 程序中 Var S,R,C: Real; 是变量说明,此处说明S,R,C三个变量均为实数类型变量。只有被说明为某一类型的变量,在程序中才能将与该变量同类型的数值赋给该变量。变量说明的格式为:                Var  变量表:类型; (3)语句部分 指由保留字 Begin (开始)至 End. (结尾)之间的语句系列,是解决问题的具体处理步骤,也是程序的执行部分。 Pascal程序不管是哪部分,每句末尾都必须有分号(;),但允许最接近 End 的那个语句末尾的分号省略;程序结束的End末尾必须有圆点(. ),是整个程序的结束标志。 程序中花括号“{  }”之间

7、的部分为注释部分。 Pascal程序结构可归纳用如下来表示:     Program  程序名;                  程序首部        标号说明; (Label)        常量说明; (Const)            说明部分      类型说明; (Type)       变量说明; (Var)       过程或函数说明;                             Begin                      程序体 (主程序)               语句系列;                    语句部分

8、         End.                                             把处理问题的步骤编成能从上到下顺序执行的程序,是简单程序的基本特征。再来分析下面两道例题的Pascal程序结构和继续学习基本语句。   [例1.3]编程计算半径为R的圆的面积和周长。 解:这是一个简单问题,按数学方法可分以下几步进行处理:     ① 从键盘输入半径的值R;          {  要求告诉圆的半径R }     ② 用公式  S=πR2  计算圆面积;     ③ 用公式  C=2πR  计算圆周长;     ④ 输出计算结果。 Pasc

9、al程序:   Program  Ex13;                           {程序首部 }   Var  R,S,C: Real;          {说明部分 }   Begin                                             {语句部分 }     Write ('R=?');     Readln(R);                 {输入半径 }     S:=Pi*R*R;                {圆面积公式S=πR2}     C:=2*Pi*R;                {圆周长公式C=

10、2πR}     Writeln('S=',S);            {输出结果 }     Writeln('C=',C);                           Readln                     {等待输入回车键}                     End. 程序中Pi是Pascal提供的标准函数,它返回圆周率的近似值:3.1415926…。 (:=)是赋值符号,赋值语句的格式为:          变量:=表达式; 赋值语句的作用是将:=右边表达式的值记录到左边的变量中。 Writeln是输出语句,输出语句有三种格式:

11、       ① Write (输出项1,输出项2) ;   {执行输出后光标不换行}        ② Writeln (输出项1,输出项2) ; {执行输出后光标换到下一行}        ③ Writeln                       {仅输出空白且光标换到下一行} Writeln语句后面的圆括号以内部分均为输出项,可以是多项,各项间用逗号分隔; 对单引号里的内容按照引号内的原样(字符)输出显示。如果输出项是表达式,则只输出表达式的值,而不是表达式本身。   [例1.4] 输出两个自然数相除的商和余数。 解:设被除数、除数、商和余数,分别为A,B,C,D,均为

12、变量,且都是整数类型。题中未给出具体的自然数A、B,可采用键盘输入方式。    ① 给出提示,从键盘输入a, b;     ② 显示两数相除的数学形式;    ③ 求出a除以b的商c;    ④ 求出a除以b的余数d;    ⑤ 紧接等式后面输出显示商和余数。 Pascal程序:   Program Ex14;     Var a,b,c,d : integer;     Begin       Write('INPUT A,B:');       {给出提示信息}       Readln(a,b);                {输入a,b}       Wri

13、teln;                     {输出一空行}       Write(a,'/',b,'=');          {输出等式之后不换行}       c:=a div b;                   {整除运算,取商的整数部分}       d:=a mod b;                  {相除求余运算,取商的余数部分}       Writeln(C,'…',d);           {输出后自动换行 }       Readln                        {等待输入回车键 }     End. 执行本程序中第一

14、个Write语句,输出其引号以内的一串提示信息,是给紧接着的输入语句提供明确的提示(要求),有“一目了然,人机对话”之效果。 Readln是一个特殊的输入语句,要求输入一个回车(换行)才能往下执行。 Readln是输入语句,它的一般格式为:               ① Read     (变量1,变量2);                ② Readln   (变量1,变量2);                ③ Readln 前两种格式均要从键盘给变量输入数据,输入时,所键入的数据之间以空格为分隔,以回车为输入结束。若多输入了数据(即数据个数超过变量个数),Read语

15、句读完数据之后,能让后续的读语句接着读取多下来的数据;而Readln 语句对本行多输入的数据不能让后续语句接着读取多下来的数据。为了防止多输入的数据影响下一个输入语句读取数据,建议尽量使用Readln语句输入数据。第三种格式不需输入数据,只需按入一个回车键。   [例1.5]自然数的立方可以表示为两个整数的平方之差,比如43=102-62,请输出自然数1996的这种表示形式。(这里的43用自乘三次的形式4*4*4表示;102也用自乘二次的形式10*10表示) 解:此题没有现成的计算公式能直接利用,但可以自行推出处理方法或构建适当的运算公式,按着构想的处理方案编排出各步骤。 设这个自然数

16、为N,两个平方数分别为X,Y, 将问题表示为求 N3=X2—Y2 ① 先找出X的值,仔细观察题中的示例,用数学方法归纳可得出X=N*(N+1)/2;(构成本题可用的计算公式) ② 再仔细观察,发现Y值比X小一个N值,即 Y=X—N; ③ 输出等式 N3=X2—Y2 或N*N*N=X*X—Y*Y Pascal程序:   Program  Ex15;     Const  N=1996;       {常量说明 }     Var    X,Y: Longint;  {变量说明,此题计算中的数值较大,用长整型 }       Begin         X:=N*(N+1) di

17、v 2;  { div 是整除运算 }         Y:=X-N;         Writeln(N,'*',N,'*', N,'=', X,'*', X,'—',Y,'*',Y);   { 输出结果 }         Readln       End.  本程序中N是常量,X,Y是变量,为长整数类型(Longint); 程序中的div 是整除运算,其结果只取商的整数部分;   [例1.6] 求一元二次方程x2+3x+2=0的两个实数根。 解:方程的系数是常量,分别用a,b,c表示,可运用数学上现成的求根公式求方程的根,采取如下方法:   ① 先求出d=b2-4ac

18、求根公式中需用开方运算的那部分)   ② 再用求根公式算出x1,x2的值。(x1,x2 = ? )   ③ 输出x1,x2.   Pascal程序:     program Ex16;     Const a=1;                        {常量说明 }          b=3;          c=2;                         {a,b,c表示方程系数}     Var  d  : integer;                   {d为整型变量}          X1,X2: Real;             

19、     {X1,X2为实型变量}      Begin        d:=b*b-4*a*c;        x1:=(-b+sqrt(d))/(2*a);              {求方程的根}        x2:=(-b-sqrt(d))/(2*a);        Writeln('X1=',X1,'':6,'X2=',X2);{输出结果}        Readln                             {等待输入一个回车键}      End.  本程序中的a,b,c均为常量;变量d是整数类型,而变量x1,x2则是实数类型,因为运算式中的S

20、qrt(d)开平方运算和(/)除法运算使结果为实数。Sqrt( ) 是开平方函数,是Pascal系统的一个标准函数。   习题1.1   模仿例题编程 1. 加法计算器:编程由键盘输入两个整数a和b,计算出它们的和并输出到屏幕上。 2. 某梯形的上底、下底和高分别为8,12,9,求该梯形的面积。 3. 求边长为5.6  的正立方体表面积。 4. 已知图园柱体的高为12,底面园的半径为7,求园柱体表面积。 5. 计算某次考试语文、数学、英语和计算机等四科的总成绩与平均成绩。 (请用输入语句从键盘输入各科成绩分) 第二节  顺序结构程序与基本数据类型 前面的简单程序已体现出

21、处理问题步骤、思路的顺序关系,这就是顺序结构程序。 [例1.7]交换两个变量的值:由键盘输入两个正整数A和B,编程交换这两个变量的值。 解:交换两个变量的值,可以想象成交换两盒录音带(称为A和B)的内容,可以按以下步骤处理: 步骤①:拿一盒空白录音带C为过渡,先将A翻录至C; 步骤②:再将B翻录至A; 步骤③:最后将C翻录至B。 这样操作,可达到题目要求。 Pascal程序: Program Exam17; Var a,b,c   : integer; Begin   Write(‘A,B=’);   Readln(a,b);   C:= A;            

22、    {等价于步骤1}   A := B;                {等价于步骤2}   B := C;                {等价于步骤3}   Writeln(A,B); End. [例1.8] 分钱游戏。甲、乙、丙三人共有24元钱,先由甲分钱给乙、丙两人,所分给的数与各人已有数相同;接着由乙分给甲、丙,分法同前;再由丙分钱给甲、乙,分法亦同前。经上述三次分钱之后,每个人的钱数恰好一样多。 求原先各人的钱数分别是多少? 解:设甲、乙、丙三人的钱数分别为A,B,C。用倒推(逆序)算法, 从最后结果入手,按反相顺序,分步骤推算出每次各人当时的钱数:(在每个步骤中,

23、各人钱数分别存在A、B、C中)   步骤①: A=8 B=8 C=8        {这是最后结果的钱数,三人都一样多 }   步骤②: A=A/2 (=4)     B=B/2 (=4)     C=A+B+C(=16)     { A,B未得到丙分给的钱时,只有结果数的一半;C应包含给A,B及本身数三者之和 }   步骤③: A=A/2 (=2)     C=C/2 (=8)     B=A+B+C(=14)      {A,C未得到乙分给的钱时,只有巳有数的一半;B应包含给A,C及本身数三者之和 }   步骤④: B=B/2 (=7)     C=C/2 (=4)     A=A

24、B+C(=13)      C未得到甲分给的钱时,只有巳有数的一半;A应包含给B,C及本身数三者之和 }   步骤⑤: 输出A(=13)B(=7)C(=4){此时的A,B,C 就是三人原先的钱数 } Pascal程序: Program Exam18; Var a,b,c: integer; Begin   a:=8; b:=8; c:=8;                                         {对应于步骤①} a:=a div 2; b:=b div 2; c:=a+b+c;                {对应于步骤②}   a:=a div

25、 2; c:=c div 2; b:=a+b+c;                {对应于步骤③}   b:=b div 2; c:=c div 2; a:=a+b+c;                {对应于步骤④}   Writeln('a=',a,'  ': 4,'b=',b,'  ': 4,'c=',c) ;  {输出}   Readln End. 细心观察,会发现本程序语句的顺序很关键。此例用反推顺序(逆序),按步骤正确推算出各变量的值。当然,有的问题可按正序步骤编程,这类程序都称为顺序程序。 本程序Writeln语句的输出项含有(  '  ' :  4 ),这里的冒号用

26、来指定该项显示所占宽度,此处是输出4个空格即(空格项占4格)。   [例1.9] 有鸡兔同笼,头30,脚 90,究竟笼中的鸡和兔各有多少只? 解:设鸡为J只,兔为T只,头为H,脚为F,则:         J+T=30                 ① 2*J+4*T=90     ② 解此题暂不必采用数学上直接解方程的办法,可采用“假设条件与逻辑推理”的办法:  假设笼中30 个头全都是兔,那么都按每头4只脚计算,总脚数为(4*H),与实际脚数 ( F )之差为(4*H—F),如果这个差=0,则笼中全是兔(即鸡为0只);如果这个差值 >0,说明多计算了脚数,凡是鸡都多给算了两

27、只脚,用它除以2就能得到鸡的只数,处理步骤为:   ①  J=(4*H—F)/2       {先用脚数差值除以2算出鸡的只数}   ②  T=H—J                {再用总头数减鸡数算出免的只数} 按此方法,这两步运算必须注意先后顺序才会符合运算逻辑。 Pascal程序: Program Exam16; Const H=30;                 {常量说明 }      F=90; Var J,T: byte;            {为字节类型的整数 } Begin   J:=(4*H-F) div 2;    {整除运算 }   T:=

28、H-J   Writeln ('J=',J,'  ': 6,'T= ',T ) ;   Readln End. 本程序中H,F为常量,变量J,T为byte类型,属于整数类型。 Pascal定义了五个标准整数类型,如下表所示: 类型 取值范围 占字节数 格式 Shortint(短整型) -128..127 1 带符号8位 Integer (整型) -32768..32767 2 带符号16位 Longint(长整型) -2147483648..2147483647 4 带符号32位 Byte (字节型) 0..255 1 无符号8位 Word 

29、 (字型) 0..65535 2 无符号16位  在前面程序中常用的数据类型除整数类型,还有实数类型。Pascal 还定义了五个标准实数类型,列表所示如下: 类型 取值范围 占字节数 有效数字 Real 2.9×10-39~1.7×1038 6 7~8位 Single 1.5×10-45~3.4×1038 4 11~12位 Double 5.0×10-324~1.7×10308 8 15~16位 Extended 1.9×10-4951~1.1×104932 10 19~20位 Comp -263+1~238-1 8 19~20位  

30、 在Turbo Pascal 中实数的表示用科学记数法,可认为由三部分组成:               # .  ## E +## 或  # . ## E -## ①  #.##表示有效数字; ② E表示以10为底的幂; ③ +##或-##是指数部分,+号可省略。 例如:   1.7E+38 可写成1.7E38 (等同于1. 7×1038 )。 在实数类型定义下,即使是整数,在程序执行时系统也将自动转换成科学记数形式,试请运行下面程序并注意观察运行结果: Program Exam17; Var x: real;                   {x为实数类型 } Begin

31、   X:=180;                 {把整数180赋给实数类型变量X}   Writeln ('x=',x) ;      {输出的x自动表示成实数形式 }   Readln End. 习题1. 2 1.已知△ABC中的三边长分别为25.76,74.03,59.31,求△ABC的面积。     ( 计算公式: S=                                          。 其中P =                 ) 2.某车棚存有自行车和三轮车共65辆,它们的轮子数合计为150个。求该棚内存有的自行车和三轮车各是多少辆? 3.甲、乙、丙三人分别有磁带36,48,64盒。先由甲把自己的磁带平均分为三份,分给乙、丙各一份,自己留下一份;接着是乙,最后是丙,都按甲的方法处理。编程输出甲、乙、丙在上述过程中各人的磁带数分别是多少? (输出所有的中间结果) 4.五位好朋友相聚。第一位朋友带来了很多糖块赠送给各位朋友,使每人的糖块在各自原有的基础上翻了一倍;接着第二位好友也同样向每人赠送糖块,他同样使每人的糖块在各人已有的数量上翻了一倍;第三、第四、第五位好友都照此办理。经过这样的赠送之后,每人的糖块恰好都为32块。问各位好友原先的糖块数分别是多少? 7

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服