PASCAL练习

合集下载

pascal程序设计课程的

pascal程序设计课程的

• if 条件1
• then
• 语句11
• else
• if 条件2•then Nhomakorabea•
语句21

else

语句22 ;
• 【例】:计算下列函数 •
分析:根据输入的x值,先分成x>0与x≤0 两种情况,然后对于情况x≤0,再区分x是 小于0,还是等于0。
• 程序代码:

program ex;

var

x:real;
label 标号1,标号2………
标号只起到一个表明位置的作用,它并不改变原语句的功能
标号并不代表实际的行数,标号之间也可不按大小顺序
2、只能从一个语句结构中转出来,不允许从外部转进去
例如:求100以内的所有质数
program js(input,output); Var n,i,j:integer; begin
• readln(ch);
• case ch of
• ‘+’:s:=x+y;
• ‘-‘:s:=x-y;
• ‘*’:s:=x*y;
• ‘/’:s:=x/y
• end;
• writeln(x,ch,y,’=’,s)
• end.
上机练习题
1.求一元二次方程ax2+bx+c=0的根。 算法分析:方程的系数a,b,c决定了方程有无根,是几个根,是 实数根还是复根。 2.打印某年某月有几天。 算法分析:可分为以下3种情况: 每年的1,3,5,7,8,10,12这七个月每月为31天; 每年的4,6,9,11这四个月为30天; 2月又分为两种情况:闰年为29天,否则为28天。 判断闰年的条件:年数能被4整除,并且不能被100整除,或者 年数能被400整除;

pascal基础练习

pascal基础练习

1.倒字母金字塔输入n(n<=26),输出n行的字母金字塔。

【样例输入】3【样例输出】ABCBAABAA2.猴子吃桃猴子第一天摘下若干个桃子,当即吃了一半还不过瘾,又多吃了一个;第二天又将剩下的桃子吃掉一半又多吃了一个;以后每天早上都吃了前一天剩下的一半零一个。

到了第n 天想再吃时,见只剩下一个桃子,求第一天共摘了多少个桃子?【样例输入】2【样例输出】4说明:到第2天早晨只剩下1个,表示共摘了4个桃子。

3.素因式分解任何一个大于1的自然数可以分解成它的素数因子的乘积,而且这个素数分解式是唯一的(唯一定理)。

输入一个大于1的正整数,输出该素数分解式。

【样例输入1】100【样例输出1】100=2*2*5*5【样例输入2】7【样例输出2】7=74.纯粹合数一个合数,去掉最低位,剩下的数仍是合数,再去掉剩下的数的最低位,留下来的数还是合数,这样反复,一直到最后仅剩下的一位数还是合数,我们把这样的数称为纯粹合数。

求10000以内的所有纯粹合数。

5.立方数拆分一个整数n(n<=2000)的立方可以表示为两个整数的平方差。

输入一个整数,输出它是由哪两个整数的平方差。

【样例输入1】2【样例输出1】31样例1说明:23=32-12【样例输入2】1985【样例输出2】19711051969120课后练习:1.输入n,计算s(保留2位小数)。

已知s=1/(1×2)+1/(3×4)+1/(5×6)+……+1/((n-1)×n)。

【样例输入】2【样例输出】0.502.纯粹素数纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。

这样下去一直到最后剩下的一位数也还是素数。

求出所有小于10000的四位的纯粹素数。

3.角谷猜想对于任意大于1的自然数n,若n为奇数,则将n变为3*n+1,否则将n变为n的一半。

经过若干次这样的变换,一定会使n变为1。

PASCAL-函数教程+练习.ppt

PASCAL-函数教程+练习.ppt

a1:=GCD(a1,a4);
a1:=GCD(a1,a5);
Writeln(a1);
readln
End.
函数小结
函数的结果是一个具体的值, 在函数体中必须将所得到的 运算结果赋给函数名;主程序通过调用函数得到函数的运算结 果。调用函数的一般格式为:
函数名 (实在参数表) 调用函数时, 函数名后面圆括号内的参数必须有确定的 值, 称为实在参数。调用时即把这些实际值传送给函数形参表 中的相应形参变量。函数不是单独的语句, 只能作为运算赋值 或出现在表达式中。
Pascal程序设计基础
第四章 过程与函数
子程序是什么
在程序设计中,我们会发现一些程序 段在程序的不同地方反复出现,此时 可以将这些程序段作为相对独立的整 体,用一个标识符给他起一个名字, 凡是程序中出现该程序段的地方,只 要简单地写上其标识符即可。这样的 程序段,我们称之为子程序。 Pascal中的子程序有两种形式:函数 和过程。
Readln(n1,n2,n3,n4,n5); T1 := n1; T1 := Max(t1,n2); T1 := Max(t1,n3); T1 := Max(t1,n4); T1 := Max(t1,n5); Writeln(‘Max number : ‘,t1); End.
从上例看出,引入函数实际上是将一个复杂的 问题划分成若干个易于处理的子问题,将编程化简 的一种有效办法,而化简的方法是多种多样的,如 前面已经做过求三个数中的最大数,所以可定义一 个专门求三个数中最大数的函数(Max)。第一次用 这个函数求出n1,n2,n3三个数中的最大数t1;第二次 调用这个函数求出t1与n4,n5三个数中的最大数,也 就是前三个数的最大数(已在t1中)和后面二个数再求 一次,就得到五个数的最大数。因此,需要两次使 用“求三个数中的最大数”,步骤如下: ①调用函数Max ( n1, n2, n3), 求出n1,n2,n3中 的最大者 t1; ②调用函数Max ( t1, n4, n5 ),求出t1, n4, n5中的 最大者t2; ③输出最大数 t2。

