pascal编程的语言

作者&投稿:公命 (若有异议请与网页底部的电邮联系)
Pascal语言是什么?~

Pascal是一种计算机通用的高级程序设计语言。它由瑞士Niklaus Wirth教授于六十年代末设计并创立。Pascal也可以是指人名,它的取名原本就是为了纪念十七世纪法国著名哲学家和数学家Blaise Pascal,而不是编程工具。以法国数学家命名的pascal语言现已成为使用最广泛的基于DOS的语言之一,主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。 Pascal语言还是一种自编译语言,这就使它的可靠性大大提高了。 Pascal具有简洁的语法,结构化的程序结构。它是结构化编程语言,在许多学校计算机语言课上都是Pascal语言。

Pascal是一种计算机通用的高级程序设计语言。它由瑞士Niklaus Wirth教授于六十年代末设计并创立。
以法国数学家命名的Pascal语言现已成为使用最广泛的基于DOS的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。
正因为上述特点,Pascal语言可以被方便地用于描述各种算法与数据结构。尤其是对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯。IOI(国际奥林匹克信息学竞赛)把Pascal语言作为三种程序设计语言之一, NOI(全国奥林匹克信息学竞赛)把Pascal语言定为唯一提倡的程序设计语言,在大学中Pascal语言也常常被用作学习数据结构与算法的教学语言。
在Pascal问世以来的三十余年间,先后产生了适合于不同机型的各种各样版本。其中影响最大的莫过于Turbo Pascal系列软件。它是由美国Borland公司设计、研制的一种适用于微机的Pascal编译系统。该编译系统由1983年推出1.0版本发展到1992年推出的7.0版本,其版本不断更新,而功能更趋完善。
下面列出Turbo Pascal编年史
出版年代 版本名称 主要特色
1983 Turbo Pascal 1.0
Turbo Pascal 2.0
Turbo-87 Pascal 提高实数运算速度并扩大值域
1985 Turbo Pascal 3.0 增加图形功能
Turbo BCD Pascal 特别适合应用于商业
1987 Turbo Pascal 4.0 提供集成开发环境(IDE),引入单元概念
1988 Turbo Pascal 5.0 增加调试功能
1989 Turbo Pascal 5.5 支持面向对象的程序设计(OPP)
1990 Turbo Pascal 6.0 提供面向对象的应用框架和库(Turbo Vision)
1992 Turbo Pascal 7.0 面向对象的应用系统、更完善的IDE
Turbo Vision 2.0
1993 Borland Pascal 7.0 开发 Object Windows库、
__(For Windows) 提供对OLE多媒体应用开发的支持
1995 Delphi (Object Pascal)
Visual Pascal
Turbo Pascal语言是编译型程序语言,它提供了一个集成环境的工作系统,集编辑、编译、运行、调试等多功能于一体
ps:高级语言发展过程中,PASCAL是一个重要的里程碑。PASCAL语言是第一个系统地体现了E.W.Dijkstra和C.A.R.Hoare定义的结构化程序设计概念的语言。1971年,瑞士联邦技术学院尼克劳斯·沃尔斯(N.Wirth)教授发明了另一种简单明晰的电脑语言,这就是以电脑先驱帕斯卡的名字命名的PASCAL语言。PASCAL语言语法严谨,层次分明,程序易写,具有很强的可读性,是第一个结构化的编程语言。它一出世就受到广泛欢迎,迅速地从欧洲传到美国。沃尔斯一生还写作了大量有关程序设计、算法和数据结构的著作,因此,他获得了1984年度“图灵奖”。
Pascal有5个主要的版本,分别是Unextended Pascal、Extended Pascal、Object-Oriented Extensions to Pascal、Borland Pascal和Delphi Object Pascal。其中,Unextended Pascal、Extended Pascal和Object-Oriented Extensions to Pascal是由Pascal标准委员会所创立和维护的,Unextended Pascal类似于瑞士Niklaus Wirth教授和K.Jensen于1974年联名发表的Pascal用户手册和报告,而Extended Pascal则是在其基础上进行了扩展,加入了许多新的特性,它们都属于正式的Pascal标准;Object-Oriented Extensions to Pascal是由Pascal标准委员会发表的一份技术报告,在Extended Pascal的基础上增加了一些用以支持面向对象程序设计的特性,但它属于非正式的标准。Borland Pascal和Delphi Object Pascal是由Borland公司专门为其开发的编译工具设计的Pascal语言,前者是用于DOS的Turbo Pascal系列和Windows 3.x的Turbo Pascal for Windows的传统高级语言,后者是用于Windows的Delphi和Linux的Kylix的面向对象程序设计语言,它们都不是正式的Pascal标准,具有专利性。但由于Turbo Pascal系列和Delphi功能强大并且广为流行,Borland Pascal和Delphi Object Pascal已自成为一种标准,为许多人所熟悉。
看到这里,你可能会发觉我的回答与你最初的设想不同。你原来可能是想问Turbo Pascal有几个版本,然而我却回答了Pascal语言有几个版本。这就是初学者常有的一个错误认识:Pascal是一种编程工具。实际上,Pascal是一种程序设计语言的名称(从一般意义上说,Pascal也可以是指人名,它的取名原本就是为了纪念十七世纪法国著名哲学家和数学家Blaise Pascal),而不是编程工具。刚才我是纯粹从字面意思上来回答这个问题。
“在turbo pascal中不能使用标准pascal的紧缩字符型数组!turbo pascal建立文件也有自己的语法规则!assign!!! ”
PASCAL是一门编程语言,而TURBO PASCAL是PASCAL程序的编译系统.
用pascal编辑的程序能在turbopascal中运行
Pascal只是一门语言,而Turbo Pascal是编译器
这两个是不能比较的
你可以把两个语言放在一起比较,或者两个编译器放在一起比较
而一切编译器都是基于语言的,因此不会有某个编译器不能适应语言
在中国的信息学奥林匹克竞赛中,过去比较常用的Pascal编程工具是Turbo Pascal。Turbo Pascal是DOS下的一种16位编程工具,在Delphi出现之前,它是世界上最多人使用的Pascal编程工具,拥有编译速度极快的先进编译器和功能强大而又简便易用的集成开发环境(IDE),在微机程序员中广为流行,正是它的出现奠定了Pascal在DOS/Windows平台上不可动摇的根基,现在常见的版本有Turbo Pascal 5.5、Turbo Pascal 6.0和Borland Turbo Pascal with Objects 7.0。Turbo Pascal 6.0与Turbo Pascal 5.5相比,主要是IDE更为强大,而其程序设计功能改变不大,只是增加了一些新的功能,例如可以内嵌asm汇编语句等。而Borland Turbo Pascal with Objects 7.0(简称Borland Pascal 7.0)则有了新的飞跃,首先是IDE进一步加强,提供了程序浏览器,然后是程序设计功能有了很大的提升,新增了一些十分有用的标准子程序,支持比较完善的面向对象程序设计功能,并提供了DOS实模式、DOS保护模式和Windows模式三种程序编译模式,能够编写出可以使用扩充内存(XMS)的保护模式应用程序或者在Windows 3.x下运行的Windows程序,另外还提供了一个对象窗口库(OWL),使用它可以快速的开发出具有一致的视窗界面(DOS或Windows 3.x)的应用程序。Borland Pascal 7.0在1992年推出,是Turbo Pascal系列在DOS下的最后版本。
现在,随着Turbo Pascal逐渐被淘汰,全国信息学奥林匹克竞赛决赛(NOI)和国际信息学奥林匹克竞赛(IOI)已经指定Free Pascal为比赛使用的Pascal编程工具。Free Pascal是由一个国际组织开发的32位Pascal编程工具,属于共享软件,可用于各种操作系统。根据编译选项的不同,它可以使用Borland Pascal兼容语法、Delphi 2 Object Pascal语法或者其它语法进行编写程序。由于它拥有32位的编译器,而且一直在更新发展中,因此它的功能比Borland Pascal更加强大,拥有许多现代程序设计的特征,但同时也很不成熟,存在很多漏洞。Free Pascal正处于发展初期,相应的函数库十分少,对程序员的吸引力远比不上拥有VCL和CLX的Delphi和Kylix。
Pascal中基本符号以及保留字:
pascal语言只能使用一下几类基本符号:
(1)大小写英文字母
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
(2)数字
1 2 3 4 5 6 7 8 9 0
(3)其他符号
+ - * / = <> <= >= < > ( ) [ ] { } := , . ; : .. '
注意,pascal语言除了可以使用以上规定的字符外,不得使用其他任何符号。
补充说明FreePascal(FP):
Free Pascal是一个在多种版本Pascal和Delphi下的产物,目前比较成熟的版本是由FreePascal.org发布的1.0.10版本,由于是Pascal上的改版,在FP里加入了很多以前没有的东西,例如:FillChar系列内存块赋值语句,用Power代替了**(乘方),但是**还是可以使用。
另外FP加强了与内存的互容性,增大对内存的支持,FP里的内存限制是TP和BP里的将近上万倍。
FP还进一步加强了单元支持、面向对象程序设计的支持、显卡(声卡)的支持、图形高级覆盖的支持、Windows\Linux\OS/2\..等众多系统的支持。在FP的较稳定版本中,可以方便的利用Win32编译模式,编译出Windows应用程序,与Delphi的功能相当。同时对动态连接库、控件、数据库、文件、网络、OpenGL的深入支持,使得FP脱颖而出。
更值得提出的是,FP支持Delphi及C++的部分语言,例如:A+=2这样的C Style语言,在FP里完美支持。
FP中支持单目、双目操作符,即所有版本的Pascal的符号和“@”等特殊符号。
FreePascal.org现在正在修订FP 2.0的版本,但使用起来并没有1.0.10那样轻松,稳定性也下降不少。
截止09年头,版本到了2.2.2.

