版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2015年山东省信息学奥赛夏令营 2015年山东省信息学奥赛夏令营 学习第一天学习第一天 信息学奥赛介绍 语言学习开始PascalPascal语言 基本语句 2015年山东省信息学奥赛夏令营 信息学奥林匹克竞赛 面向全国中学生的一种竞赛活动面向全国中学生的一种竞赛活动 旨在激发中学生在计算机科学方面的兴趣旨在激发中学生在计算机科学方面的兴趣 培养他们培养他们逻辑思维逻辑思维的能力的能力 给那些有给那些有才华才华的学生提供相互交流和学习的机会的学生提供相互交流和学习的机会 通过竞赛和相关的活动培养和选拔通过竞赛和相关的活动培养和选拔优秀的计算机后备人优秀的计算机后备人 才才。 2015年山东省信
2、息学奥赛夏令营 信息学奥林匹克竞赛属于信息学奥林匹克竞赛属于智力智力与应用计算机解题与应用计算机解题能力能力的比的比 赛,题目有相当的难度,解好这类题目,需要具备赛,题目有相当的难度,解好这类题目,需要具备很很强的综强的综 合能力合能力 1.1.观察和分析问题的能力;观察和分析问题的能力; 2.2.将实际问题转化为将实际问题转化为数学模型数学模型的能力;的能力; 3.3.灵活地运用各种灵活地运用各种算法算法的能力;的能力; 4.4.熟练编写程序熟练编写程序并将其调试通过的能力;并将其调试通过的能力; 5.5.根据题目的要求,自己设计测试数据,检查自己的解法根据题目的要求,自己设计测试数据,检查
3、自己的解法 是否正确、是否完备的能力是否正确、是否完备的能力 综合能力的体现 2015年山东省信息学奥赛夏令营 学习内容: 掌握一门计算机程序设计语言掌握一门计算机程序设计语言 (Pascal/C/C+) 数据结构与算法数据结构与算法 2015年山东省信息学奥赛夏令营 信息学奥林匹克竞赛赛事:信息学奥林匹克竞赛赛事: 1.NOIP1.NOIP(全国信息学奥林匹克分区联赛)(全国信息学奥林匹克分区联赛) National Olympiad in Informatics in Provinces 2.NOI 2.NOI (全国信息学奥林匹克竞赛)(全国信息学奥林匹克竞赛) National Oly
4、mpiad in Informatics 3.IOI 3.IOI (国际信息学奥林匹克竞赛)(国际信息学奥林匹克竞赛) International Olympiad in Informatics 2015年山东省信息学奥赛夏令营 语言学习开始Pascal语言 一、语言的安装 二、界面简介 三、典例分析 2015年山东省信息学奥赛夏令营 安装程序 注意如果安装后出现乱码,我们可以在FP窗口最上面的标题栏上右击,在 弹出的快捷菜单中选择“默认值”,接着会弹出的控制台窗口属性框,在最下 面的“默认代码页”的下拉菜单中选择“437(OEM-美国)”。 2015年山东省信息学奥赛夏令营 界面介绍 标题栏
5、、菜单栏、中间部分为编辑窗口、最底部一行为提示栏(显示系统 中常用命令的快捷键,如将当前正在编辑的文件存盘的命令快捷键为F2) 1、新建程序: FileNew(默认文件名为:Noname01.pas) 2、程序运行:RunRun(或按快捷键:Ctrl+F9) 3、查看运行结果:DubugUser screen(或按快捷键:Alt+F5) 4、程序的保存:FileSave(或按F2)。第一次保存文件时屏幕上会出 现一个对话框要求输入文件名。注意文件保存的目录(默认工作目录可 以在FP的快捷方式的属性框中的“起始位置”栏中设置。) 5、程序的打开:FileOpen(或按F3) 2015年山东省信息
6、学奥赛夏令营 多动手、模仿是捷径 勤思考、实践是王道 2015年山东省信息学奥赛夏令营 Program ex1_1;Program ex1_1; BeginBegin write(Hello!); write(Hello!); End.End. 大小写无所谓,但是你可以改变一下单引号内的单词大小写,看看有什么变化? 2015年山东省信息学奥赛夏令营 计算123+56的值 Program ex1_2; Var a,b:integer; Begin a:=10; b:=5; writeln(a+b=,a+b); End. 2015年山东省信息学奥赛夏令营 已知长方形的长和宽,求长方形的周长和面积。
7、 Program ex1_3; Var a,b,c,s:integer; Begin readln(a,b); c:=2*(a+b); s:=a*b; writeln(c=,c,s=,s); End. 2015年山东省信息学奥赛夏令营 求圆的面积 Program ex1_4; Const Pi=3.1415926; var r:integer; s:real; begin read(r); s:=pi*r*r; writeln(s:0:2); end. 2015年山东省信息学奥赛夏令营 模仿一下: 已知小雄的书包放了3本书,5本作业本和2支笔,你能编 程序让计算机算算小雄的书包中一共有多少件学
8、习用品吗? 2015年山东省信息学奥赛夏令营 典例分析 程序由三部分组成: (一)程序首部:Program 程序名。 由保留字Program 开头,后跟一个程序名,程序名的第一个字符必须是英文 字母,其后的字符只能是字母或数字和下划线组成。标识符) (二)说明部分:程序中所用的常量、变量等必须先定义后使用。 常量:在程序执行过程中其值不能被改变的数据。 变量:在程序执行过程中可以改变值的数据。 数据类型:简单类型(分标准类型和用户自定义型)、构造类型、指针类型 (三)语句部分 由保留字begin 至end. 语句未尾以分号;结束。 程序结束语句 end未尾必须用句号。 整型、实型、 字符型、布
9、尔型 枚举型、子界型 数组类型、 记录类型、 集合类型、 文件类型 program 程序名;程序名; var 变量说明;变量说明; begin 语句;语句; 语句;语句; 语句语句; end. 2015年山东省信息学奥赛夏令营 保留字 Pascal语言中一些有特殊含义的英文单词(这些单词保留给Pascal本身使用)。 你已学会了几个保留字: 返回 2015年山东省信息学奥赛夏令营 在程序中用到的所有变量必须事先定义。在程序中用到的所有变量必须事先定义。 格式:格式: Var Var : : ; : : ; 如:输入3个整数,求这3个数的平均值。 Var a,b,c:integer; aver:
10、real; 变量的定义说明:变量的定义说明: 返回 变量就相当于一个书包,不过这个变量就相当于一个书包,不过这个“书包书包”中存放的中存放的“书书”只是一个数据只是一个数据 而已。变量的名称叫做而已。变量的名称叫做变量名变量名。它可以由字母、数字或下划线构成,但第。它可以由字母、数字或下划线构成,但第 一个必须是字母。一个必须是字母。 2015年山东省信息学奥赛夏令营 标准数据类型 整数类型:包括正整数、负整数和零。 Var a,b,c:integer; Begin readln(a); readln(b); c:=a+b; writeln(c); End. 120 200 10000 200
11、00 20000 30000 测试以下测试以下3组数据:组数据: 输入整数输入整数a和和b,输出,输出a+b的值。的值。 2015年山东省信息学奥赛夏令营 Integer:取值范围:-3276832767(maxint) 类型数值范围 占字节数 Byte 0 . 255 1 Word 0.65535 2 Shortint -128 . 127 1 Integer -32768.32767; 2 Longint -2147483648 . 2147483647 4 Longword 0.4294967295 4 Int64 -9223372036854775808 . 9223372036854
12、775807 8 QWord 0 . 18446744073709551615 8 2015年山东省信息学奥赛夏令营 整数的运算符有: 、*、DIV(整除)、mod(取余)。 15 Div 6 = 2 15 Div 6 = 2 (-15) div 6=-2(-15) div 6=-2 15 Div (-6)=-215 Div (-6)=-2 (-15) div(-6)=2(-15) div(-6)=2 15 mod 6 = 315 mod 6 = 3 (-15) mod 6=-3(-15) mod 6=-3 15 mod(-6)=315 mod(-6)=3 (-15) mod (-6)=-3(
13、-15) mod (-6)=-3 2015年山东省信息学奥赛夏令营 类型类型 范围范围 有效位数有效位数 占用字节占用字节 Real 2.9e-39.1.7e3811.12 6 Single 1.5E-45 . 3.4E38 7-8 4 Double 5.0E-324 . 1.7E308 15-16 8 Extended 1.9E-4951 . 1.1E4932 19-20 10 Comp -2E64+1 . 2E63-1 19-20 8 实数类型 Real类型 运算符有:、*、/ 2015年山东省信息学奥赛夏令营 Var begin read(a,b); c:=a*b; d:=a/b; wr
14、iteln(c); writeln(d); End. ? 例例: 输入输入:两个正整数两个正整数a、b(3; b:=23; 2015年山东省信息学奥赛夏令营 基本语句 一、赋值语句 二、read语句 三、write语句 2015年山东省信息学奥赛夏令营 1、赋值语句 赋值语句是最简单的语句. 1)、赋值语句的格式 变量名:=表达式; 其中“:=”称为赋值号。 2)、执行过程 计算机先计算赋值号右边表达式的值,然后将表达式的值 赋给变量名代表的变量。 如:A:=(9*8)-(2-1); A:=A+1 2015年山东省信息学奥赛夏令营 、输入语句read和readln 功能: 从键盘读入数据项,并
15、把它存到变量中去,使该数据能在 以后的计算中使用。 输入语句的一般形式为: read(v1,v2,vn); readln(v1,v2,vn); 从键盘逐次读入数据,分别赋给变量v1,v2,vn,一 行输入多个变量值时,要求数据之间用空格分隔,readln语句 要求输入数据后必须回车,使得后继操作从下一行的头上开始。 2015年山东省信息学奥赛夏令营 及时充电(输入语句) 格式作用 Read(变量表)接受键盘输入数据存入对应变量 Readln(变量表)接受键盘输入数据存入对应变量,然后光标换行 Readln不接受数据,光标换行 输入数据时,数值数据之间可用空格分开,也可以每输入一个数按一次回车;
16、 如果是输入字符或者字符串,两者之间不能用空格分开,只能每输入一个按一次回车。 2015年山东省信息学奥赛夏令营 read语句与readln语句区别是: 1) read语句是一个接一个地读数据,在执行完本Read语 句( 读完本语句中变量所需的数据)后,下一个读语句接着从 该数据输入行中继续读数据,也就是说,不换行。如: read(a,b); read(c,d); read(e); 如果输入数据行如下: 123 456 则a,b,c,d,e的值分别为1,2,3,4,5,如果后面无读语句则数据6 是多余的,这是允许的。 2015年山东省信息学奥赛夏令营 Readln则不同,在读完本则不同,在读完
17、本Readln语句中变量所需的数语句中变量所需的数 据后据后, 该数据行中剩余的数据多余无用,或者说,在读完本该数据行中剩余的数据多余无用,或者说,在读完本 Readln语句中变量所需数据后,一定要读到一个回车,否语句中变量所需数据后,一定要读到一个回车,否 则多余的数据无用。则多余的数据无用。 设有下列语句设有下列语句: read(a,b,c); readln(d,e); readln; readln(f,g); 其中其中,所有变量均为整型。设输入的数据如下:所有变量均为整型。设输入的数据如下: 12 345678 910 11 12 13 Var a,b,c,d,e,f,g:integer
18、; begin read(a,b,c); readln(d,e); readln; readln(f,g); writeln(a, ,b, ,c, ,d, ,e, ,f, ,g); end. 2015年山东省信息学奥赛夏令营 2)readln语句与read语句的第二个区别是: read 后一定要有参数表, readln可以不带参数表,即可以没有任何输入项, 只是等待读入一个换行符(回车)。经常用于暂停 程序的运行,直到输入一个回车 2015年山东省信息学奥赛夏令营 输出语句write和writeln 功能: 把程序计算的结果,按适当的形式输出到屏幕。 1)、write语句 格式Write(表达
19、式1,表达式2,); 如: write(x,5,a+b); write(My name is Liping); 2)、writeln语句 格式: Writeln(表达式1,表达式2,) 或writeln 2015年山东省信息学奥赛夏令营 Write语句与writeln语句格式上都相似,但它们在功能上有所 不同,两个语句的区别在于: write语句将其后括号中的表达式一个接一个输出后,没有 换行。 而writeln语句则在输出各个表达式的值后换行。 例如以下两个程序段的输出分别为: write(1,2,3,4); write(5,6); 输出为: 123456 writeln(1,2,3,4);
20、 write(5,6); 输出为: 1234 56 2015年山东省信息学奥赛夏令营 实数的输出格式 实数(real)以浮点型格式输出。例如805.67对应的浮点 数为8.056700000000E+02。这种实数表达方式很不方便。 我们可以通过下述形式强迫实数以定点型格式输出: 实数表达式:域宽:小数位数 例如,t的值设为63.123。下面三条输出语句分别有它们 右边所示的输出格式: write(t); 6.312300000000E+01 write(t:6:2); 63.12 write(t:6:5); 63.12300 write(t:0:0); 2015年山东省信息学奥赛夏令营 va
21、r a,b,t:char; begin read(a,b); t:=a; a:=b; b:=t; writeln(a=,a,b=,b) end. 例:输入两个整数a,b,交换他们的值,并输出. 如:输入:30 34 输出:34 30 2015年山东省信息学奥赛夏令营 算术运算符和算术表达式 1.算术运算符 运算符运算运算对象结果类型 + 加整型、实型只要有一个运算对象是实型,结果就 -减 整型、实型是实型,如果全部的运算对象都是整 *乘 整型、实型型并且运算不是除法,则结果为整型 /除 整型、实型若运算是除法,则结果是实型。 div 整除整型整型 mod取余整型整型 Program ex1_5
22、; Const a=128; Var b,d:integer; c:real; Begin b:=a div 16; c:=a/b; d:=a; write(a:4,b:4,c:4:0,d:4); end. Program ex1_6; Var a:integer; Begin read(a); writeln(a mod 10); writeln(a div 10 mod 10); wrteln(a div 100); End. 输入任意一个百位数 2015年山东省信息学奥赛夏令营 是通过运算符把常量、变量、函数调用结合起来组成的。 3+x1+b PASCAL表达式有以下计算优先顺序规则:
23、1.括号内的表达式首先计算; 2.运算符的优先级有四级,按其优先顺序从高到低排列为: not; *,/,div,mod,and; +,-,or; =,=,IN; 不同优先级的两运算符之间的操作数先与具有较高优先级的运算符进行运算; 3.同级的运算从左到右进行; 另外,有一点需要指出的是,因为关系运算符的优先级最低,当用关系 式构造复杂的布尔表达式时,这些关系式作为初等条件必须放在括号里。 如: (xy) and (z=y) or (x=0) 若不加括号,就是一个错误的表达式。 表达式 2015年山东省信息学奥赛夏令营 输入一个3位的正整数,输出他们的各位数字之和与乘积。 如: 输入: 436
24、输出: 13 72 var n,a,b,c,x,y:integer; begin readln(n); a:=n div 100; b:=(n div 10) mod 10; c:=n mod 10; x:=a+b+c; y:=a*b*c; writeln(x); writeln(y); end. 上机练习题目: 2015年山东省信息学奥赛夏令营 展示实力 1 1、写出下列表达式的值。、写出下列表达式的值。 1212* *3+6/4=3+6/4=45 div 4=45 div 4=98 mod 10 =98 mod 10 = 2 2、写出下列程序段的运行结果。、写出下列程序段的运行结果。 Va
25、r my:real;Var my:real; BeginBegin my:=18/4-3; my:=18/4-3; Writeln(my:10:2)Writeln(my:10:2) End.End. Var n,v:integer;Var n,v:integer; BeginBegin read(n); read(n); v:=n mod 5; v:=n mod 5; writeln( writeln(VP=VP=,v),v) End.End. 运行时输入运行时输入 3434 Var w1,w2:integer;Var w1,w2:integer; BeginBegin writeln( wr
26、iteln(EnterEnter);); Read(w1,w2);Read(w1,w2); W1:=0;W1:=0; W1:=w1+w2;W1:=w1+w2; Writeln(w1)Writeln(w1) End.End.运行时输入运行时输入1515,3636 Var k1,k2,fn:integer;Var k1,k2,fn:integer; BeginBegin Read(k1,k2);Read(k1,k2); fn:=k1+2fn:=k1+2* *k2;k2; If fn7 then writeln(fn)If fn7 then writeln(fn) End.End.运行时输入运行时输入1,2,31,2,3 2015年山东省信息学奥赛夏令营 展示实力 3、从键盘输入一个字符,然后显示一个由该字符组成的图案。 输入样例输出样例 Kk kkk kkkkk 4、输入两个整数,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电力公司管理佳家四期电缆沟施工方案1
- 2023级人力资源管理专业绩效考核方案
- 2026年基于大模型的深度报告撰写与研报复现操作指南
- 2026年校园安全规范培训
- 2026年助听器使用壽命一般58年何时考虑更换评估
- 2026年自动驾驶法规体系构建与专属保险方案设计
- 外币交易的会计处理方法
- 2026年宿舍安全知识普及培训
- 2026年实验室化学品使用安全培训
- 灾区护理质量与安全管理
- 山东省2026年春季高考技能测试电子商务类专业模拟试题及答案解析
- 抗肿瘤药物分级管理目录(2023版)
- 放射医学职称考试初中级基础知识考点
- 电站锅炉培训课件
- 不锈钢内衬特氟龙风管系统
- 优质课课件-碳酸钠与碳酸氢钠
- 糖尿病中医症状积分
- 医患沟通学医院教学课件王锦帆
- 商混站全套安全生产管理制度
- 各院校自然地理试题整理
- 鲁科版小学英语五年级下册Unit-2《Lesson-1-Lets-stop-and-wait》课件
评论
0/150
提交评论