Pascal基础教程(PDF完整版)

Pascal基础教程(PDF完整版)

Pascal基础教程目录第一课初识PASCAL语言 (1)第二课赋值语句与简单的输出语句 (5)第三课带格式的输出语句输入语句 (12)第四课简单的分支结构程序设计 (19)第五课if嵌套与case语句 (23)第六课for循环 (29)第七课while循环与repeat-until循环 (30)第八课一维数组 (35)第九课多维数组 (39)第十课字符数组与字符串 (45)第十一课枚举、子界、集合及记录类型 (51)第十二课过程与函数 (66)第十三课动态数据类型(指针类型) (76)第十四课文件 (89)附录一Pascal中的字符串函数和数学函数 (111)附录二关于fillchar的使用和讨论 (116)附录三程序的调试技巧 (117)附录四Pascal的多种退出语句用法 (123)第一课初识Pascal语言信息学奥林匹克竞赛是一项益智性的竞赛活动,核心是考查选手的智力和使用计算机解题的能力。

选手首先应针对竞赛中题目的要求构建数学模型,进而构造出计算机可以接受的算法,之后要写出高级语言程序,上机调试通过。

程序设计是信息学奥林匹克竞赛的基本功,在青少年朋友参与竞赛活动的第一步必须掌握一门高级语言及其程序设计方法。

一、Pascal语言概述PASCAL语言也是一种算法语言,它是瑞士苏黎世联邦工业大学的N.沃思(Niklaus Wirth)教授于1968年设计完成的,1971年正式发表。

1975年,对PASCAL语言进行了修改,作为"标准PASCAL语言"。

PASCAL语言是在ALGOL60的基础上发展而成的。

它是一种结构化的程序设计语言,可以用来编写应用程序。

它又是一种系统程序设计语言,可以用来编写顺序型的系统软件(如编译程序)。

它的功能强、编译程序简单,是70年代影响最大一种算法语言。

二、Pascal语言的特点从使用者的角度来看,PASCAL语言有以下几个主要的特点:⒈它是结构化的语言。

Pascal百题练习

Pascal百题练习

1、有一数字如下:65436543654365436543………循环排列,(1)输入一个数字n,输出第n个数字。

如输入3则输出为4,输入1则输出为6。

(2)输入一个数字n,在屏幕上输出如题数字,每行30个数字。

(3)输入一个数字n,输出所有数字4所在的位数。

如输入15,输出4所在的位置,即3 7 11 152、有一字符串如下:EDCBAEDCBAEDCBA……..循环排列,(1)输入一个整数n,输出第n位字符。

如输入3输出为C,输入1则输出为E。

(2)输入一个整数n,在屏幕上输出如题字母,每行30个字母。

(3)输入一个数字n,输出所有1-n范围内字母C所在的位数,场宽4。

如输入15,输出D所在的位置,即2 7 123、输入一字符,如该字符为小写字母,则转换成大写并输出;如该字符为大写字母,则转换成小写并输出,如果输入是数字则将该数字转成整数并输出该整数。

否则输出‟Error‟,即错误。

如输入a则输出为A,如输入为B则输出为b,如输入9则转成整数9并输出。

(提示:‟a‟≤小写字母≤‟z‟,‟A‟≤大写字母≤‟Z‟)4、输入三个数,判断这三个数能否作为边长组成三角形,如果能组成则输出TRUE,不能组成三角形则输出FALSE。

5、输入三个数,按从大到小的顺序输出。

如,输入15 20 16 ,输出为20 16 156、输入一个三位整数,输出一个新三位数,使其百位数最大,个位数最小。

如,输入315,输出531。

7、输入四个整数,输出四个数中的最大值和最小值。

(分两行输出)8、输入一个秒数,转换成小时、分、秒并输出。

如输入4500,输出为1:15:0。

9、有鸡兔同笼,现发现有头30个脚90只,试编程算出鸡兔各多少只并输出。