1.标识符  
(1) 标识符的定义:标识符就是以字母开头的字母数字序列,有效长度为63个字符,并且大小写等效。可以用来标示常量、变量、程序、函数等。例如例1.1中的Area(程序名),pi(符号常量),s、r(变量名)都是标识符。
(2) 标识符的分类:

a.保留字(关键字)
所谓保留字是指在Pascal语言中具有特定的含义,你必须了解它的含义,以便于正确的使用,否则会造成错误。标准Pascal语言中的保留字一共有35个,Turbo Pascal语言一共有51个。下面是Pascal语言的保留字:
AND,ARRAY,BEGIN,CASE,CONST,DIV,DO,DOWNTO,ELSE,END,FILE,FOR,FUNTION,GOTO,IF,IN,LABEL,MOD,NIL,NOT,OF,OR,PACKED,PROCEDURE,PROGRAM,RECORD,REPEAT,SET,THEN,TO,TYPE,UNTIL,VAR,WHILE,WITH等
b.标准标识符:指Pascal语言预先定义的标识符,具有特殊含义。
以下列举了Turbo Pascal语言部分常用的标准表识符:
标准常量 False Maxint True
标准类型 Boolean Char Real Integer
标准函数 Abs Arctan Chr Cos Eof Eoln Exp
Ln Odd Ord Pred Round Sin Sqr
Sqrt Succ Trunc
标准过程 Dispose Get New Pack Page Put Read
Readln Reset Rewrite Unpack Write Writeln
标准文件 Input Output

