




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021-4-22追求卓越,品味成功1 2021-4-22追求卓越,品味成功2 上节课,我们学习了上节课,我们学习了PascalPascal语言的程语言的程 序基本结构,在一个程序中,所有的操作都序基本结构,在一个程序中,所有的操作都 由执行部分来完成,而执行部分又都是由一由执行部分来完成,而执行部分又都是由一 个个语句组成的。因此,下面开始我们要学个个语句组成的。因此,下面开始我们要学 习习pascalpascal语言的基本语句,并且在学习过程语言的基本语句,并且在学习过程 中逐步学会程序设计的基本方法。中逐步学会程序设计的基本方法。 这节课我们要学习两种语句,即赋值语这节课我们要学习两种语
2、句,即赋值语 句与输出语句。在语句学习之前我们要先了句与输出语句。在语句学习之前我们要先了 解一些解一些pascalpascal语言的基础知识语言的基础知识(例如:变量、例如:变量、 常量,运算符等)常量,运算符等)。 2021-4-22追求卓越,品味成功3 2021-4-22追求卓越,品味成功4 o 输入语句的作用是将键盘中的数据输入到程序中 (一)输入语句的两种格式(一)输入语句的两种格式 1、 read语句语句 格式read(变量1,变量2,); 如:read(a,b,c); 2、 readln语句语句 格式: readln(变量1,变量2,); (二二)输出语句的功能输出语句的功能 计
3、算机执行到某一输入语句时,将键盘中输入的变量数值一个接一个 地赋给变量。 read语句与readln语句格式上都相似,但它们在功能上有所不同, 两个语句的区别在于,执行readln后多余的数据将被忽略,执行READ语 句后的数据要么被忽略,要么被下一个read或readln语句所读入 Read(a,b,c); Read(I,j,k,l); Read(m,n); 输入数据为:输入数据为: 1 2 3 4 5 6 7 8 9 0 10 20 2021-4-22追求卓越,品味成功5 o 输出语句的作用是将程序运算的结果输出到屏幕或打印机等输出设备。这 里通常是指输出到屏幕。 (一)输出语句的两种格式
4、(一)输出语句的两种格式 1、 write语句语句 格式Write(表达式1,表达式2,); 如:write(1,2,3,4); write(1.2,3.4,5); write(My name is Liping); 2、 writeln语句语句 格式: Write(表达式1,表达式2,)或writeln o(二二)输出语句的功能输出语句的功能 计算机执行到某一输出语句时,先计算出输出语句中的每个表达式的 值,并将每一个表达式的值一个接一个地输出到屏幕上。 Write语句与writeln语句格式上都相似,但它们在功能上有所不同, 两个语句的区别在于,write语句将其后括号中的表达式一个接一个
5、输出 后,没有换行。而writeln语句则在输出各个表达式的值后换行。 write(1,2,3,4);write(5,6); 输出为:输出为: 123456 writeln(1,2,3,4);write(5,6); 输出为:输出为: 1234 56 四、应用例四、应用例 2021-4-22追求卓越,品味成功6 带格式的输出语句 编程:已知三角形底a=29,高h=33,求三角形的面积s,输出格 式: s=. (保留1位小数) 参考代码 var / 变量说明 a,h: integer; s: real; begin a:=29; / a为三角形的底 h:=33; / h为三角形的高 s:=a*h/
6、2; /注意: s必须是实型 writeln(s=,s:0:1); / 输出两项,前一项输出为s=,后一 项输出结果(保留一位小数) end. 2021-4-22追求卓越,品味成功7 1. 场宽:分单场宽和双场宽 l 单场宽:write(表达式:n),其中n为自然数。若数据实际长度小于指定场 宽时,则一律“向右靠齐,左留空格”。 lwrite(1234:8); l输出结果:1234 l表示一个空格 l 双场宽(在第5讲中介绍):如果输出项是实数时,如果希望输出的实数不 用科学记数法输出,而用小数形式输出,可以用指定双场宽方法输出。 双场宽输出格式为:write(实型表达式:m:n),其中m和n
7、都是自然数,m 用 以指定整个数据所占的宽度,n指定输出实数的小数位数。 lbegin write(123.435245:10:2); / 输出 123.44,10表示总宽度, 2表示小数位数,注意:小数点也占一位 end. l注:123.44共占宽度6,由于总宽度是10,所以前导空格有4个。 2021-4-22追求卓越,品味成功8 例1 写出下列程序在输出结果 program ex; const s=abcdefg; var i:integer; r:real; c:char;b:boolean; begin i:=1234;r:=1234.5678; c:=#;b:=true; write
8、ln(i,i:6,i:3); writeln(r,r:12:5,r:8:5); writeln(c,c:5); writeln(s,s:10,s:5); writeln(b,b:5,b:3); end. 运行结果如下: 123412341234 1.2345678000E+031234.567801234.56780 # abcdefgabcdefgabcdefg TRUETRUETRUE 2021-4-22追求卓越,品味成功9 3应用例析应用例析 例2:已知A=253,B=43,输出A*B的运算式子。即输出如下: 分析:对于该问题,我们只要控制好输出时右靠齐即可。即前四行的总宽度一样(例如为
9、 12),第五行总宽度比前面少1。第六、七行总宽度与前四行一样。 参与程序如下: var a,b:integer; begin a:=253;b:=43; writeln(a:10,*,b,=,a*b); writeln(a:12); write(*:8);writeln(b:4); writeln(-:12); writeln(a*3:12); write(+:6);writeln(a*4:5); writeln(-:12); writeln(a*b:12); end. 2021-4-22追求卓越,品味成功10 编写程序 o要求程序输出这样的图形,请编写程序完成 * * * * 2021-4
10、-22追求卓越,品味成功11 应用例析应用例析 l例1:某仓库5月1日有粮食100吨,5月2日又调进20吨,5月3日卖 出库存的3分之二,5月4日又调进库存的3倍粮食,问该仓库从5月1 日到5月4日期间每天的粮食分别是多少吨?(输出每天的库存量) l分析:在这个问题中,主要要描述从5月1日到5月4日期间仓库的粮 食库存量,且易知它是不断变化的。因此我们可以用一个变量A来描 述仓库的粮食库存量。 l程序可写如下: lProgram ex1; l Var A : integer; l Begin lA:=100;Writeln(5/1:,A); lA:=A+20;Writeln(5/2:,A);
11、lA:=A div 3; writeln(5/3:,A); lA:=A *4; writeln(5/4:,A);Readln; l End. 2021-4-22追求卓越,品味成功12 2021-4-22追求卓越,品味成功13 编程:交换两个变量的值:由键盘输入两个 正整数A和B,编程交换这两个变量的值。 解:交换两个变量的值,可以想象成交换两盒录音带(称为A和B)的内容,可以按以 下步骤处理: 步骤:拿一盒空白录音带C为过渡,先将A翻录至C; 步骤:再将B翻录至A; 步骤:最后将C翻录至B。 这样操作,可达到题目要求。 Pascal程序:程序: Program Exam17; 程序首部程序首部
12、 Var a,b,c: integer;说明部分说明部分 Begin 程序体程序体 Write(A,B=); Readln(a,b); C:= A; 等价于步骤等价于步骤1 A := B;等价于步骤等价于步骤2 B := C;等价于步骤等价于步骤3 Writeln(A,B); End. AB 2021-4-22追求卓越,品味成功14 分钱游戏 甲、乙、丙三人共有24元钱,先由甲分钱给乙、 丙两人,所分给的数与各人已有数相同;接着由乙分给 甲、丙,分法同前;再由丙分钱给甲、乙,分法亦同前。 经上述三次分钱之后,每个人的钱数恰好一样多。 求 原先各人的钱数分别是多少? 2021-4-22追求卓越,
13、品味成功15 练习讲解 o请随机产生一个四位数,请输出这个数字的 千位,百位,个位; o program abcd; oVar qian,bai,ge,shi,num:integer; oBegin oRandomize; oN:Random(1*9000) 1000; oGe: 2021-4-22追求卓越,品味成功16 习题分析 解:设甲、乙、丙三人的钱数分别为A,B,C。用倒推(逆序)算法, 从最后结果入手,按反相顺序,分步骤推算出每次各人当时的钱 数:(在每个步骤中,各人钱数分别存在A、B、C中) 步骤步骤:A=8 B=8 C=8 这是最后结果的钱数,三人都一样多 步骤步骤:A=A/2
14、(=4) B=B/2 (=4)C=A+B+C(=16) A, B未得到丙分给的钱时,只有结果数的一半;C应包含给A,B及本 身数三者之和 步骤步骤:A=A/2 (=2) C=C/2 (=8)B=A+B+C(=14) A, C未得到乙分给的钱时,只有巳有数的一半;B应包含给A,C及本 身数三者之和 步骤步骤:B=B/2 (=7) C=C/2 (=4)A=A+B+C(=13) C未得到甲分给的钱时,只有巳有数的一半;A应包含给B,C及本身 数三者之和 步骤步骤: 输出A(=13)B(=7)C(=4)此时的A,B,C 就是三 人原先的钱数 2021-4-22追求卓越,品味成功17 ) Program
15、 Exam18; Var a,b,c: integer; Begin a:=8; b:=8; c:=8; 对应于步骤 a:=a div 2; b:=b div 2; c:=a+b+c; 对应于步骤 a:=a div 2; c:=c div 2; b:=a+b+c; 对应于步骤 b:=b div 2; c:=c div 2; a:=a+b+c; 对应于步骤 Writeln(a=,a, : 4,b=,b, : 4,c=,c) ;输出 Readln End. 本程序本程序Writeln语句的输出项含有语句的输出项含有( : 4 ),这里的冒号用,这里的冒号用 来指该项显示所占宽度此处是输出来指该项显
16、示所占宽度此处是输出4个空格即个空格即(空格项占空格项占4格格)。 2021-4-22追求卓越,品味成功18 有鸡兔同笼,头有鸡兔同笼,头30,脚,脚 90,究竟笼中的鸡和兔各有多少只,究竟笼中的鸡和兔各有多少只? 解解:设鸡为J只,兔为T只,头为H,脚为F,则: J+T=30 2*J+4*T=90 解:解: 此题暂不必采用数学上直接解方程的办法,可采用“假设条件与逻辑 推理”的办法: 假设笼中30 个头全都是兔,那么都按每头只脚计算,总脚数为 (4*H),与实际脚数 ( F )之差为(4*HF),如果这个差=0,则 笼中全是兔(即鸡为0只);如果这个差值 0,说明多计算了脚 数,凡是鸡都多给
17、算了两只脚,用它除以2就能得到鸡的只数,处 理步骤为: J=(4*HF)/2 先用脚数差值除以2算出鸡的只数 T=HJ 再用总头数减鸡数算出免的只数 按此方法,这两步运算必须注意先后顺序才会符合运算逻辑。 2021-4-22追求卓越,品味成功19 PascalPascal参考程序参考程序 Program Exam16; Const H=30; 常量说明 F=90; Var J,T: byte; 为字节类型的整数 Begin J:=(4*H-F) div 2; 整除运算 T:=H-J Writeln (J=,J, : 6,T= ,T ) ; Readln End. 本程序中H,F为常量,变量J,
18、T为byte类型,属于整数类型 2021-4-22追求卓越,品味成功20 思考题一思考题一 甲、乙、丙三人分别有磁带甲、乙、丙三人分别有磁带3636,4848,6464盒。先由盒。先由 甲把自己的磁带平均分为三份,分给乙、丙各一份,自甲把自己的磁带平均分为三份,分给乙、丙各一份,自 己留下一份;接着是乙,最后是丙,都按甲的方法处理。己留下一份;接着是乙,最后是丙,都按甲的方法处理。 编程输出甲、乙、丙在上述过程中各人的磁带数分别是编程输出甲、乙、丙在上述过程中各人的磁带数分别是 多少多少? (? (输出所有的中间结果输出所有的中间结果) ) 2021-4-22追求卓越,品味成功21 . 五位好朋友相聚。第一位朋友带来了很五位好朋友相聚。第一位朋友带来了很 多糖块赠送给各位朋友,使每人的糖块在各多糖块赠送给各位朋友,使每人的糖块在各 自原有的基础上翻了一倍;接着第二位好友自原有的基础上翻了一倍;接着第二位好友 也同样向每人赠送糖块,他同样使每人的糖也同样向每人赠送
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 钻床工组织能力考核试卷及答案
- 离婚协议书是否具有法律效力
- 绝缘成型件制造工转岗考核试卷及答案
- 电影摄影设备装配调试工安全操作规程考核试卷及答案
- 浸渍干燥工标准化技术规程
- 2026届江苏省扬州市邗江区部分学校九年级数学第一学期期末检测模拟试题含解析
- 2025合同模板健身器材采购合同书范本
- 买卖合同范本汇编15篇
- 代理合同范文(20篇)
- EMIP培训资料-课件
- 二年级趣味数学校本教材
- 好利来工作协议合同模板
- 煤矿回收材料管理制度
- 2025年云南事业单位a类真题及答案
- 美容皮肤临床技术操作规范方案
- 2025年机关意识形态工作要点
- (高清版)DB36∕T 1324-2020 公路建设项目档案管理规范
- 《凯勒战略品牌》课件
- 畜禽粪污资源化利用培训
- 女生穿搭技巧学习通超星期末考试答案章节答案2024年
- 2024年大学试题(政治学)-比较政治制度考试近5年真题集锦(频考类试题)带答案
评论
0/150
提交评论