10、有五个好朋友相聚,第一个朋友带来很多糖块赠送给各位好友,使每人的糖块在原来的基础上增加了一倍,第二个朋友也向各位朋友分发糖块,使每人在已有糖块的基础上又增加了一倍,第三、第四、第五位朋友都照此办理,最终每人刚好都有32块糖,请编程算出原来每位好友各有多少糖块。

PASCAL练习题

PASCAL练习题

1、百钱买百鸡问题。

中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?2、求 (34)2121131388553322111++++++++的前二十项的和。

3、计算......2912211611117141211++++++++当第i 项的值<10-4时结束。

4、求s n =a+aa+aaa+aaaa+…+aa...aaa(n 个a),其中a 是一个由随机数产生的1~9(包括1、9)之间的一个正整数,n 是一个由随机数产生的5~10(包括5、10)之间的一个数。

显示a 和n ,并求s n 。

5、输出下列图形。

1222333334444444555555555666666666667777777777777888888888888888999999999999999996、输出下列图形。

AAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBCCCCCCCCCCCCCCDDDDDDDDDDDDEEEEEEEEEEFFFFFFFFGGGGGGHHHHII7、我国有13亿人口,按人口年增长0.8%计算,多少年后我国人口超过26亿。

8、键入一个字符串(串长不超过20),输出相应字符组成的等边三角形。

如:输入:“CHINA ”输出:9、数的统计。

一个数“含有0”是指这个数至少有某一位数字为0。

小明对那些“含有0”的自然数很感兴趣,想挑出来进行研究。

那么,1~N 当中“含有0”的自然数有多少个?小明想在1秒钟内得到答案,你能帮他做到吗?输入:N (1≤N ≤100000000)样例输入:105输出:1510、整数排序。

对给定的N (1≤N ≤100)个1到50之间的正整数用一个数组存放后进行从小到大排序,然后再将其中重复出现的数进行删除,只保留一个,使得剩下的数中任何两个都不相同且连续存储在原数组中。

PASCAL12

PASCAL12