c.用户自定义标识符:由你自己根据需要来定义。
(1)选用的标识符不能和保留字相同。
(2)语法上允许预定义的标准标识符作为你自己定义的标识符使用,但最好还是不要用。
以下列举了你自己在定义标识符时可以用的字符:
A——Z;a——z;0——9;+,-,*,/,=,<>,<=,>=,<,>,(,),[,],{,},:=,,,;,.,:,..,',^

2.2 Pascal数据类型
数据是程序设计的一个重要内容,其重要特征----数据类型,确定了该数据的形、取值范围以及所能参与的运算。
Turbo Pascal 提供了丰富的数据类型,这些数据类型可以分为三大类:简单类型、构造类型和指针类型,其中简单类型可以分为标准类型(整型、实型、字符型和布尔型)和自定义类型(枚举型和子界型),构造类型可以分为数组类型、集合类型、记录类型和文件类型。这些数据类型中除了指针类型是动态数据类型外,其他的都是静态数据类型。在这些数据类型中的简单类型都是有序类型,除了实型以外的简单类型都是顺序类型,所谓顺序类型就是他们的值不仅是有序的而且是有顺序号。
在这里主要介绍整型、实型、字符型和布尔型四种常用的数据类型。
1.整型
一个整型数据用来存放整数。Turbo Pascal支持五种预定义整型,它们是shortint(短整型)、 integer(整型)、 longint(长整型)、 byte(字节型)和 word(字类型),Turbo Pascal分别用相同的名字作为他们的标识符。每一种类型规定了相应的整数取值范围以及所占用的内存字节数。
类型 数值范围 占字节数 格式
shortint -128..128 1 带符号8位
inteter -32768..32767 2 带符号16位
longint -2147483648..2147483647 4 带符号32位
byte 0..255 1 带符号8位
word 0..65535 2 带符号16位
Turbo Pascal规定了两个预定义整型常量标识符maxint和maxlonint,他们各表示确定的常数值,maxint为32767, longint为2147483647,他们的类型分别是integer 和longint
2.实型
一个实型数据用来存放实数。Turbo Pascal支持五种预定义实型,它们是real(基本实型)、 single(但精度实型)、double(双精度实型)、extended(扩展实型)、comp(装配实型),Turbo Pascal分别用相同的名字作为他们的标识符。每一种类型规定了相应的实数取值范围、所占用的内存字节数以及它们所能达到的精度
类型 数值范围 占字节数 有效位数
real 2.9e-39..1.7e38 6 11..12
single 1.5e-45..3.4e38 4 7..8
double 5.0e-324..1.7e308 8 15..16

