Pascal程序设计基本教程Word文件下载.docx
- 文档编号:22662797
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:18
- 大小:27.86KB
Pascal程序设计基本教程Word文件下载.docx
《Pascal程序设计基本教程Word文件下载.docx》由会员分享,可在线阅读,更多相关《Pascal程序设计基本教程Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。
一是输出语句;
二是赋值语句;
三是复合语句;
四是输入语句。
第二课输出语句
计算机是如何把图形或解决问题的结果显示在屏幕上的呢?
pascal语言给我们提供了一条实现这一目的的语句write(writeln)。
programli2;
begin
writeln(‘‘,”######”);
writeln(‘‘:
2,”######”);
3,”######”);
4,”######”);
5,”######”);
6,”######”);
end.
输出内容:
######
1、格式
(1)write(输出项1,输出项2,输出项3,……);
(2)writeln(输出项1,输出项2,输出项3,……);
你想在屏幕上显示什么,就在输出项的位置填上什么。
可以多项输出,中间用逗号隔开。
2、输出项可以是常量、变量、函数名、表达式或字符串等,如果要输出常量、变量、函数名、表达式的值,则就直接输入即可;
如果要照原样输出常量、变量、函数名、表达式或字符串等,则需要把输出项用单引号引起来。
3、场宽
(1)单场宽
场宽就是在输出项后面用冒号隔开再加上一个数,它是用来说明这个输出项所占得宽度,主要目的是确定输出项的位置。
(2)双场宽
在双场宽中,第一个场宽意义不变,第二场宽是对常量或变量的值的小数位数进行定义,是什么数,就保留几位小数。
练习课本:
P26练一练;
P28例1;
P32练一练同步操作:
P15——P18
第三课赋值语句
(一)赋值语句是最简单的语句,其一般形式为:
<
变量>
:
=<
数据或表达式>
例:
x:
=15s:
=’ok’m:
=3+5w:
=a+b
赋值语句的作用是计算表达式的值,并赋给变量。
对于任何一个变量必须首先赋值,然后才能引用,否则,未赋初值的变量将以一个随机值参与运算。
另外,赋值号两边的类型必须相同,但表达式值为整数时,它可自动化为实型后赋给该实型变量,即符合赋值相容。
例:
关于赋值的例子
programexample;
vara,b:
integer;
begin
a:
=3;
b:
=2;
writeln(a);
writeln(b);
=a+b;
b:
=a-b;
readln
end.
(二)算术表达式是由符合pascal语法规定的运算对象、算术运算符、圆括号组成的有意义的式子。
常用的算术运算符由以下6个:
+、-、*、/、div、mod、
补充1、trunc(取整函数)、round(舍入取整函数)
trunc(1.2)=1round(1.2)=1
trunc(1.7)=1round(1.7)=2
trunc(-3.7)=-3round(-3.7)=-4
2、pred(前导函数)、succ(后继函数)
pred(5)=4succ(5)=6
3、chr(取字符函数)、ord(取序号函数)
chr(65)=’A’ord(’A’)=65
chr(97)=’a’ord(’a’)=97
练习课本:
P34练一练;
P36练一练;
P38第七课;
同步操作:
P21——P24;
第四课 复合语句
复合语句是由若干语句组成的序列,语句之间用分号“;
”隔开,并且以begin和end括起来,作为一条语句。
复合语句的一般形式:
begin
语句1;
语句2;
……
语句n;
end
变量值的交换
programjiaohuan;
var
a,b,t:
begin
a:
=10;
=20;
begin
t:
=a;
a:
=b;
b:
=t;
end;
writeln('
a='
a,'
b='
b)
end.
同步操作P26——29(讲解第三题)
第五课输入语句
通过计算机的外设把数据送到计算机内存的过程称为输入。
TurboPascal语言的输入语句有如下两种形式:
read(<
变量名表>
);
readln(<
输入项表>
是一个或几个由逗号隔开的变量标识符,他们必须在程序说明部分预先说明,他们可以是整型、实型或字符型,布尔型不可以直接读入。
例如a,b,c为整型变量,read(a,b,c)之后
键盘输入:
203040<
CR>
(<
表示回车)
结果:
a=20,b=30,c=40
readln语句和read语句不同之处在于输入数据到各变量之后,readln自动换行,从下一行开始再输入数据。
一个read语句执行完后,数据行中多余的未读数据可以被下一个输入语句读入;
而一个readln于执行完后,数据行中多余未读数据就没有用了。
readln语句中可以不包含变量名表。
即有以下等价情况:
readln(a,b);
readln等价于readln(a,b)
输入语句输入的数据类型必须和变量一一对应。
如果输入的是一串整数或实数,数据间用空格或回车分隔;
若输入的是一串字符,则不用分隔。
输入语句示例
programshuru;
var
x:
c:
char;
begin
write('
pleaseinputthenumber:
($XXX.XX)'
);
readln(c,x);
writeln('
Thepriceis'
c,x);
end.
P50练一练;
P31——P33;
第三部分选择结构程序设计
包括两个部分:
一是if语句;
二是case语句。
第六课if语句
.1 if语句
IF语句是由一个布尔表达式和两个供选择的操作序列组成。
运行时根据布尔表达式求值结果,选取其中之一的操作序列执行。
有两种形式的IF语句:
if <
布尔表达式>
then<
语句>
;
语句1>
else<
语句2>
当布尔表达式的值为真,则执行then后面的语句,值为假时有两种情况:
要么什么也不做,要么执行else后面的语句。
注意else前面没有分号,因为分号是两个语句之间的分隔符,而else并非语句。
如果在该处添了分号,则在编译的时候就会认为if语句到此结束,而把else当作另一句的开头,输出出错信息。
例1:
求y=f(x),当x>
0时,y=1,当x=0时,y=0,当x<
0时,y=-1
programlianxi;
varx,y:
readln(x);
ifx>
0theny:
=1;
ifx=0theny:
=0;
ifx<
=-1;
writeln('
y='
y);
end.
在TurboPascal语言if语句中被构造的语句只能是一条语句,当条件选择某个分支的计算要用多个语句描述时,就必须把该分支用begin和end括来,写成复合语句。
在用if语句连续嵌套时,如果你插入适量的复合语句,有利于程序的阅读和理解。
例2:
当x>
0时候,计算x*x,并且输出x和x*x,
programlianxie3;
varx,x1:
readln(x);
ifx>
=0then
x1:
=x*x;
x*x='
x1);
x='
x);
end;
当if语句嵌套时,TurboPascal约定else总是和最近的一个if配对。
第七课case语句
case语句是由一个表达式和众多可选择的操作序列组成。
运行时,根据表达式的求值结果,在众多的分支中选取一个分支执行。
其形式为:
case 表达式 of
常量1:
语句1;
常量2:
语句2;
常量n:
语句n;
else 语句n+1{可选项}
end;
表达式只能是顺序类型(除了实型以外的简单类型),其值必须是唯一确定并且和表达式类型相同。
case语句执行和表达式值相匹配的case常数所指向的那条语句,如果没有相匹配的值,则执行else部分(如果有的话)或者什么也不做。
在else前面的语句末尾有分号,这是和if语句不同的。
根据学生的成绩给予相应的等低,对应关系如下:
90——100 A
80——89 B
60——79 C
60以下 D
programchengji;
vars:
x:
ch:
write('
inputthescore:
'
readln(s);
=torunc(s);
if(s>
=0)and(s<
=100)then
casexdiv10of
10,9:
='
A'
;
8:
B'
7,6:
C'
elsech:
D'
writeln(s,'
--'
ch);
补充练习:
试编写一个根据用户键入的两个操作数和一个运算符,由计算机输出运算结果的程序。
这里只考虑加(+)、减(-)、乘(*)、除(/)四种运算。
例1:
Inputx,y:
153
Inputoperator(+,-,*,/):
+
15.00+3.00=18.00
例2:
50
/
divideiszero!
第四部分循环结构程序设计
包括部分:
一是for语句;
二是while语句;
三是repeat语句;
第八课for语句
补充:
类型integerlongintreal
数值范围-32768..32767-2147483648..21474836472.9e-39..1.7e+38
for语句用来描述已知重复次数的循环结构。
for语句有两种形式:
(1)for控制变量:
=初值 to 终值 do 语句;
(2)for控制变量:
=初值 downto 终值 do 语句;
第一种形式的for语句是递增循环。
首先将初值赋给控制变量,接着判断控制变量的值是否小于或等于终值,若是,则执行循环体,在执行了循环体之后,自动将控制变量的值该为它的后继值,并重新判断是否小于或等于终值。
当控制变量的值大于终值时,退出for循环,执行for语句之后的语句。
第一种形式的for语句是递减循环。
首先将初值赋给控制变量,接着判断控制变量的值是否大于或等于终值,若是,则执行循环体,在执行了循环体之后,自动将控制变量的值该为它的前趋值,并重新判断是否大于或等于终值。
当控制变量的值小于终值时,退出for循环,执行for语句之后的语句。
for语句中的初值、终值、控制变量的数据都必须是顺序类型。
当初值和终值确定后,重复的次数就确定不变了,并且控制变量在重复语句内不能施加任何赋值操作。
计算1+2+3+……+99+100
programjia;
varn,sum:
sum:
fori:
=1to100do
sum:
=sum+i;
writeln(sum);
(1)5、程输出如下的乘法口诀表:
1*1=1
2*1=22*2=4
3*1=33*2=63*3=9
4*1=44*2=84*3=124*4=16
5*1=55*2=105*3=155*4=205*5=25
6*1=66*2=126*3=186*4=246*5=306*6=36
7*1=77*2=147*3=217*4=287*5=357*6=427*7=49
8*1=88*2=168*3=248*4=328*5=408*6=488*7=568*8=64
9*1=99*2=189*3=279*4=369*5=459*6=549*7=639*8=729*9=81
(2)25、求1+1*2+1*2*3+......+1*2*3*......*9*10
(3)38、求1+11+111+......共N项之和(1<
N<
9)
(4)54、用5元钱买100只纽扣,其中金属纽扣每只5角,有机玻璃纽扣每只1角,小纽扣1分钱买3个,编程求出各种纽扣买了多少只?
(5)56、按字母表顺序和逆序每隔一个字母打印,即
ACEGIKMOQSUWY
ZXVTRPNLJHFDB
(6)64、求1到100的偶数及奇数和
(7)68、“水仙花数”是指一个3位数,其各位数的立方和等于该数,如:
153=13+53+33。
编写程序,输出所有的“水仙花数”.
(8)88、请编制程序输出的结果是如下图所示。
(用循环语句实现)
1
212
32123
4321234
5
43212345
6
5
432123456
32123
212
1
(9)161、输入N值,编程输出如下图形。
Input
一个整数N(1<
=N<
=7)。
Output
排列成菱形的大写字符,首字符为Z,以后依次为Y,X...
SampleInput
3
SampleOutput
Z
YX
WV
UT
S
(10)162、输入下列图形:
以26英文字母
a
ab
abc
......
........
..........
abcde..............wyz
第九课while语句
while语句用于“当满足某一条件时进行循环”的情况。
while语句的语法格式:
while布尔表达式 do 语句;
循环结束条件在进入循环体之前测试,若最初的测试值为false,则根本不进入循环体,也就是说while循环是是属于当型循环。
为了能使while重复能终止,循环体中一定要有影响布尔表达式的操作,否则该循就是一个死循环。
计算从0到某个数之间所有奇数的和。
programjishu;
varodds,limit,sum:
readln(limit);
odds:
whileodds<
=limitdo
sum:
=sum+odds;
odds:
=odds+2
writeln(sum:
1)
第十课repeat语句
repeat语句用于“重复执行循环体,一直到指定的条件为真时为止”。
语法格式为:
repeat
语句1;
……
语句n;
until 布尔表达式;
repeat重复基本上有和while重复一样的描述循环计算的能力,但有一些不同:
在repeat语句的结构中,布尔表达式求值在计算操作之后,而while语句中,布尔表达式求值在计算操作之前,也就是说repeat至少执行一次循环体。
while语句的成分语句只能是一个语句。
因此,当重复动作包含多个语句时,要用begin和end,使它变成一个复合语句。
而repeat语句的保留字repeat和until已经起语句括号作用,可以包含多个语句而无须begin和end。
repeat语句中,当布尔表达式为true时结束循环,而while语句中,是当表达式为false时才结束循环。
当描述由计算操作后的情况确定重复是否继续进行的计算时,通常用repeat语句描述。
第四部分数组
1.数组的定义
数组是程序中最常用的结构数据类型,用来描述由固定数目的同一类型的元素组成的数据结构。
数组的每个元素和下标相关联,根据下标指示数组的元素。
数组的存储方式为按行存储,在编译阶段,计算机根据数组的类型说明,确定其存储空间的大小。
数组可以是任何顺序类型。
数组的定义形式:
array[<
下标类型1>
,……<
下标类型n>
]of<
元素类型>
其中n称为数组的维数,每维的下标类型必须是一个顺序类型,通常为子界类型或枚举类型,其作用是指定数组下标的编制方式和下标取值范围。
例如:
var a:
array[1..10]ofinteger;
{有10个元素的一维数组}
m,n:
b:
arrayp[1..5,1..5]ofreal;
{有25个元素的二维数组,依次按[1,1]……,[1,5],[2,1]……,[2,5],……[5,1],……[5,5]}
2.数组的操作
当数组的元素类型为简单类型时,其下标变量和简单类型变量一样使用。
a[50]:
=50;
a[20]:
=a[5];
一个数组,下标的起始值和终止值是在类型定义中给定的,不能在程序执行中再通过其他途径来改变,所以数组元素的个数在程序运行期间是固定不变的。
数组变量作为整体仅允许同类型数组之间的赋值运算。
varx,y:
array[1..10]ofinteger;
=y
读入5个学生的学号和成绩,计算他们的平均分,若比平均分高10分的等第为A,若比平均分高小于10分的等地为B,若低于平均分,则等第为C,输出他们的成绩和等第。
programsample7d1(input,output);
constn=5;
type
no=array[1..n]ofinteger;
s=array[1..n]ofreal;
var
i:
k:
num:
no;
score:
s;
k:
=1tondo
readln(num[i],score[i]);
k:
=k+score[i];
=k/n;
write(num[i],score[i]);
if(score[i]-k)>
=10thenwriteln('
)
else
if((score[i]-k)<
10)and((score[i]-k)>
0)
thenwriteln('
elsewriteln('
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Pascal 程序设计 基本 教程