练习题
6. 有一列数据:3、12、21、30、39、48、57、66、……,求 第102个数为多少?它们的和为多少?这一列数据中数字0的个 数有多少个?(912、H=46665、GS=20) 7.任意输入一组数据,以999作为结束标志,统计其中整数和小数 各占的百分比?如输入76、-24.5、36.5、200、1.8、-2、 95、10、70.8、60、0,则输出ZSZ:60.0 XSZ:40.0保留 一位小数。 8.从键盘输入一批自然数,以99999作为结束标志,输出所有奇数 的平均值和偶数的平均值(均保留一位小数),如输入一批数 据为15、20、7、8、12、3、4、99999,则输出QPJS=8.3 OPJS=11.0.
习题解答 6.求五位数54[]7[]中被5整除,也被3整除,并且各位数字之和 小于26的最大五位数。(54870) var a,b,n,x,x1,x2,x3,x4,x5:longint; begin n:=0;a:=9; while n<>1 do begin for b:=0 to 9 do begin x:=54000+a*100+70+b; x1:=x div 10000;x2:=x div 1000 mod 10;x3:=x div 100 mod 10; x4:=x div 10 mod 10;x5:=x mod 10; if (x mod 15=0) and (x1+x2+x3+x4+x5<26) then begin write(x:6);n:=1 end; end; a:=a-1; end; end.
习题解答
4.任意输入一个表达式,以“=”作为结束标志,如果左圆括号 大于右圆括号个数则输出“L”,若右圆括号大于左圆括号 个数则输出“R”,若左圆括号等于右圆括号个数,则输出 “D”,如输入((X+3-2B)))=则输出R,若输入 ((X+3)=则输出L。 var c:char; s1,s2:integer; begin while c<>'=' do begin read(c); if c='(' then s1:=s1+1; if c=')' then s2:=s2+1; end; if s1>s2 then write('L'); IF S1<S2 THEN write('R'); IF S1=S2 THEN WRITE('D'); END.

一个PASCAL教程。供新手学习 供高手参考

一个PASCAL教程。供新手学习 供高手参考

#1PASCAL教程一、环境1.菜单2.关闭按钮/文件名/缩放按钮3.位置指示4.状态栏5.编辑区二、常用操作1.新建/保存/打开/关闭2.复制/粘贴/删除3.编译/运行/查看结果三、常用技巧1.修改默认路径2.保存环境参数3.查看窗口附件1:hj1.gif(2005-04-1002:03AM,3.82K)#2基本程序结构和几个概念:例:CODE:[Copy to clipboard]program pname;const n=4;type ar=array[1..4]of integer;var i:integer;a:ar;beginfor i:=1to n do read(a[i]);readln;for i:=n downto1do write(a[i]:4);writeln;end.以上是一个PASCAL程序。

从键盘读入4个数据,逆序输出。

一般来说,一个PASCAL程序包括以下几个部分:程序头:program pname;其中,program是保留字,表示程序从这个地方开始,pname是标识符,是程序的名字,可由程序员自定。

保留字是PASCAL选定的,具有固定意义和用法的专用单词或缩写,这些单词不允许作其它使用。

如上,“program”就有“程序从这里开始”这样一种特别的意义,而“const”就有“常量说明从这里开始”的意义。

我们不能再用“program”、“const”来作为其它变量、常量等的名字。

标识符是以字母开头的字母数字串,其长度最大为8个字符。

用来表示常量、变量、类型、文件、过程、函数和程序的名字。

如“pname”、“i”、“j”、“a1”就是合法的标识符;但“1a”、“#a”是非法的标识符。

有一点要注意的是,在PASCAL中,字母除了作为字符值或字符串值之外,其大小写是无关的。

如标识符“A1”和“a1”在PASCLA看来是同一标识符。

在PASCAL中除了保留字和自定义的标识符外,还有一类有特殊含义的标识符,这类标识符称为标准标识符。

PASCAL练习题

PASCAL练习题

PASCAL练习题PASCAL练习题序号题目难度完成数1计算路程167 2摄氏温度转华氏温度165 3求一元二次方程的根265 4成绩评定266 5商场折扣268 6倒数数列和357 7阶乘和357 8求最大值和最小值362 9菲波拉契数列354 10求素数347 11百钱买百鸡363 12水仙花数362 13计算π的值355 14最大公约数和最小公倍数458 15完数461 16亲密数对455 17奖学金认定259 18计算年龄261 19汽车时速计算353 20猴子吃桃问题454 21验证哥德巴赫猜想435 22钞票兑换344 23成绩评定2225 24聪明的猪414 25插入排序47 26约瑟夫问题516 27不重复的随机数413 28侦察任务310 29猜数游戏218 30因式分解411 31砝码选择34 32电灯开闭36 33追查凶手34 34十进制转二进制315 35分糖216 36贮油点53 37运动会成绩统计45 38等式填空315 39验证尼科彻斯定理410 40回文字符串217 41中缀表达式转后缀表达式57 42二叉树的遍历313 43留学生应会的语言31 44绝对素数20 45互不相同的七位完全平方数30 46求数字的乘积根50 47纯粹素数30 58完全平方数40 49十六进制数转十进制数20 50楼梯的不同走法50 51计数排序30 52厄拉多赛筛法求素数20 53杨辉三角形30 54打印图形20 55扑克分发30 56统计单词个数40 57二叉排序树20 58按比例组数30 59数字三角形40 60最佳字符编码40 1.计算路程【题目描述】从键盘输入速度v和时间t,要求计算路程s。

2.摄氏温度转华氏温度【题目描述】读入摄氏温度c,将它转换成华氏温度f输出,写出程序。

已知:f=9/5*c+32 3.求一元二次方程的根输入a,b,c,求一元二次方程ax2+bx+c=0的根。

Pascal基础练习

Pascal基础练习

[一] 文件输入整数a,b,c,求b2─4ac的数值?[二] 文件读入小写的"pascal",利用CHR()和ORD()函数,输出大写的"PASCAL"。

[三] 文件输入一个整数时、分、秒,把它转换为一个秒数?例如输入文件0 1 0输出文件60========================判断练习====================[四] 文件输入两个整数a,b,输出较大的数?[五] 文件输入某全自动加油站a,b,c三种汽油的单价(元/kg)分别是1.50、1.35和1.18,也提供了“自己加”或“协助加”两个服务等级,这样用户可以得到5%或10%的优惠。

编一个程序,用户输入加油量、汽油品种和服务类型(f-自动,m-自己,e-协助),然后计算应付款。

[六] 文件输入年和月,输出该月有多少天?========================循环练习====================[七] 文件输入一个四位数,求它各位上数字的和?[八] 文件输入一整数A,判断它是否质数。

(提示:若从2到A的平方根的范围内,没有一个数能整除A,则A是质数。

)[九] “百钱买百鸡”是我国古代的著名数学题。

题目这样描述:3文钱可以买1只公鸡,2文钱可以买一只母鸡,1文钱可以买3只小鸡。

用100文钱买100只鸡,那么各有公鸡、母鸡、小鸡多少只?文件输出结果。

========================数组练习====================[十] 文件输入N个数,将这N个数逆序输出,并求这N个数的和,输出这个和。

例如:输入 31 2 3输出 6[十一] 某校竞赛小组共有10位同学,2010-2012年每位同学都参与了三项重要比赛,为了从中选出最优秀的五个人代表合肥市参加安徽省比赛,请先统计每位同学的平均分。

分析:定义一个10行3列的二维数组来存放这些成绩。

定义一个10个元素的一维数组来存放平均分。

pascal基础练习

pascal基础练习

1.统计字符个数(tjzf.pas)从键盘中任意输入一串字符。

请编程统计输入的字符中的大写字母,小写字母和数字字符的个数分别是多少?输入输出示例:输入:daDSALDdcada3240输出:5 7 42.平方数(pfs.pas)将1—9这九个数字分成三组,每个数字只能用一次,即每组三个数不允许有重复数字,也不许同其它组的三个数字重复,要求每组中的三位数都组成一个平方数。

3.欢乐同庆(hltq.pas)过年了,小明与邻居的小伙伴们共5个人相约一起放鞭炮:他们同时放响了第一个,随后5个人分别以A1、A2、A3、A4、A5秒的间隔继续放鞭炮,每人都放了b个。

问:总共可听到多少声鞭炮响?输入:A1、A2、A3、A4、A5(每个数≤30)和B(b≤30,并满足An*b ≤255)。

输出一个整数,即听到的鞭炮响声数。

输入输出示例:输入:1 2 3 4 5 (5个人放鞭炮的间隔)4 (每人放鞭炮数b)输出:124.有趣的质数(yqdzs.pas)小明发现了一个有趣的现象,有些数字(例如:2333)本身是个质数,将末尾数去掉后发现它仍然是质数,依此类推,一直到第一位仍是质数(含1)。

现在给定m和n的值(m<n ≤30000),求在这个范围内有多少个这种数字。

输入输出示例:输入:50 100输出:5说明:五个符合的质数是53、59、71、73、79。

5.乘式还原(cshy.pas)A代表数字0到9中的前五个数字,Z代表后五个数字,请还原下列乘式。

A Z A×A A Z————A A A AA A Z ZZ A A————Z A Z A A6.卡布列克常数(kblk.pas)任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律:1)将组成该四位数的四个数字由大到小排列,形成由这四个数字构成的最大的四位数;2)将组成该四位数的四个数字由小到大排列,形成由这四个数字构成的最小的四位数(如果四个数中含有0,则得到的数不足四位);3)求两个数的差,得到一个新的四位数(高位零保留)。

