1 / 10
文档名称:

Pascal语言和程序设计基础知识学习.docx

格式:docx   大小:22KB   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Pascal语言和程序设计基础知识学习.docx

上传人:知识徜徉土豆 2025/3/30 文件大小:22 KB

下载得到文件列表

Pascal语言和程序设计基础知识学习.docx

相关文档

文档介绍

文档介绍:该【Pascal语言和程序设计基础知识学习 】是由【知识徜徉土豆】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【Pascal语言和程序设计基础知识学习 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。Pascal语言和程序设计基础
第1章Pascal基本语句与程序结构
第1节简单Pascal程序实例【知识拓展】
.学习之前,我们先认识几个英文单词。Program(程序)、const是constant(常 量)的缩写、var是variable(变量)的缩写、begin(开始)、end(结束)。
.从上面的例子中可以看到一个pascal程序分为两个部分:程序首部和程序体。 程序首部包括:
程序标志。"program"用来标识"这是一个pascal程序";程序名称。由程序 设计者自己定义,但一般习惯是使程序名能反映出程序的含义。
程序体包括:
说明部分。用来描述程序中用到的数据属性。它分为常量说明和变量说明两部分。 执行部分。它的作用是通知计算机执行指定的操作,如果一个程序中不写执行部分, 在程序运行时计算机什么工作也不做。执行部分以"BEGIN"开始,以"END."结束 (注意:"END."后面有一个句点,表示整个程序结束)。它们中间是一些执行具体操 作的语句,以分号作为语句间的分隔符,Being和end应成对出现。
.常量是指要程序运行过程中,其值不能被改变的量。本程序中第二、三行是 "常量说明区",用来定义常量,也就是给常量取个名字并用该名字标识符来代表它, 如本例中用到的圆周率就是一个不会改变的量, 这样在程序中凡出现pi处,。
.变量代表了一个存储单元,该单元中存放的数值是可变的,故称为变量。如游 戏“魂斗罗"中玩者命的个数最初为3 ,当你死了一次命的个数减少一个,这里命的 个数就是一个变量(或者说命的个数存储在一个存储单元中)。可以看出在程序运行过 程中,其值可以改变的量,称为变量。
与丙,多余的糖果自己吃掉,然后乙与丙也依次这样做。问最后甲、乙、丙三人各有 多少粒糖果?
问题分析:这个问题中我们关心的是在游戏过程中每个小朋友的糖果个数,且他 们所拥有的的糖果数是在变化的。因此可用a,b,c三个变量分别存放甲乙丙三个小朋友 在某一时刻所拥有的糖果数。对于每人,分糖后,他的糖果数一定为原来的糖果数
div3 (因为分糖过程糖果的数目不一定都刚好分完,用整除恰恰可以表示多余的糖自 己吃掉)。而其他两人则增加与这个小朋友现在拥有的一样的糖果。
[程序清单]
program ex2;
var
A,B,C:integer;
begin
A:=50; B:=43; C: = 13;
{初始时每个小朋友所拥有的糖果数}
A:=A div 3; B:=B+A; C:=C+A;
{甲小朋友分糖果后,每个人拥有的糖果数变化情况}
B:=B div 3; A:=A+B; C:=C+B;
{乙小朋友分糖果后,每个人拥有的糖果数变化情况}
C:=C div 3; A:=A+C; B:=B+C;
{丙小朋友分糖果后,每个人拥有的糖果数变化情况}
writelnCA='A'B=',B;C=',C);{输出结果}
read In;
end,
[运行示例]
A=51B=35C=16【课外练习】
.使用PASCAL语言在屏幕上输出自己的班级和姓名。
.已知一个学生的语文成绩为89 ,数学成绩为96 ,外语成绩为99 ,编程求他的
总分和平均成绩。
3,输入一个三位自然数,把这个数的百位数与个位数对调,输出对调后的数。
.程序的书写格式一般不影响程序的功能,但为了使程序的结构清晰,易于阅读, 注意要采取紧缩对齐格式书写。程序中{……}内的内容是对语句的注释,不影响程序的 实际运行。
.系统的启动: ,即可启动系统。屏幕上出 现如图1所示的集成环境。
最顶上一行为主菜单。中间蓝色框内为编辑窗口,在它个编辑窗口内可以进行程 序的编辑。最底下一行为提示行。
.新建程序窗口
按F10进行主菜单,选择FILE菜单,执行其中New命令。就可建立一个新的程 序窗口()。
.程序的输入、编辑与运行在当前程序窗口中,一行一行的输入程序。事实上, 程序窗口是一个全屏幕编辑器。
所以对程序的编辑与其它编辑器的编辑方法类似,这里不再重复。当程序输入完 毕之后,一般要先按Alt+F9(或执行compile菜单中compile命令)对程序进行编译。如 果程序有语法错误,则会弹出compilemessag窗口显示错误信息。若无语法错误,则 窗口正中央会出现一个对话框,提示编译成功。接下来,我们可以运行程序了。
程序的运行可以通过按ALT+R打开RUN菜单中的RUN命令,或直接按快捷键 CTRL+F9。则可以在用户窗口中输出运行结果。通常在程序运行结束后系统回到Pascal系统的集成环境,因此要查看运行结果,要按ALT+F5将屏幕切换到用户屏幕。
.程序的保存与打开:当程序第一次运行时,系统就要求用户保存,并在屏幕上 会出现一个对话框要求输入文件名(默认扩展名为pas)。。当我们把程序修改后想再次 保存,就可以通过按F2键(或执行File菜单中的save命令)来保存程序。
当我们要将磁盘上的程序文件中的PASCAL程序装入窗口时,可按F3(或执行File 菜单中的Open命令)来装入程序,此时系统也会弹出一个对话框要求输入要打开的文 件名,或直接在文件对话框列表中选择所要的文件,然后回到打开文件。
【同步练习】
1 .阅读下列程序,分析程序的结构,指出其中变量的个数,并上机运行。
[程序清单]
program pl_l_2(input,output);
var
a,b,h,s:real;
begin
write(zinputa,b,h:');
readln(a,b,h);
s:=(a+b)*h/2;
writeln(zs= z,s:12:6);
end.
[运行示例]
inputa,b,h:3/4/5/(下划线上的内容需要从键盘输入,其中表示回车键)
S=
第2节顺序结构的程序实例【问题描述】
输入任意两个数,将顺序交换后输出,例如输入两数为45、32 ,输出则为32、45。
【问题分析】
开始
输入x,y
S <x
X<y
Y<s
输出x,y
结束3
由于涉及到的两个数是任意的,不能固定大小,所以在这里设置两个变量来存放 着两个数值。
在做题之前,我们联想一下生活中的实例,如果有满满的两杯水,我们要将两个 杯中的水交换,常要借助于第三个杯子,第一步将第一杯水倒入第三个杯子中,第二 步将第二杯水倒入第一个杯子中,第三步将第三杯水倒入第二个杯子中。通过以上三 步后,两个杯中的水就被交换了。
在本题中我们将两个数设置为两个变量X,Y ,再引入一个中间变量S ,在前面我们 提到变量代表了一个存储单元,该单元中存放的数值是可变的,那么我们可以将变量 理解为一种容器,只不过这里放置的不是水这样的物品,而是数值。两个变量值交换, 我们可以采取顺序结构流程图。
【程序设计】
[程序清单]
program pl_2_l (input,output);
var
x,y,s:integer;
begin
writein('请输入两个数:’);
readln(x,y);
s:=x;
x:=y;
y:=s;
writein(输出两个数:',x,' ' ,y);
end.
[运行示例]
请输入两个数:45 / 32 /
输出两个数:3245【知识拓展】
.程序是由若干条语句组成的。一条语句完成一个动作或者实现一个功能,若干 条语句组合在一起就完成了整个程序的任务。像本例这样按照程序的语句顺序逐句执 行的程序,我们称之为顺序结构的程序。
.本例顺序结构的程序流程图和结构化流程图如下:
\

.一个程序中可能要使用到若干个变量,如本程序中使用了 3个变量,为了区别 不同的变量,必须给每个变量(存贮单元)取一个名(称为变量名),该变量(存贮 单元)存放的值称为变量的值,变量中能够存放的值的类型就是变量的类型,如本程 序中就是设置为整型。
变量说明的一般格式:
VAR
〈变量标识符 >[,<变量标识符 >]:<类型〉;
(中括号内部分表示可省,下同)
其中VAR是pascal保留字,表示开始一个变量说明段,每个变量标识符或由逗号隔 开的多个变量标识,必须在它的冒号后面说明成同一类型。一个程序中,可以说明许多 不同类型的变量,每种类型变量之间用分号隔开,共用一个VAR符号。
例如:
var
age,day:integer;
amount,average: real;
其中,Integer(整型)、Rea 1(实型)是标准标识符,它们是"类型标识符",代表了 确定的类型,如age和day被定义为整型变量,amount和average被定义为实型变量。
.变量既然代表一个存储单元,其值是可变的,那么其中的值是怎么提供的,又 是怎么改变的呢?可以通过赋值语句来进行。
赋值语句的格式:变量名:=表达式;其中":="称为赋值号。
执行过程:计算机先计算赋值号右边表达式的值,然后将表达式的值赋给变量名代 表的变量。
如:A:=24;A:=A+1
。这里通 常是指输出到屏幕。
输出语句的两种格式
①write语句
格式:Write(表达式1 ,表达式2 ,......);
如:write(,5);
write('MynameisLiping');
②writein语句格式:
Write(表达式1 ,表达式2)或writein
:计算机执行到某一输出语句时,先计算出输出语句中的每个 表达式的值,并将每一个表达式的值一个接一个地输出到屏幕上。
Write语句与writeln语句格式上都相似,但它们在功能上有所不同,两个语句的 区别在于,write语句将其后括号中的表达式一个接一个输出后,没有换行。而writeln 语句则在输出值后换行。
7,FreePascal向程序设计者提供了丰富的数据类型,其中最基本的几种数据类型是: 整型、实型、布尔型和字符型。
,整型数据可以是正整数、负整数和整数零。 FreePascal支持五种预定义整型,它们是短整型(Shorint)、整型(integer)、长整型 (Longint),字节型(Byte)和字类型(Word),每一种类型规定了相应的整数取值范围以及 所占内存字节数(一个字节为8个二进制位)。integer类型的取值范围是-32768..32767 , Longint 类型的取值范围是-2147483648..2147483647

【问题描述】
试编一程序,输入一梯形的上底、下底、高,求该梯形的面积。
【问题分析】
整个程序分为三段:输入数据、计算面积、输出结果。程序中用a,b,h三个变量分 别存放梯形的上、下底与高,S存放面积。要使用这些变量都要先说明,程序的执行 部分中先输入上、下底与高,接着求面积S,最后输出结果So在这里根据情况要将变 量定义为实型。
【程序设计】
[程序清单]
program pl_2_2;
var
a,b,h,s:real;
begin
write('Inputa,b,h:');
readln(a,b,h);
s:=(a+b)*h/2;
write(,s=,,s:10:3);
end.
【知识拓展】
.在程序中变量获得一个确定的值,固然可以用赋值语句,但是如果需要赋值的 变量较多,或变量的值经常变化,则使用本节介绍的输入语句——读语句,将更为方便。 读语句是在程序运行时由用户给变量提供数据的一种很灵活的输入动作,它有两种格 式:
read(〈变量名表〉);
readln[(< 变量名表 >)];
其中变量名表是用逗号隔开的若干个变量名组成的。功能:从标准输入文件(一 般对应着键盘)中读入数据,并依次赋给相应的变量。说明:
I .执行到read或readln语句时,系统处于等待状态,等待用户从键盘上输入数 据,系统根据变量的数据类型的语法要求判断输入的字符是否合法。
(整型或实型)数据时,数据间要用空格或回车分隔开各个数据, 输入足够个数的数据,否则仍要继续等待输入,但最后一定要有回车,表示该输入行 结束,直到数据足够,该读语句执行结束,程序继续运行。

read语句是一个接一个地读数据,在执行完本Read语句(读完本语句中变量所需 的数据)后,下一个读语句接着从该数据输入行中继续读数据,也就是说,不换行。
.一个实型数据用来存放实数。实型数据可以是正实数、负实数和实数零。实型 数据一般用小数或指数形式(亦称科学表示法)表示。例如:
+
+8(=*108)
--3(=-*10-3)
-
-418E3(=-418*103)

都是全法实数型数。*10-39—*1038o
.Freepascal语言中的算术表达式是由符合其语法规定的运算对象(包括常量、变 量、函数)、算术运算符、圆括号组成的有意义的式子。
如:A+*5/-Abs(-1123)0
.常用的有以下6个算术运算符:
①+(加)
②-(减)
③*(乘)
④/ (实数除):= , 5/2=,4/2=
⑤DIV(整除):只能用于整数运算,即除数和被除数均为整型,结果也为整型。如10 DIV 2=5,10 DIV 3=3,5 DIV 10=0。-15 DIV 4=-3。DIV 运算只取商的整数部分, 参与DIV运算的两个对象不能为实型。
⑥MOD(求余):也只能用于整数运算,结果为整数。
例如:10 mod 4=2,-17 mod 4=-1,
4 mod (-3)=1,-4 mod 3=-1 ,即 a mod b=a-(a div b)*bo
.如果一个表达式里出现两个或两个以上的运算符,则必须规定它们的运算次序。
pascal 规定:
①表达式中相同优先级的运算符才安从左到右顺序计算;
②表达式中不同优先级的运算符,按从高到低顺序计算;
③括号优先级最高,从内到外逐层降低;在算术运算中运算符的优先顺序与数学上的 四则运算一致,即"先乘除后加减"(注:"MOD"、"DW"运算的优先级与
…、"/"相同)O【同步练习】
1、有三个小朋友甲乙丙。甲有50粒糖果,乙有43粒糖果,丙有13粒糖果。现在他们做一个游戏。从甲开始,将自己的糖分三份,自己留一份,其余两份分别给乙