Pascal语言是由瑞士的沃斯教授于1971年提出来的.ppt_第1页
Pascal语言是由瑞士的沃斯教授于1971年提出来的.ppt_第2页
Pascal语言是由瑞士的沃斯教授于1971年提出来的.ppt_第3页
Pascal语言是由瑞士的沃斯教授于1971年提出来的.ppt_第4页
Pascal语言是由瑞士的沃斯教授于1971年提出来的.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一节 Turbo Pascal 简介 Pascal语言是由瑞士的沃斯教授于1971年提出来的,它的命名是为了纪念法国数学家Pascal。 Pascal是一种结构程序设计语言,它注重于语言的可靠性、易于验证性、概念的清晰性和实现的简化性。充分考虑了算法设计中的自顶而下、由粗到精的模块化思想,以及总可将算法步骤剖解为顺序、分支、重复三种基本结构流程的结构化原则,提供了丰富的数据类型和清晰的描述模块化的语句。 Pascal特别适用于教学,因为它使程序设计的基本概念和结构可以用Pascal所提供的一种系统的、精确的、而且合理的方法来描述。用它写的程序结构化好,语法要求严谨。,(一)Free Pascal 环境介绍 (1)进入与退出(注意:退出时必须使用文件菜单中的退出命令或Alt+X) (2)编辑程序 光标移动键的使用 Backspace键:删除光标前一个字符 Ctrl+N:在光标前插入一行 Ctrl+Y:删除光标所在行 Home:光标移到行首 End:光标移到行尾 PageUp/PageDown:上下翻页 Insert:插入与改写状态切换 (3)编译程序(Compile):Alt+F9 (4)运行程序(Run):Ctrl+F9 (5)保存程序(Save):F2 (6)打开原有的程序:F3 (7)查看程序运行结果:Alt+F5 (8)调试时增加观察项:Ctrl+F7,(二)一个简单的Pascal程序 例:已知长方形的长和宽,求长方形的面积。 程序代码如下: Program changfangxing(input,output); Var a ,b ,s :real ; Begin readln(a,b); s:=a*b ; write(s= , s ) ; readln; End.,程序首部是程序的开头部分,由保留字program后接程序名及程序参数表组成.,程序的主体部分由说明部分和执行部分组成 Pascal规定凡在程序中所使用的常量,变量,文件及过程和函数(除标准外),都必须在说明部分说明后才能在程序执行部分使用.,程序的执行部分,由begin 开始,end结束,每条语句以分号隔离,一行写一条语句或多条语句,最后一行end加 . 表示程序结束. Pascal在程序书写时不区分大小写,完全的pascal程序框架: Program 程序名(程序参数表); Label 标号说明; Const 常量说明; Type 类型说明; Var 变量说明; Function 函数说明; Procedure 过程说明; Begin 程序语句 End.,第二节 数据类型、常量、变量及说明方法 一、标准数据类型 1、整型:包括正整数、负整数和零。 例:说出哪些是合法的整数哪些是非法的? 123 0 -247 12.24 14A -0.1 分类:integer -32768(minint) 32767(maxint) shortint -128 127 longint -2147483648 2147483647 byte 0 255 word 0 65536,整数的运算符:+ - div mod 例: 18 div 5 = 18 div 10 = 18 mod 5 = 18 mod 10 = (1)判断下列式子对还是错? A mod B= A - ( A div B ) * B (2)一个三位自然数X,其百位数a:=?,十位数b:=?; 个位数c:=? (3)整型的运算中不能出现“/”,如:4 / 2的结果只能赋给实型变量。,2、实数类型(real):包括正实数、负实数和实数零 例:var x : Real ; 字长为16位的计算机,其实数的的绝对值范围在1E-38 到1E+38之间。 (1、 十进制表示法:如0.0 2.1 -20.12 科学表示法:采用指数形式。如3.6E2 -2.1E5 -3.4E-3是合法的;而E+12 3.4E1.2是非法的。 (2、实数的运算符有+ - * / 如:1.2+5= 8.4/2.1=,3、字符类型: char 用两个单引号引起来一个字符。(AscII码字符集) 如 a 、 1 、 x 例 var x : char ; 说明:string 表示字符串 4、布尔类型:boolean 例:var x : boolean ; 布尔类型的数据只有两个:false 和 true 布尔类型的逻辑运算符有 and or not 例;(x=3) and (y5) 练习:写出变量X在10到100之间的逻辑表达式。 写出既能被3整除,又能被5整除的表达式。,常量:指在程序执行过程中其值不能改变的量。 Pascal有三个标准常量是maxint true false . 例:键入圆半径求圆周长。 哪个是常量? 如何定义:const pi=3.14159; 例:const t=false; 注意下面是错的: Const x=3.12; Var x:real;,变量: 变量是指在程序执行过程中可以改变值的数据. (1)、变量如何定义? var m :real; x,y :integer; a1,a2:char; 其中x ,m,y, a1,a2称作变量名;变量名的命名规则 1、首字符必须是英文2、只能由英文、数字和下划线组成。 (2)、变量性质 (新来旧去,用之不尽) 例: x: = 1; x:= 2 ; x:= x+1 ; y:= 100 ; y:=x;,Pascal标准函数: Abs(-2)= Sqr(3)= Sqrt(100)= Chr(48)= Ord(A)= Trunc(12.23)= Pred(B)= succ(B)= Exp(2) ln(2) ASCII 表:048 ; A-65;B-66; a-97; b-98 判断奇偶数的函数: 奇数为true 偶数为false Odd(2)= Sin(x) cos(x) 要求x为弧度。 练习:将任一大写字母X转换成小写字母,Pascal表达式: 1、由常量、变量、函数、括号及运算符联结起来的式子。例:1、 2+3*4 x 2、表达式的优先级别: 同级运算从左到右,不同级别从高到低 括号 not * / div mod and + - or关系运算符 3、书写表达式规则: 只能用圆括号,可成对可嵌套; 乘号以*表示,不能省略 如(1+2)mod 2*3,练习: 一、判断以下标识符的合法性: a3 3a a17 a_4 abcd ex9.5 二、将下列的数学表达式改写成PASCAL表达式: 一元二次方程根的表达式;ax2+bx+c 三、求下列表达式的值: 20 mod 19 15 mod 9 7 div 8 19 div 3 (45) and (79) or ( 91 and (3=3) or (37),四、I 是j 的整数倍的布尔表达式: M 是偶数的布尔表达是: Y在-2到-1之间的布尔表达式是: 五、有一编码规则如下: 原码:A B C.X Y Z 密码:Z Y X C B A 已知原码变量为X,则密码的表达式是:,I mod j=0 M mod 2=0 或not(odd(m) (y-2)and (y-1) Chr(ord(A)+ord(Z)-ord(x),第二章 顺序结构 一、赋值语句 格式: 变量标识符:=表达式; 功能:先计算表达式的值,再将值赋给变量标识符。 例: program exp_1; const a=256; var b , d :integer; c:real; begin b:=a div 16; c:=a / b ; d:=a; end.,说明: 1、“:= ” 为赋值号。不同于数学中的等于号。(pascal中的“=”存在于关系表达式,判断=左右是否相等,若等,其值为true ,否则为false. 例 if x=3 then else . 2、变量要先说明 在赋值号左边出现的变量,要在程序头的说明部先加以说明,否则编译时出错。 3、赋值号两边类型应匹配(相同或相容) var s1,s2 :real; x1,x2 : integer; qq:char; begin s1:=s2; x1:=s1; end.,读程序,写出各变量的值 Var x ,y :integer; begin x:=12 y:=x x:=x+1 y:=x+1 End.,Var x,y,tmp:integer; Begin x:=1; y:=5 tmp:=x; x:=y ; y:=tmp; End.,二、输入语句 格式: read(变量名表); readln(变量名表); readln; 说明: 1、变量名表。写在括号中的变量,都要在变量说明中先预以说明;变量与变量之间,以“,”分隔; 例:var a,b:integer; begin read(a,b); end. Read(a);read(b) ; readln(a);readln(b);,2、从键盘接收数据时,要注意各种不同数据类型数据的分隔符不同。所谓分隔符就是两个完整的数值之间的标记,也可以这样理解,当计算机从键盘读入数据时,一旦碰到分隔符,就认为当前的数据读入已完成,可以把它赋给相应的变量了。各种数据类型的分隔符如下: 数值型(包括整型、实型以及它们的子界类型)以空格或回车符作为分隔符; 字符型不需分隔符(因为字符型数据的长度固定,只有一个); 字符串以回车符作为分隔符。,read与readln的区别,4、“readln;”语句从键盘接收一个回车符。 这个语句通常用在需要暂停的地方。如输出时用来等待程序员看清结果。 readln(a,b)相当于read(a,b);readln;相当于read(a);read(b);readln;,三、输出语句 格式:write(输出量表); 输出后不换行 writeln(输出量表); 输出后换行 writeln; 输出一个回车符 说明: 1、输出量可以是: 变量: 输出变量的值。输出多个变量时,变量间用“,”分隔. 如:write(x,y,a); 表达式: 输出的是表达式的值.如write(3*2); 常量: 直接输出常量值.如write(x+y= ,x+y ); Write(x);write(y); Writeln(x);writeln(y);,2、标准场宽,3、自定义场宽: (1)单场宽:形式:write(x:n) 例 write(OK:8); 表示输出字符串“ OK”,场宽是8 如:输出7个空格如何表示? write( :7); 如:write(abcdefg:3); 则输出什么结果? 注意:以n个字符宽度输出冒号前数据项,如果数据项长度不足n,则前面以空格补齐;如果数据项长度大于n,则以实际长度输出。,(2)双场宽 双场宽是用来控制实型数据的输出格式的,其形式:x:n1,n2 例:write(123.4525:8:2); 输出结果 123.45 实型数据不带格式限制时,以科学计数法的形式输出。如果加上场宽的限制,按十进制形式输出。 var a:real; begin a:=15/8; writeln(a); 输出 1.8750000000E+00 writeln(a:8:2);输出 1.88,但内存中仍是原来的值。 writeln(a:0:0):输出 2 , end.,3、“writeln;”语句通常用于输出多组数据时在屏幕上输出空行来分隔数据组 例:write(x,y);writeln;write(a,b); 例:writeln(x,y);writeln(a,b);,课堂练习:读程序写结果: Program ex1(input,output); Var a ,b ,s ,d:integer; l,e,g:boolean; Begin a:=3; b:=7; s:=a+b;d:=a div b; l:=ab; write(s=,s:5); writeln(d=,d:5); writeln(l=,l); writeln(e=,e,g=,g); writeln(b/a:5:5) End.,1、键入三角形三边长a ,b, c ,求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论