FREE-PASCAL入门-循环结构程序(DOC)

FREE-PASCAL入门-循环结构程序(DOC)

循环结构程序设计第1节 For循环程序实例【问题描述】计算一副扑克牌的点数,其中牌A为1点,牌J、Q、K分别为11、12、13点,大、小王不算点。

【问题分析】根据题意,要计算一副扑克牌的点数,可以先求出一种花色牌的点数和,再乘以4即可。

进一步分析,求一种花色牌的点数和,即是求1~13的连续自然数之和。

我们用S表示所求数的和,用T表示加数,这样可以让T从1变化到13,每次让T不断加入到S中,就可以求出S的值,最后乘以4即可。

【算法设计】◆自然语言①置初值,即S=0,T=1;②使S=S+T ,所求出的和仍放入S中;③使T增加1,即T=T+1;④如果T小于等于13,转第二步,否则转第五步;⑤输出计算结果。

◆程序流程图和结构化流程(N-S)图【程序设计】[程序清单]program ex3_1;vars,t:integer;begins:=0; {S置初值为0}for t:=1 to 13 do {For循环语句}s:=s+t;writeln(‘total:’,s*4);end.[运行示例]total:364【知识拓展】1.在程序处理过程中,经常需要对某一条或一组语句重复执行多次,以最终完成某项任务,这就是循环。

对于重复次数已知,而不依赖循环中语句的结果,常用计数循环(f or / to /do 语句)。

2.for循环语句格式:格式一:for 控制变量:= 初值to 终值do循环体语句;格式二:for 控制变量:= 初值downto 终值do循环体语句;其中for、to、downto、do为保留字,do后面的语句称为循环体。

其中循环控制变量可以是整型、字符或布尔型,但不能为实型。

一般地,可以是顺序类型数据。

初值、终值表达式通常要与控制变量的类型相同。

在for语句中如果使用的是to,称为递增型计数循环语句,如果使用的是downto,称为递减型计数循环语句。

3.For语句的执行过程:①先将初值表达式的值计算出来并赋给循环控制变量。

pascal_数组

pascal_数组
3.
15
练习:写出程序的运行结果
1.
2.
3. 4.
5.
6. 7. 8. 9.
var i:integer; w:array [1..10] of integer; begin w[1]:=0; w[2]:=1; for i:=3 to 10 do w[i]:=w[i-2]+w[i-1]; for i:=1 to 10 do write(w[i]:4); writeln; end.

2015/12/31
18
读程序练习(3)
1. 2. 3. 4. 5. 6. 7.
for i:=1 to 5 do p[i]:=6-i; for j:=1 to 4 do s[j]:=3*j; for i:=1 to 4 do begin write(s[p[i]-1]); if i mod 2=0 then writeln end;
信息学奥赛培训
——数组
为什么要用数组?
1. 2.
3.
如果不用数组,…… 变量定义很长 var a1,a2,a3,a4…… 变量调用很烦 a1:=a1+1;a2=a2+1;…… 不能循环遍历 如果用数组,一切那么轻松!