Turbo Pascal支持两种用于执行实型运算的代码生成模式:软件仿真模式和80x87浮点模式。除了real可以在软件仿真模式下直接运行以外,其他类型必须在80x87浮点模式下运行。
3.布尔型
一个布尔型数据用来存放逻辑值(布尔值)。布尔型的值只有两个:false和true,并且false的序号是0,true的序号是1。false 和true都是预定义常数标识符,分别表示逻辑假和逻辑真。并且true<false。boolean是布尔型的标识符。
4.字符型
字符型用char作为标识符。字符型必须用单引号括起来,字母作为字符型时,大小写是不等价的,并且字符型只允许单引号中有一个字符,否则就是字符串。

2.3 常量与变量
1.常量
(1)常量:在某个程序的整个过程中其值不变的量。
(2)常量定义:常量定义出现在说明部分。它的语法格式是:
const
<常量标识符>=<常量>;
...
<常量标识符>=<常量>;
常量标识符的类型由定义它的常量的类型决定。例如:const a=12 隐含说明a是整型;const r=3.21 隐含说明r是实型......
(3)常量定义部分必须以保留字const开头,可以包含一个或几个常量定义,而且每个常量均以分号结束。
(4)Turbo Pascal类型常量
类型常量,又称变量常数,它是Turbo Pascal的一个扩充特性。类型常量的定义与标准Pascal规定的常数定义和变量说明有所区别。类型常量定义的语法格式:
const
<简单类型常量标识符>:简单类型=常数;
例如:
const
counter:integer=0;
flag:boolean=true;
index:0..100=0;

2.变量
(1)变量:在某个程序中的运行过程中其值可以发生改变的量
(2)变量说明:变量说明出现在说明部分。它的语法格式是:
var
<变量标识符列表>:<类型>;
...
<变量标识符列表>:<类型>;
其中,保留字var表示开始一个变量说明部分。变量标识符列表是一个用逗号隔开的标识符序列,冒号后面的类型是类型标识符。每个变量说明均以分号结束。
例如:
var
a,b,c:integer;
m,n:real;

2.4 标准函数
1.算术函数
函数标识符 自变量类型 意义 结果类型
abs 整型、实型 绝对值 同自变量
arctan 整型、实型 反正切 实型
cos 整型、实型 余弦 实型
exp 整型、实型 指数 实型
frac 整型、实型 小数部分 实型
int 整型、实型 整数部分 实型
ln 整型、实型 自然对数 实型
pi 无自变量 圆周率 实型
sin 整型、实型 正弦 实型
sqr 整型、实型 平方 同自变量
sqrt 整型、实型 平方根 实型
例:abs(-4)=4 abs(-7.49)=7.49 arctan(0)=0.0
sin(pi)=0.0 cos(pi)=-1.0 frac(-3.71)=-0.71
int(-3.71)=-3.0 sqr(4)=16 sqrt(4)=2

