资源预览内容
第1页 / 共25页
第2页 / 共25页
第3页 / 共25页
第4页 / 共25页
第5页 / 共25页
第6页 / 共25页
第7页 / 共25页
第8页 / 共25页
第9页 / 共25页
第10页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
会计学1省信息技术学科省信息技术学科(xuk)奥赛培训奥赛培训第一页,共25页。第三节常量(chngling)和变量n n常量是指在程序中使用的一些(yxi)具体的数、字符、字符串和布尔值。在程序运行过程中,其值不能被更改。如123,145.88,mynameis,TRUE等n n(1)整型数:如3、-5、0等。n n(2)实型数:如3.1、-6.1E+2(科学记数法)。n n(3)字符串:是用单引号括起来的一串字符,如n nBook、96.5、-。第1页/共24页第二页,共25页。常量(chngling)的定义n nconstn n = ;n n例如n n constn n st = 60;n n a = -st + 30; n n p = 3.1415926; n n第2页/共24页第三页,共25页。n nFree Pascal中预定义了如下几个(j )常量标识符,这些常量可以直接在程序中使用。n nPi = 3.1415926535897932/的值n nMaxint = 32767/整型integer允许的最大值n nMaxlongint = 2147483647/长整型longint允许的最大值n nFALSE = 布尔假,TRUE = 布尔真第3页/共24页第四页,共25页。n n例例例例2.102.102.102.10已知半径已知半径已知半径已知半径(bnjng)r(bnjng)r(bnjng)r(bnjng)r,求圆的周长及面积。,求圆的周长及面积。,求圆的周长及面积。,求圆的周长及面积。n nProgramex2_10;Programex2_10;Programex2_10;Programex2_10;n nconstconstconstconstn nr=3.6;r=3.6;r=3.6;r=3.6;/定义了一个其值为定义了一个其值为定义了一个其值为定义了一个其值为3.63.63.63.6的实型常量的实型常量的实型常量的实型常量n nvarvarvarvarn nc,s:real;c,s:real;c,s:real;c,s:real;n nbeginbeginbeginbeginn nc:=2*pi*r;c:=2*pi*r;c:=2*pi*r;c:=2*pi*r;n ns:=pi*r*r;s:=pi*r*r;s:=pi*r*r;s:=pi*r*r;n nwriteln(c=,c:10:2);writeln(c=,c:10:2);writeln(c=,c:10:2);writeln(c=,c:10:2);n nwriteln(s=,s:10:2);writeln(s=,s:10:2);writeln(s=,s:10:2);writeln(s=,s:10:2);n nend.end.end.end.第4页/共24页第五页,共25页。变量(binling)n n变量(binling)的命名规则:“自定义标识符”的命名规则为:自定义标识符必须以字母(包含下划线“_”)开头,后面的字符可以是字母或数字n n例如n,m,rot,total等都是合法变量(binling)名。第5页/共24页第六页,共25页。变量变量(binling)(binling)的类型的类型n n整型变量用来存储整数,实型变量用来存储实数。n n变量的类型,可以是标准(biozhn)数据类型integer(存储整数)、real(存储实数)、boolean(布尔型)和char(字符型),也可以是用户自定义的各种类型。第6页/共24页第七页,共25页。整型数取值范围整型数取值范围(fnwi)(fnwi)类型数值范围占字节数格式byte0 2551不带符号8位word0 655352不带符号16位inteter-32768 327672带符号16位longint-2147483648 21474836474带符号32位int64-263+1 263-18带符号64位qword0 264-18带符号64位第7页/共24页第八页,共25页。实型(real)n n一个实型数据(shj)用来存储实数,实型包括正实数、负实数和零。n n十进制表示法n n这是人们日常使用的带小数点的表示方法。n n如3,0.0n n科学记数法n n科学记数法是采用指数形式的表示方法,如1.25105可表示成1.25E+05。第8页/共24页第九页,共25页。实型数取值范围(fnwi)类型数值范围占字节数有效位数real2.910-391.71038678位SingLe1.510-453.4103841112位DoubLe5.010-3241.71030881516位extended1.910-49511.1104932101920位Comp9.2*10189.2*101881920位第9页/共24页第十页,共25页。字符(zf)型(char)n n字符常量是由单个字符组成,所有字符采用ASCII编码,ASCII编码共有128个字符(如下表)。在程序中,通常用一对单引号将单个字符括起来表示一个字符常量。如:a,A,0等。特殊地,对于单引号字符,则要表示成4个单引号。在ASCII字符集中,按每个字符在字符集中的位置,将每个字符编号为0127,编号称为对应(duyng)字符的序号(也称作ASCII码),如字符A的序号是65,字符a的序号是97,字符0的序号的48。第10页/共24页第十一页,共25页。序号字符序号字符序号字符序号字符序号字符序号字符32空格4806480P96112p33!49165A81Q97a113q34”50266B82R98b114r35#51367C83S99c115s36$52468D84T100d116t37%53569E85U101e117u38&54670F86V102f118v3955771G87W103g119w40(56872H88X104h120x41)57973i89Y105i121y42*58 : 74J90Z106j122z43+59;75K91107k12344,6078N94110n12647/63?79O95_111o127deL第11页/共24页第十二页,共25页。n nPascalPascal提供的字符类操作函数有:提供的字符类操作函数有:n n(1 1)pred(pred(前导前导) ),succ(succ(后继后继) )n n 字母字母(zm)b(zm)b的前导是的前导是a a,b b的后继是的后继是c c,即:,即: n npred(b)=apred(b)=a,succ(b)=csucc(b)=cn npred pred 与与 succ succ 是互逆函数是互逆函数n npred(succ(b)=bpred(succ(b)=bn nsucc(pred(b)=bsucc(pred(b)=bn n(2 2)ord(ord(取字符序号取字符序号) ),chr(chr(将序号转字符将序号转字符) )n n 字母字母(zm)a(zm)a的序号是的序号是9797,序号,序号9797对应的字符是对应的字符是a,a,即:即:n nord(a)=97ord(a)=97,chr(97)=achr(97)=an nord ord 与与 chr chr是互逆函数是互逆函数n nchr(ord(a)=achr(ord(a)=an nord(chr( 97 ) =97ord(chr( 97 ) =97n n(3 3)upcaseupcase(小写转大写)(小写转大写)第12页/共24页第十三页,共25页。布尔型(boolean)布尔型常量仅有两个值:真和假,分别用标准常量名TRUE和FALSE表示(biosh)。它们的序号分别为1和0。第13页/共24页第十四页,共25页。n n【分析】题目中有【分析】题目中有5 5位小朋友,他们初始时糖果位小朋友,他们初始时糖果(tnggu)(tnggu)的数目不确定,用的数目不确定,用a,b,c,d,ea,b,c,d,e分别分别存储存储5 5个小朋友的糖果个小朋友的糖果(tnggu)(tnggu)数,初始值由键盘输入。数,初始值由键盘输入。n n程序如下:程序如下:n nProgram ex2_11;Program ex2_11;n nVar a,b,c,d,e : integer;Var a,b,c,d,e : integer;n nbeginbeginn n readln(a,b,c,d,e); readln(a,b,c,d,e);n n a := a div 3; b := b+a; a := a div 3; b := b+a;e := e+a;e := e+a;/1/1号小朋友分糖号小朋友分糖n n b := b div 3; b := b div 3; c := c+b;c := c+b;a := a+b;a := a+b;/2/2号小朋友分糖号小朋友分糖n n c := c div 3; b := b+c; c := c div 3; b := b+c;d := d+c;d := d+c;/3/3号小朋友分糖号小朋友分糖n n d := d div 3; c := c+d; d := d div 3; c := c+d;e := e+d;e := e+d;/4/4号小朋友分糖号小朋友分糖n n e := e div 3; e := e div 3; d := d+e;d := d+e;a := a+e;a := a+e;/5/5号小朋友分糖号小朋友分糖n n writeln(a, ,b, ,c, ,d, ,e); writeln(a, ,b, ,c, ,d, ,e); / /每个值之间空格隔开每个值之间空格隔开n nend.end.第14页/共24页第十五页,共25页。n nA And ,or ,not nd ,or ,not ABNOT AA AND BA OR BFALSEFALSETRUEFASLEFASLEFALSETRUETRUEFALSETRUETRUEFALSEFALSEFASLETRUETRUETRUEFALSETRUETRUE第15页/共24页第十六页,共25页。第五节顺序(shnx)结构程序设计例例2.112.11某幼儿园里,有某幼儿园里,有5 5个小朋友编号为个小朋友编号为1 1,2 2,3 3,4 4,5 5,他们按自己的编号顺序围,他们按自己的编号顺序围坐在一张圆桌旁。他们身上都有若干个糖果坐在一张圆桌旁。他们身上都有若干个糖果( (键盘输入键盘输入) ),现在他们做一个分糖果游戏。,现在他们做一个分糖果游戏。从从1 1号小朋友开始,将自己的糖果均分三份号小朋友开始,将自己的糖果均分三份(如果(如果(rgu)(rgu)有多余的糖果,则立即吃掉)有多余的糖果,则立即吃掉),自己留一份,其余两份分给他的相邻的两,自己留一份,其余两份分给他的相邻的两个小朋友。接着个小朋友。接着2 2号、号、3 3号、号、4 4号、号、5 5号小朋号小朋友同样这么做。问一轮后,每个小朋友手上友同样这么做。问一轮后,每个小朋友手上分别有多少糖果。分别有多少糖果。第16页/共24页第十七页,共25页。例例2.122.12分钱游戏。甲、乙、丙三人共有分钱游戏。甲、乙、丙三人共有2424元钱,先由甲分钱给乙、丙两人,所分给的元钱,先由甲分钱给乙、丙两人,所分给的数与各人已有数相同数与各人已有数相同(xintn)(xintn);接着由;接着由乙分给甲、丙,分法同前;再由丙分钱给甲乙分给甲、丙,分法同前;再由丙分钱给甲、乙,分法亦同前。经上述三次分钱之后,、乙,分法亦同前。经上述三次分钱之后,每个人的钱数恰好一样多。每个人的钱数恰好一样多。 求原先各人的求原先各人的钱数分别是多少钱数分别是多少? ?第17页/共24页第十八页,共25页。n n【分析【分析【分析【分析(fnx)(fnx)】 设甲、乙、丙三人的钱数分别为设甲、乙、丙三人的钱数分别为设甲、乙、丙三人的钱数分别为设甲、乙、丙三人的钱数分别为A A,B B,C C。用倒推。用倒推。用倒推。用倒推( (逆序逆序逆序逆序) )算法,算法,算法,算法, 从最后结果入手,按从最后结果入手,按从最后结果入手,按从最后结果入手,按反相顺序,分步骤推算出每次各人当时的钱数反相顺序,分步骤推算出每次各人当时的钱数反相顺序,分步骤推算出每次各人当时的钱数反相顺序,分步骤推算出每次各人当时的钱数 : : (在每个步骤中,各人钱数分别存在(在每个步骤中,各人钱数分别存在(在每个步骤中,各人钱数分别存在(在每个步骤中,各人钱数分别存在A A、B B、C C中)中)中)中)n n步骤步骤步骤步骤 : : A=8A=8,B=8B=8,C=8C=8 / /这是最后结果的钱数,三人都一样多这是最后结果的钱数,三人都一样多这是最后结果的钱数,三人都一样多这是最后结果的钱数,三人都一样多 n n步骤步骤步骤步骤 : : A=A/2 (=4)A=A/2 (=4),B=B/2 (=4)B=B/2 (=4),C=A+B+C(=16)C=A+B+C(=16)n n /A /A,B B未得到丙分给的钱时,只有结果数的一半;未得到丙分给的钱时,只有结果数的一半;未得到丙分给的钱时,只有结果数的一半;未得到丙分给的钱时,只有结果数的一半;C C应包含给应包含给应包含给应包含给A A,B B及本身数三者之和及本身数三者之和及本身数三者之和及本身数三者之和 n n步骤步骤步骤步骤 : : A=A/2 (=2)A=A/2 (=2),C=C/2 (=8)C=C/2 (=8),B=A+B+C(=14)B=A+B+C(=14)n n /A /A,C C未得到乙分给的钱时,只有巳有数的一半;未得到乙分给的钱时,只有巳有数的一半;未得到乙分给的钱时,只有巳有数的一半;未得到乙分给的钱时,只有巳有数的一半;B B应包含给应包含给应包含给应包含给A A,C C及本身数三者之和及本身数三者之和及本身数三者之和及本身数三者之和n n步骤步骤步骤步骤 : : B=B/2 (=7)B=B/2 (=7),C=C/2 (=4)C=C/2 (=4),A=A+B+C(=13)A=A+B+C(=13) n n /C /C未得到甲分给的钱时,只有巳有数的一半;未得到甲分给的钱时,只有巳有数的一半;未得到甲分给的钱时,只有巳有数的一半;未得到甲分给的钱时,只有巳有数的一半;A A应包含给应包含给应包含给应包含给B B,C C及本身数三者之和及本身数三者之和及本身数三者之和及本身数三者之和 n n步骤步骤步骤步骤 : : 输出输出输出输出A A(=13=13),),),),B B(=7=7),),),),C C(=4=4) n n / /此时的此时的此时的此时的A A,B B,C C 就是三人原先的钱数就是三人原先的钱数就是三人原先的钱数就是三人原先的钱数第18页/共24页第十九页,共25页。n nProgram ex2_12;Program ex2_12;n nvar avar a,b b,c : integerc : integer;n nbeginbeginn n a : =8 a : =8; b : =8 b : =8; c : =8 c : =8;/ /对应于步骤对应于步骤(bzhu)(bzhu)n n a : =a div 2 a : =a div 2; b : =b div 2 b : =b div 2;c : =a+b+cc : =a+b+c; / /对应于步骤对应于步骤(bzhu)(bzhu)n n a : =a div 2 a : =a div 2; c : =c div 2 c : =c div 2; b : =a+b+c b : =a+b+c; / /对应于步骤对应于步骤(bzhu)(bzhu)n n b : =b div 2 b : =b div 2; c : =c div 2 c : =c div 2; a : =a+b+c a : =a+b+c; / /对应于步骤对应于步骤(bzhu)(bzhu)n n writeln(a= writeln(a=,a a, : 4 : 4,b=b=,b b, : 4 : 4,c=c=,c); c); / /输出输出n nend.end.n n 细心观察,会发现本程序语句的顺序很关键。此例用反推顺序细心观察,会发现本程序语句的顺序很关键。此例用反推顺序( (逆序逆序) ),按步骤,按步骤(bzhu)(bzhu)正确推算出各变量的值。正确推算出各变量的值。n n 本程序本程序writelnwriteln语句的输出项含有语句的输出项含有( : 4 )( : 4 ),这里的冒号用来指定该项显示所占宽度,此处是输出,这里的冒号用来指定该项显示所占宽度,此处是输出4 4个空格即个空格即( (空格项占空格项占4 4格格) )。第19页/共24页第二十页,共25页。n n例例2.132.13求一元二次方程求一元二次方程x2+3x+2=0x2+3x+2=0的两个的两个(lin)(lin)实数根。实数根。第20页/共24页第二十一页,共25页。n n【分析】方程的系数是常量,分别(fnbi)用a,b,c表示,可运用数学上现成的求根公式求方程的根,采取如下方法 : n n 先求出d=b2-4ac;(求根公式中需用开方运算的那部分)n n 再用求根公式算出x1,x2的值。n n 输出x1,x2.第21页/共24页第二十二页,共25页。n n程序如下:程序如下:程序如下:程序如下:n nProgramex2_13Programex2_13Programex2_13Programex2_13;n nconsta=1consta=1consta=1consta=1;b=3b=3b=3b=3;c=2c=2c=2c=2;/常量说明,常量说明,常量说明,常量说明,a a a a,b b b b,c c c c表示方程系数表示方程系数表示方程系数表示方程系数n nvard:integervard:integervard:integervard:integer;/d/d/d/d为整型变量为整型变量为整型变量为整型变量n nx1x1x1x1,x2:realx2:realx2:realx2:real;/X1/X1/X1/X1,X2X2X2X2为实型变量为实型变量为实型变量为实型变量n nbeginbeginbeginbeginn nd:=b*b-4*a*cd:=b*b-4*a*cd:=b*b-4*a*cd:=b*b-4*a*c;n nx1:=(-b+sqrt(d)/(2*a)x1:=(-b+sqrt(d)/(2*a)x1:=(-b+sqrt(d)/(2*a)x1:=(-b+sqrt(d)/(2*a);/求方程的根求方程的根求方程的根求方程的根n nx2:=(-b-sqrt(d)/(2*a)x2:=(-b-sqrt(d)/(2*a)x2:=(-b-sqrt(d)/(2*a)x2:=(-b-sqrt(d)/(2*a);n nwriteln(x1=writeln(x1=writeln(x1=writeln(x1=,x1x1x1x1,:6:6:6:6,x2=x2=x2=x2=,x2)x2)x2)x2);/输出结果输出结果输出结果输出结果n nreadln/readln/readln/readln/等待输入一个等待输入一个等待输入一个等待输入一个(y)(y)(y)(y)回车键回车键回车键回车键n nend.end.end.end.n n本程序中的本程序中的本程序中的本程序中的a a a a,b b b b,c c c c均为常量;变量均为常量;变量均为常量;变量均为常量;变量d d d d是整数类型,而变量是整数类型,而变量是整数类型,而变量是整数类型,而变量x1x1x1x1,x2x2x2x2则是实数类型,因为运算式中的则是实数类型,因为运算式中的则是实数类型,因为运算式中的则是实数类型,因为运算式中的Sqrt(d)Sqrt(d)Sqrt(d)Sqrt(d)开开开开平方运算和平方运算和平方运算和平方运算和”/“”/“”/“”/“除法运算使结果为实数。除法运算使结果为实数。除法运算使结果为实数。除法运算使结果为实数。Sqrt()Sqrt()Sqrt()Sqrt()是开根号函数,是是开根号函数,是是开根号函数,是是开根号函数,是PascalPascalPascalPascal系统的一个系统的一个系统的一个系统的一个(y)(y)(y)(y)标准函数。标准函数。标准函数。标准函数。第22页/共24页第二十三页,共25页。 供参考的网络资源供参考的网络资源供参考的网络资源供参考的网络资源第23页/共24页第二十四页,共25页。内容(nirng)总结会计学。(1)整型数:如3、-5、0等。第1页/共24页。第2页/共24页。Free Pascal中预定(ydng)义了如下几个常量标识符,这些常量可以直接在程序中使用。第4页/共24页。第5页/共24页。一个实型数据用来存储实数,实型包括正实数、负实数和零。科学记数法是采用指数形式的表示方法,如1.25105可表示成1.25E+05。第8页/共24页。9.2*10189.2*1018。供参考的网络资源。第23页/共24页第二十五页,共25页。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号