2015/12/31
2
数组“列车”

在程序设计中,为了处理方便, 把具有相 同类型的若干变量按有序的形式组织起来。 这些按序排列的同类数据元素的集合称为 数组。
124567891020161630数组元素的插入??试试题描述在一个数组的第xx个位置插入一个新的数yy??输输入描述有四行??第一行有一个整数n??第二行有nn个整数??第三行有一个整数xx为为要插入的位置20161631??第三行有一个整数xx为为要插入的位置??第四行有一个整数yy为要插入的整数??输输出描述更新后的数组??输输入样例55723452299??输输出样例792345练习??将整数xx插入到一个元素个数为10的有序数组aa中插入后数组仍然是一个有序数组请编程实现

帕斯_PASCAL_语言基础

帕斯_PASCAL_语言基础

第一章、帕斯(PASCAL)语言入门第一节、 帕斯(PASCAL)语言的特点以法国数学家命名的帕斯(PASCAL)语言是世界上使用最广泛,最有效的语言之一。

其主要特点是:严格的结构化形式;丰富完备的数据类型;运行能力、效率高;查错能力强等等。

与贝斯克(BASIC)、习(C)等语言相比,帕斯(PASCAL)语言更适合科学计算,运行速度最快,编译能力最强,编译成的可执行文件也最小。

帕斯(PASCAL)语言是编译执行的语言, 贝斯克(BASIC)语言是解释执行,因此在速度与效率上都比贝斯克(BASIC)语言提高了一个档次。

所谓解释执行,是在程序环境下编写好程序后,执行它时是一句一句地由语言解释器翻译成机器语言,由计算机去执行,计算机能在程序编辑时就发现程序中错误,但程序运行速度慢;而编译执行是在程序环境中编写好程序后,执行时先由编译器把整个程序编译成机器语言,然后再由计算机执行,计算机必须在编译程序时才能发现程序中的错误,但程序运行速度快。

第二节、习戴妃软件环境一个题目,如果用帕斯(PASCAL)语言来解,在建立好数学模型及完成一定的自然语言描述后,就用帕斯(PASCAL)语言来编辑出程序,编译后再运行(可以作为一个过程),这样才能得到答案。

习戴妃提供了一个功能非常强大的集成环境,我们可以利用它来完成上述所有过程。

进入这个环境的方法很多,可以根据实际情况自己进入。

进入集成环境后屏幕上显示如下:文件菜单包含新建、保存等功能。

工具菜单中包含编译运行等命令。

也可以用工具栏的按钮进行快捷操作。

第三节、第一个帕斯(PASCAL)程序一、程序功能输出一句话的小程序,输出如下一句话:我喜欢用习戴妃进行帕斯编程。

二、新建一个文件,输入如下帕斯(PASCAL)程序代码:程序例1_1;开始写(‘我喜欢用习戴妃进行帕斯编程。

’);结束.三、编译链接、运行程序:点上图中的编译链接箭头所指向的图标进行编译链接,因为是新建文件,编译链接前会提示保存,如下图,缺省是保存在习戴妃安装目录下的“我的项目”目录下的,缺省文件名为系统时间为文件名,也可以修改为自定义名字如:例子1_1。

Pascal练习题及答案

Pascal练习题及答案

一、熟悉Pascal的集成环境,了解主菜单的各项功能二、完成下面程序的输入、编译、运行、保存,并注意观察程序的运行结果1、程序代码如下:program exe1 (input ,output) ;varh , k : integer ;beginfor h := 1 to 8 do beginwrite( ' ': 20-h);for k := 1 to 2*h-1 do write(' * ');writeln;end;end.2、编程计算半径为R的圆的面积和周长程序代码如下:Program Exe2; {程序首部 }Const Pi=Var R,S,C: Real; {变量说明部分 }BeginWrite ('R='); {提示输入半径 }Readln(R); {输入半径值 }S:=Pi*R*R;{利用圆面积公式s=Πr2面积}C:=2*Pi*R;{利用圆周长公式c=2πr求周长}Writeln('S=',S); {输出结果 }Writeln('C=',C);Readln;{等待输入回车键}End.3、编程在屏幕上显示“Hello World!”。

程序代码如下:Program exe3;BeginWriteln( ‘ Hello World!’);Readln;End.4、下面是一道猜数的趣味程序,程序运行后,由计算机随机地产生一个100以内的整数,用户有十次猜数的机会,并且计算机会根据你猜的数给你相应的提示。