2.标准函数
函数标识符 自变量类型 意义 结果类型
odd 整型 判断奇数 布尔型
pred 离散类型 求前趋 同自变量
succ 离散类型 求后继 同自变量
例:odd(1000)=false pred(2000)=1999 succ(2000)=2001
odd(3)=true pred('x')='w succ('x')='y'

3.转换函数
函数标识符 自变量类型 意义 结果类型
chr byte 自变量对应的字符 字符型
ord 离散类型 自变量对应的序号 longint
round 实型 四舍五入 longint
trunc 实型 截断取整 longint
例:chr(66)='B' ord('A')=65 round(-4.3)=-5 trunc(2.88)=2

4.杂类函数
函数标识符 自变量类型 意义 结果类型
random 无自变量 [0,1间的随机实数 real
random word [0,自变量间的随机整数) word
randomize 无自变量 初始化内部随机数产生器 longint
upcase 字符型 使小写英文字母变为大写 字符型
downcase 字符型 使小写英文字母变为大写 字符型

2.5 运算符和表达式
1.运算符和优先级
(1)运算符
是实型,如果全部的运算对象都是整型并且运算不是除法,则结果为整型,若运算是除法,则结果是实型 a.算术运算符
运算符 运算 运算对象 结果类型
+ 加 整型、实型 只要有一个运算对象是实型,结果就
- 减 整型、实型 是实型,如果全部的运算对象都是整
* 乘 整型、实型 型并且运算不是除法,则结果为整型,
/ 除 整型、实型 若运算是除法,则结果是实型。
div 整除 整型 整型
mod 取余 整型 整型

b.逻辑运算符
运算符 运算 运算对象 结果类型
not 逻辑非 布尔型 布尔型
and 逻辑与 布尔型 布尔型
or 逻辑或 布尔型 布尔型
xor 逻辑异或 布尔型 布尔型

c.关系运算符
运算符 运算 运算对象 结果类型
= 等于 简单类型 布尔型
<> 不等于 简单类型 布尔型
< 小于 简单类型 布尔型
> 大于 简单类型 布尔型
<= 小于等于 简单类型 布尔型
>= 大于等于 简单类型 布尔型

(2)优先级
运算符 优先级
not 1(高)
*,/,div,mod,and 2
xor,+,-,or 3
in,=,<>,>=,<=,<> 4(低)

2.表达式
(1)算术表达式:算术表达式是由算术运算符连接常量、变量、函数的式子。算术表达式中各个运算符的次序为: ( )-->函数-->*,/,div,mod-->+,1
(2)布尔表达式:Turbo Pascal提供给布尔表达式以下基本操作:逻辑运算和关系运算。

(3)数学上的表达式与pascal语言表达式的区别

数学表达式 PASCAL表达式 注意
2a 2*a *号不能省略
a÷b a/b 除号的写法
a≠b a<>b 不等号的写法
a≤b a<=b 小于等于号的写法

思考与练习:

1、熟记Pascal的保留字和标准标识符,明确自定义标识符的定义要点。
2、取整函数int与截断取整函数trunc有什么区别?举例说明。
3、判断以下标识符的合法性:
a3 3a a17 abcd ex9.5 α β λ
5、将下列的数学表达式改写成PASCAL表达式:
b^2-4ac
6、求下列表达式的值:
20 mod 19 15 mod 9 7 div 8 19 div 3
(4>5) and (7<8)
(8>9) or ( 9<10)
2 and ((3=3) or (3<7))

program 程序
const 常量
type 类型
var 变量
function 函数
procedure 过程
begin 开始
end 结束
if 如果
then 那么
else 否则
case of 分支
for to do 计数循环
while 当循环
repeat 循环
until 直到
in 属于

基础你都还没看完,练习也没怎么做,这有什么好急的

第一个结构化程序设计语言是
答:第一个结构化程序设计语言是PASCAL。作为一门软件编程语言,基于ALGOL的Pascal语言是最早出现的结构化编程语言,具有丰富的数据类型和简洁灵活的操作语句。由瑞士苏黎世联邦工业大学的Niklaus Wirth(尼古拉斯·沃斯)教授于六十年代末设计并创立,并在1971年正式以数学家Pascal(帕斯卡)的名字为之命名,由此被...

pascal编译系统属于什么
答:pascal编译系统属于编程语言。它由瑞士Niklaus Wirth教授于六十年代末设计并创立的。Pascal语言语法严谨,层次分明,程序易写,可读性强,是第一个结构化编程语言。Pascal语言广泛用于各种软件,程序分为名称(program后自拟)、设置(var后规定)、开始(begin)、程序(正文)、读取(read/read ln)、结束(...

free pascal 是什么
答:Free Pascal是一种开源的Pascal和Object Pascal编程语言编译器和运行时系统。它支持多种操作系统和硬件平台,并允许开发者编写跨平台的Pascal应用程序。Free Pascal的核心特点之一是它对Pascal和Object Pascal语言的广泛支持。Pascal是一种结构化的编程语言,以其简洁的语法和强大的功能而著称。Object Pascal则...

pascal语言有几种版本?
答:Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦。 综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友。 Pascal语言简介 Delphi简介 === 方案三 C语言 & Visual C++ 优点(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。 (2)微软的MFC库博大精深,学会它可以让随...

试问freePascal与turboPascal的区别;请罗列要点即可?
答:FreePascal和TurboPascal都是面向过程的编程语言Pascal的不同实现。他们之间的主要区别如下:1.开发者和开发社区:Turbo Pascal由Borland公司开发,并成为1980年代乃至1990年代最为流行的集成开发环境(IDE)之一;而FreePascal则是一种自由软件,由一个拥有庞大的开发社区维护和改进。2.平台支持:Turbo Pascal...

pascal语言是谁编的
答:PASCAL语言是由瑞士的沃斯(N.Wirth)教授于1971年提出来的。它的命名是为了纪念法国数学家Pascal。它是世界上第一个结构化的高级程序设计语言。结构化程序设计主要由三种基本结构(顺序结构、选择结构、循环结构)组成。后来有人把函数和过程作为第四种基本结构。这四种结构对外看都只有一个入口和一个出口...

kuka机器人编程是用什么语言,
答:kuka机器人编程是用Pascal语言。Pascal是最早出现的结构化编程语言,具有丰富的数据类型和简洁灵活的操作语句。高级语言发展过程中,Pascal是一个重要的里程碑。Pascal语言是第一个系统地体现了E.W.Dijkstra和C.A.R.Hoare定义的结构化程序设计概念的语言。Pascal语言语法严谨,层次分明,程序易写,可读性强...

PASCAL与C,C++和JAVA不都是面向对象的程序设计语言吗?它们之间有什么不...
答:Pascal语言:Pascal是一种计算机通用的高级程序设计语言,由瑞士Niklaus Wirth教授六十年代末设计并创立的。Pascal的主要特点有:严格的结构化形式、丰富完备的数据类型、运行效率高、查错能力强等特点。由于上述特点,Pascal可以方便用于描述各种算法和数据结构。对于程序设计的初学者,Pascal语言有益于培养良好...

C语言和Pascal语言的区别,要详细。
答:而引用参数和 Pascal 的 var 参数如出一辙。另外,Pascal 语言本身也经过了巨大的发展,Borland 功不可没。今天人们用的 Pascal 几乎就是 Turbo Pascal 或 Delphi 的 Object Pascal。N.Wirth 时代的 program Name(input, output);const a ...

是不是越高级的编程语言越简单,越低级的编程语言越难
答:5、Pascal语言 Pascal语言是由Nicolas Wirth在七十年代早期设计的,因为他对于FORTRAN和COBOL没有强制训练学生的结构化编程感到很失望,“空心粉式代码”变成了规范,而当时的语言又不反对它。Pascal被设计来强行使用结构化编程。最初的Pascal被严格设计成教学之用,最终,大量的拥护者促使它闯入了商业编程中。当Borland发布IB...