pascal教程 自学完整版
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Pascal优点
⒊ 适用性好 • 既适用于数值运算,也适用于非数值运算领 域。有些语言只适用于数值计算,有些语言 则适用于商业数据处理和管理领域。Pascal 的功能较强,能广泛应用于各种领域。
Pascal优点
⒋ 书写较自由 • 不象有些算法语言那样对程序的书写格式有 严格的规定。Pascal允许一行写多个语句, 一个语句可以分写在多行上,这样就可以使 Pascal程序写得象诗歌格式一样优美,便于 阅读,但一行不可超过257个字符。
第三章
程序设计初步
目录
• • • • • • • • 第一讲 第二讲 第三讲 第四讲 第五讲 第六讲 第七讲 第八讲 读入语句与输出语句 复合语句 if语句及if语句的嵌套 case语句 for循环 while循环与repeat循环 goto语句 小技巧
第一讲
读入语句与输出语句
读入语句
• 语法: • read(…) • readln(…)
第一讲
Pascal语言特点、优点与缺点
Pascal特点
• 以法国数学家命名的Pascal语言现已成为使 用最广泛的语言之一,其主要特点有:严格 的结构化形式;丰富完备的数据类型;运行 效率高;查错能力强。
Pascal优点
⒈ 结构化 • Pascal可以方便地书写出结构化程序。这就 保证程序的正确性和易读性。在结构化这一 点上,比其它算法语言更好一些。
Pascal缺点
• 网络支持 • 面向对象 • GUI
第二讲
Pascal程序结构
Pascal程序例子
program ex ( input , output ); uses crt label 1; const pi=3.1415926; type int : 0..1000; var r : int; s : real; function fac ( r : int ) : real; var s : real; begin s:=r*pi*r; fac:=s; end; procedure sum; begin s:=fac ( r ); end; begin 1: ClrScr; write (‘r=‘); readln ( r ); sum; writeln (‘s=‘,s); readln; goto 1; end.
Pascal教程
目录
• • • • • • • • • 第一章 第二章 第三章 第四章 第五章 第六章 第七章 第八章 第九章 算法、程序设计与编译器基础 Pascal基础 程序设计初步 枚举、子界与数组 过程与函数 集合、记录与文件 指针等动态类型 面向对象与单元设计 特效
第一章
算法、程序设计与编译器基础
目录
• 第一讲 算法基础知识算法描述方法 • 第二讲 程序语言 • 第三讲 Pascal编译器基础
第一讲
算法基础知识算法描述方法
用计算机解决实际问题的四个步骤
• 分析问题,把实际问题抽象为一个一般性的 数学问题 • 根据分析,设计出求其解的方法和步骤 • 用某种形式(如图形、自然语言、类计算机 语言)表达以设计好的算法 • 在计算机上编辑、调试和测试编制好的程序, 直到正确满足问题的需求
• 技巧: • 读入回车后退出程序: readln; end。
输出语句
• 语法: • write(…) • writeln(…)
• 小技巧: • 场宽
例题
• 例3.1.3:读入两个实型,交换后输出,精确到0.01。 program p3_1_3_1 ( input , output ); var a , b , c : real; begin readln ( a , b ); c:=a; a:=b; b:=c; writeln ( a:0:2 , b:0:2 ); readln; end.
保留字
• (1)程序、函数、过程符号 :program , function , procedure • (2)说明部分专用定义符号:array , const , file , label , of , packed , record , set , type , var • (3)语句专用符号 :case , do , downto , else , for , forward , goto , if , repeat , then ,to until , while , with • (4)运算符号:and , div , in , mod , not , or • (5)分隔符号:begin , end • (6)空指针常量 :nil • 共36个 • 补充:unit implementation interface string……
例题
• 读入一个整数,将其平方后减去原数的绝对 值,最后求值的平方根,输出最后的值,保 留整数。 program p3_1_4 ( input , output ); var n : integer; begin readln ( n ); writeln ( sqrt ( n * n - abs ( n ) ) : 0 : 0 ); readln; end.
文件关联
.pas .bak .o .exe .ppu .tpu
第二章
Pascal基础
目录
• • • • • 第一讲 第二讲 第三讲 第四讲 第五讲 Pascal语言特点、优点与缺点 Pascal程序结构 Pascal基本符号、保留字和标识符 Pascal标准数据类型、常量与变量 Pascal标准函数、过程、运算符与表达式
变量
• • • • 定义以后可以改变值的 如: var i : integer; 句型: var 自定义标识符 : 数据类型
第五讲
Pascal标准函数、过程、运算符与 表达式
函数与过程
• 子程序 • 过程 procedure • 函数 function
运算符
运算符 +,-,* 算术运算 / div,mod =,<> <,> 关系运算 <=,>= in 逻辑运算 集合运算 赋值运算 not,and,or,xor +,-,* := 标准类型,枚举型,子界型,集合 顺序类型、集合 布尔 集合 除文件类型以外各种数据类型 布尔 集合 除文件类型以外各种数据类型 操作数类型 整型或实型 整型或实型 整型 除文件类型以外各种数据类型 标准类型,枚举型,子界型 布尔 结果类型 整型或实型 实型 整型
例题
• 例3.1.3:读入两个实型,交换后输出,精确到0.01。 program p3_1_3_2 ( input , output ); var a , b : real; begin readln ( a , b ); a := a + b; b := a – b; a := a – b; writeln ( a:0:2 , b:0:2 ); readln; end.
例题
• 例2.5.3 • 闰年表达式: (year mod 400 = 0) or (year mod 4 = 0) and (year mod 100 <> 0)
例题
• 例2.5.4 • 求圆周长语句: 1: s = 3.14 * r * r ; 2: s = 3.14 * sqr ( r );
N-S图
• • • • 功能域明确; 很容易确定局部和全局数据的作用域; 不可能任意转移控制; 很容易表示嵌套关系及模块的层次关系。
N-S图
A P T A B F A
直到P
来自百度文库
直到型
B
循环 顺序
当P
选择
A
当型
第二讲
程序语言
编程语言
• • • • 机器语言 汇编语言 高级语言 脚本语言
第三讲
Pascal编译器基础
标识符
• 要求 • 标准标识符 • 自定义标识符
要求
• 以字母或下划线开头的数字字母下划线序列 • 例:a、ab、a1、max、_12、_ab211、a_1、 a_等
自定义标识符使用时的注意要点
• 不能与保留字同名 • 如果与标准标识符同名,强行改变标准标识 符原来意义 • 最好有一定意义,使程序具有可读性 • 可以使用大写、小写、大小写混用,意义不 变
编译器
• • • • • • • Turbo Pascal 7 Free Pascal 1.0/2.0 CP Pascal Super Pascal Delphi 7.0 Lazarus GUIDE
Turbo Pascal 7.0
Free Pascal
快捷键
• • • • • • • • F2 Alt + Enter Alt + X F7 F8 F9 Alt + F9 Ctrl + F9 • • • • • • • • 保存 全屏/小窗口转换 关闭 单步执行当前程序 单步执行当前程序 导出exe程序 纠错 调试并导出exe程序
第二讲
复合语句
语法
• 复合语句 begin ………… end; • end前句子末尾可不加’;’
第三讲
if语句及if语句的嵌套
语法
• if + ( boolean 表达式 ) + then + 句子
• if + ( boolean 表达式 ) + then + 句子1 + else + 句子 2
• 注意:else前句子末尾不加“;”
例题
• 例3.3.1:将两个整数大的放入max,小的放入min,并输出。 program p3_3_1 ( input , output ); var max , min , t : integer; begin readln ( max , min ); if max<min then begin t := max; max := min; min := t; end; writeln ( max , min ); readln; end.
例题
• 例2.5.1 • 两个数差为100布尔表达式: 1: abs ( a – b ) = 100; 2: ( a + 100 = b ) or ( a – 100 = b )
例题
• 例2.5.2 • 能够被3和5整除布尔表达式: 1: ( a mod 3 = 0 ) and ( a mod 5 = 0) 2: a mod ( 3 * 5 ) = 0
第三讲
Pascal基本符号、保留字和标识符
基本符号
• ABCDEFGHIJKLMNOPQRST UVWXYZ • abcdefghijklmnopqrstuvwx yz • 0123456789 • + - * / = <> > < <= >= ( ) [ ] { } := . , : ; ‘ .. ^
Pascal优点
⒉ 数据类型丰富 • Pascal提供了整数型、实数型、字符型、布 尔型、枚举型、子界型以及由以上类型构成 的数组类型、集合类型、记录类型和文件类 型。此外,还提供了其它许多语言中所没有 的指针类型。丰富的数据结构和上述的结构 化性质,使得Pascal可以被方便地用来描述 复杂的算法。
例题
• 例3.3.2:计算下列函数
program p3_3_2 ( input , output ); var x , y : integer; begin readln ( x ); if x<0 then y = -1 else if x=0 then y = 0 else y = 1; writeln ( y ); readln; end.
表达式
• 表达式指由常量、变量、函数、括号、集合 及运算符连接起来的式子。表达式中的变量 必须要有一个明确的值,单个的常量、变量、 函数都可以看成是一个表达式 • 运算先后顺序 • not • * , / , div , mod , and • + , - , or • 关系运算符、in
句型
• := • 变量名/函数名:=表达式
算法的描述方法
• • • • • • 例1.1.1: 交换a、b两数值 定义 c a→c b→a c→b
N-S图
• 1973年,美国学者I.Nassi和 B.Shneiderman提出了一种在流程图中完全 去掉流程线,全部算法写在一个矩形框内, 在框内还可以包含其它框的流程图。 • N-S图也被称为盒图或CHAPIN图。
第四讲
Pascal标准数据类型、常量与变量
常用数据类型
• • • • • • 整型(整数类型) 实型(实数类型) 字符型 布尔类型 枚举类型 子界类型 • • • • • • 数组类型 集合类型 记录类型 文件类型 指针类型 对象类型
常量
• • • • 定义以后不能改变值的 如: const st = ‘abc’ 句型:const 自定义标识符 = 值