程序代码如下:program caishu (input ,output) ;varx,n,k :integer;beginrandomize;x:=random( 100) ;repeatwrite('Please input a number(0- 100) : ' ) ;readln( k) ;n:=n+l;if k=x then writeln( 'You are right ! ');if k>x then writeln( 'Too big. Please try again!' ) ;if k<x then writeln( 'Too small. Please try again!') ;until (k=x) or (n= 10) ;if ( n=10) and ( k<>x) then writeln( ' You are fail. The number is :' ,x) ;end.四、练习:工人每工作一小时可得工资80元,求工作130小时的工资。

大学计算机导论练习题及答案

大学计算机导论练习题及答案
3
考题练习
• Which one of the following operations is not belong to input/output subsystem in a computer? [1] Accept data [2] Accept programs [3] Manage the other subsystem [4] Send the results to output devices Which one is not included in the sequential execution of instructions by the control unit of the von Neumann? [1] Fetch [2] Decode [3] Compile [4] Execute The logical steps necessary to solve a problem with a computer is called an algorithm . The most important software in a computer that controls the computing environment and provides an interface to the user is called operating system .
4

• •
考题练习
FORTRAN and COBOL are examples of . [1] Software [2] Hardware [3] Architecture [4] Computer Languages • • • The most important software in a computer, called operating system , is originally worked as a manager to facilitate access to the computer’s components by a program. A step-by-step solution to a problem is called an algorithm _. ______is the design and writing of a program in structured form. [1] Software Engineering [2] Hardware Engineering [3] Algorithm Development [4] Instructional Architecture The most important software in a computer that controls the computing environment and provides an interface to the user is called operating system _

数据结构专项练习

数据结构专项练习

数据结构专项练习1.(NOIP2013) 已知一棵二叉树有 2013 个节点,则其中至多有( )个节点有 2 个子节点。

A. 1006B. 1007C. 1023D. 10242.(NOIP2013)在一个无向图中,如果任意两点之间都存在路径相连,则称其为连通 图。

右图是一个有 5 个顶点、8 条边的连通图。

若要使它不再是连通 图,至少要删去其中的( )条边。

A. 2B. 3C. 4D. 5 3.(NOIP2013)二叉查找树具有如下性质:每个节点的值都大于其左子树上所有节点的值、小于其右子 树上所有节点的值。

那么,二叉查找树的()是一个有序序列。

A. 先序遍历 B. 中序遍历 C. 后序遍历 D. 宽度优先遍历4.(NOIP2013)二分图是指能将顶点划分成两个部分,每一部分内的顶点间没有边相连的简单无向图。

那么,12 个顶点的二分图至多有()条边。

A. 18 B. 24 C. 36 D. 665. (NOIP2013) 以 A0 作为起点,对下面的无向图进行深度优先遍历时(遍历的顺序与顶点字母的下标 无关),最后一个遍历到的顶点可能是( )。

A. A1B. A2C. A3D. A46. (NOIP2012) 在程序运行过程中,如果递归调用的层数过多,会因为( )引发错误。

A .系统分配的栈空间溢出B .系统分配的堆空间溢出C .系统分配的队列空间溢出D .系统分配的链表空间溢出 7. (NOIP2012)从顶点A0出发,对有向图( )进行广度优先搜索(BFS )时,一种可能的遍历顺序是 。

8.(NOIP2012)如果一个栈初始时为空,且当前栈中的元素从栈底到栈顶依次为a ,b ,c (如右图所示),另有元素d 已经出栈,则可能的入栈顺序是( )。

A .a, b, c, dB .b, a, c, dC .a, c, b, dD .d, a, b, c 9. (NOIP2012)一棵二叉树一共有19个节点,其叶子节点可能有( )个。

信息学竞赛--pascal知识点小结和练习

信息学竞赛--pascal知识点小结和练习

信息学竞赛——pascal知识点小结和练习pascal介绍一、pascal的基本语法单位1、基本符号(教材第页)注意:pascal语言除了能使用以上规定的基本符号外,不得使用任何其它符号。

2、保留字(教材第页)注意:所起的文件名不能与保留字相同。

3、标识符(教材第页)以字母打头的字母数字串,中间可以有下划线,长度小于等于8。

标准标识符(共三十九个)了解各标准函数的作用二、程序结构1、由三大部分组成:程序首部,说明部分,语句部分。

(教材第页)2、大量使用标点符号,保留字后不加标点符号(END除外)。

顺序结构程序设计一、标准数据类型1、实型(real)小数表示法、科学记数法2、整型(integer)正、负整数和零maxint=327673、字符型(char)是指在两个单引号中的一个字符。

4、布尔型(boolean)false;true二、常量和变量的定义常量的定义:(教材第页)变量的定义:(教材第页)三、表达式及赋值语句[例]:b2-4ac 写成:sqt(b)-4*a*c赋值语句:<变量>:=<表达式>;四、输入输出语句1、输入语句:(教材第页)read(<变量表>);readln(<变量表>)注:表达式里面变量与变量之间用逗号隔开;readln表示下一个语句将从下一行开始操作;输入时,整型或实型用空格或回车隔开,字符型之间无需分隔,一个接一个输入。

