NOIP(全国青少年信息学奥林匹克联赛)复习Pascal.ppt
《NOIP(全国青少年信息学奥林匹克联赛)复习Pascal.ppt》由会员分享,可在线阅读,更多相关《NOIP(全国青少年信息学奥林匹克联赛)复习Pascal.ppt(29页珍藏版)》请在三一办公上搜索。
1、一、复习回顾,基本结构,顺序结构,选择结构,循环结构,过程和函数,标准类型,整型 integer 0-2 3678,实型 real 两种表示:小数表示法、科学表示法,字符型 char 如:a、A、,布尔型 boolean 如:真 true 假 false,文件类型 file,常量:指在程序执行过程中值不能改变的量。,变量:指在程序执行过程中值可以改变的量。,表达式和函数:,常量的说明:如:圆周率 Const pi=3.14;,注意:变量必须先说明再使用!变量说明:VAR x:integer;,算术运算符:div(整除)34 div 5=6 mod(取余)34 mod 5=4,常用函数:,函数名
2、,功能,举例,Abs(x),求变量的绝对值,Abs(-5.4)=5.4,Sqr(x),求变量x的平方,Sqr(2)=4,Sqrt(x),求变量x的平方根,Sqrt(4)=2,Chr(x),取ASCII码的值,Chr(48)=0,Ord(x),取字符的ASCII值,ord(A)=65,Trunc(x),截尾函数,Trunc(1.99)=1,Round(x),舍入取整,Round(-3.9)=-4 round(-3.1)=-3Round(3.9)=4 round(3.1)=3,pred,前导函数,Pred(2)=1 pred(b)=a,succ,后继函数,Succ(1)=2 Succ(a)=b,表
3、达式,1、写出一个整数被3整除所得余数的表达式。,x mod 3,2、写出计算圆的周长表达式。,2*pi*r,3、将任一大写字母转换成小写字母。,Chr(ord(x)+ord(a)ord(A),4、写出表示年龄大于50岁的表达式。,N50,5、写出一个数既能被3整除又能被5整除的表达式。,(x mod 3=0)and(x mod 5=0),基本语句:,一、赋值语句 变量:=表达式;,功能:先计算后赋值,二、输入语句 read/readln read(变量1,变量2,。)readln(变量1,变量2,。),功能:依次从键盘上读入数据。,三、输出语句 write/writeln,write(变量1
4、,变量2,。)writeln(变量1,变量2,。),例:从键盘输入两个数,交换后输出。,Program ex_1(input,output);var a,b,c:integer;begin writeln(请输入两个数:);read(a,b);c:=a;a:=b;b:=c;writeln(交换后的值是:,a:5,b:5)End.,程序首部,说明部分,语句部分,运行:请输入两个数:,3 4,交换后的值是:4 3,例:从键盘输入一个三位数,分离出百位、十位和个位并输出。,Program ex_2(input,output);var x,ge,shi,bai:integer;begin writel
5、n(请输入一个三位数:);read(x);ge:=x mod 10;bai:=x div 100;shi:=(x-bai*100)div 10;writeln(bai=,bai,shi=:10,shi,ge=:10,ge)End.,程序首部,说明部分,语句部分,运行结果:请输入一个三位数:,836,bai=8 shi=3 ge=6,四、选择结构的程序设计,格式一:If 条件 then 语句1;,格式二:If 条件 then 语句1 else 语句2;,格式一功能:如果条件成立则执行then后的语句1,否则执行该条件语句的下一条语句。,格式二功能:如果条件成立则执行then后的语句1,否则执行e
6、lse后的语句2。,例:输入一个数X,要求不使用ABS函数,输出其绝对值。,分析:首先输入一个数给X,然后判断X是否小于0,如果是则(-X)为X的绝对值,否则输出X。,Program ex_3(input,output);var x:real;begin readln(x);if x0 then writeln(-x)else writeln(x)End.,例4、将输入的两个非负实数中较大的放在max里,小的放在min里,并输出。,算法:(1)输入两个数max,min(2)判断max是否小于min,如果小于min,则交换max和min的值,(3)输出max,min的值,Program ex_4
7、(input,output);var max,min,t:real;begin read(max,min);if maxmin then begin t:=max;max:=min;min:=t end;writeln(max,min)End.,If 语句嵌套,在格式一或格式二中,当语句1或语句2本身也是一个条件语句时,称该语句为条件语句嵌套。,注意:1、else语句总是和与它最近的那个还没有其他的else配对的if/then配对。如果内层的else子句要省,则写一个空语句或采用复合语句,即增加语句括号。,2、在书写程序时采用缩进式,以增强程序的可读性。,Case语句,Case 表达式 of
8、常数表1:语句1;常数表2:语句2;。常数表n:语句n;Else 语句n+1End;,表达式为有序类型,整型、布尔型、字符型,例5:输入两个数(不为0)及一个算术运算符,输出其运算结果。,Program ex_5(input,output);var x,y,s:real;ch:char;begin writeln(请输入x、y 以及运算符:);readln(x,y);readln(ch);case ch of+:s:=x+y;-:s=x-y;*:s=x*y;/:s=x/y end;Writeln(x,ch,y,=,s)end.,例6、打印某年某月有几天。,分析:某年某月的天数分为这几种情况:(
9、1)每年的1,3,5,7,8,10,12这七个月每月为31天。(2)每年的4,6,9,11这四个月为30天;(3)2月又分为两种情况:闰年为29天,否则为28天。,判断闰年的条件:年数能被4整除,并且不能被100整除,但可以被400整除的年份为闰年。(year mod 4=0)and(year mod 1000)or(year mod 400=0),Program ex_6(input,output);var year,month,len:integer;begin writeln(input year and month);readln(year,month);,Case month of
10、1,3.5,7,8,10,12:len:=31;4,6,9,11:len:=30;2:begin if(year mod 4=0)and(year mod 1000)or(year mod 400=0)then len:=29 else len:=28 end End;Writeln(len);End.,循环结构,一、计数循环,For 控制变量:=初值 to 终值 do,循环体语句;,For 控制变量:=初值 downto 终值 do,循环体语句;,控制变量为有序类型,执行过程:(1)先将初值赋值给控制变量;(2)比较控制变量与终值,如果超过则不执行循环体中的语句,结束循环;(3)否则执行循环
11、体中的语句;(4)将控制变量的后继值赋给控制变量;(5)从(2)开始重复。,循环的执行次数为:|终值-初值|+1,例7:计算1+2+3+100之和。,Program ex_7(input,output);var I,s:integer;begin s:=0;for I:=1 to 100 do s:=s+I;writeln(s);End.,循环体,循环执行次数为:(100-1)+1=100,执行结果为:5050,执行过程:,I,s 初值为0,输出,1,0+1=1,s=s+I,=100,初值为1,终值100,2,=100,1+2=3,3,=100,3+3=6,99,=100,4851+99=49
12、50,100,=100,4950+100=5050,5050,101,条件不成立退出循环,例8、编程找出四位整数abcd中满足下述关系的数:(ab+cd)(ab+cd)=abcd,分析:由题意知:abcd是个四位数,故其范围是:1000-9999,然后对每一个数看它的高两位和低两位数和的平方是否与该数相等。,分离高两位和低两位的方法是:,高位:ab=abcd div 100 低位:cd=abcd mod 100,Program ex_8(input,output);var I,m,n,k:integer;begin for I:=1000 to 9999 do begin m:=I div 1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- NOIP 全国青少年 信息学 奥林匹克 联赛 复习 Pascal
链接地址:https://www.31ppt.com/p-6513073.html