2、输出语句:(教材第页)write(<输出表>);writeln(<输出表>)注:对Real或Integer限定场宽:write('a=',a:2:0) {a为real型}选择结构程序设计一、if 语句格式:IF<条件>THEN<语句1>ESLE<语句2>注:1、ELSE与最近的并且未被配对的ELSE配对;2、复合,如果THEN或ELSE带有多个语句,则要用BEGIN——END括起来。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 已知大正方形边长为a ,小正方形边长为b, 求下图阴影部分的面积。

输入a=20,b=15
输出s=?
2.甲、乙、丙三队植树,甲队种了总数的2 / 7,乙队种了甲、丙两队的一半,乙队种14000棵树,问总共种了多少棵树?其中甲队种了多少棵树?
3.20%的盐水15千克,问加多少水使盐水含盐15%?
4.小明有一本书,第一天看了全书的一半,第二天又看了剩余的2 / 3,还有10页没看完,问全书共有几页?
5.循环的应用
1、求和:
s=(1+2+3+4)+(6+7+8+9)+……+(96+97+98+99) ex29
s=1-1/2+1/3-1/4+……+1/99-1/100 ex49
s=12+22+32+……+502
s=20+21+22+23+……+263 exfor14
s=1+(1+2)+(1+2+3)+……(1+2+3+4+5+……+10) ex12
6.打印一列数的前30项 1,1,2,3,5,8,13,21…… ex29
7.求1997个2相乘所得的乘积的末两位数。

(72) for1997
8.找出10个数当中最大的和最小的数。

A:\exfordx ex22
9.紧接1989后面写一串数字,每数字是其前面的两个数字积的个位数字,问从左边1数起第1998个数字是几?(8 ) exfor17
10.从1,2,3,……,一直写到200,一共写了多少个数码3?(40个) ex41
exfor3dg
a
11.等式3()*8256=()3*6528 中,()填上那一个数字才能使等式成立?
12.有1989位同学坐成一排,从左到右依次编号1,2,3,4,……,1989,第一次老师让编号是双号的同学站起来,然后余下的同学再从左到右依次编号1,2,3,4,……,第二次老师又让编号是双号的同学站起来,如此重复了五次,这时有多少名同学站着?(1926)
13.某班共有五十名学生,已知他们的期中考试的数学成绩。

现需要统计100分、90-99、70-89、60-69、60分以下各有多少人?
14.求一批正数之和。

exfor18
15.鸡兔同笼问题:已知鸡兔共16只,总脚数为40只,求鸡兔各有多少只?
16.求一个整数的各位数字之和。

exfor19
17.求两个整数的最小公倍数。

m*n/最大公约数
18.剧场中有1000个座位,已知第一排有30个座位,以后每排增加2个座位,1000个座位最多能排几排?最后剩余不够一排的座位有几个?如果按前边的排法再补全一排,整个剧场有多少个座位?ex38
19 输入一个正整数N,把它分解成质因子相乘的形式。

ex49
如:36=1*2*2*3*3 39=1*3*13
20.求所有三位数的水仙花数。

双重循环
图形的打印exfor21 exfor22
打印9*9乘法口决表exfor23 ex46
枚举法解题
1.一个炊事员上街采购,用500元钱买了90只鸡,其中一只母
鸡15元,公鸡一只10元,小鸡一只5元,正好把钱买完。

问母鸡、公鸡、小鸡各多少只?
2.用一张一元票换1分、2分和5分的硬币,每种至少一枚,问
有哪几种换法(各几枚)?
数组
统计选票(班里的50 个人都是候选人),如何找出谁的得票数最多?
1.某班共有五十名学生,已知他们的期中考试的数学成绩。

现需要统计100分、90-99、80-89、70-79、60-69、60分以下各有多少人?用数组编程
2.一列数3,7,2,5,1,3,7,2,5,1 ……中,问第1992个数是几?这1992个数的总和是多少?
例:输入10个正整数,把这10个数按由大到小的顺序排列。

P36 a:\dxpx.pas
全校N个学生的年龄在16—30之间,编程统计各年龄学生人数。

在如图所示的数字园圈中,相隔一个数字的两个数,比如1和16,6和10,16和2,……看作是一对数,试编程找出乘积最大的一对和乘积最小的一对,要求输出格式为:MAX:?*?=?
MIN:?*?=?
A:\exsz06.pas
1.旅馆里有一百个房间,从1到100编了号,第一个服务员
把所有的房间门都打开了,第二个服务员把所有编号是2的倍数的房间“相反处理”,第三个服务员把所有编号是3的倍数的房间“相反处理”……,以后都是如此。

问第100个服务员来过后,哪几扇门是打开的(所谓“相反处理”
是:原来开着的门关上,原来关着的门打开)。

相关文档
最新文档