算法和程序设计.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法和程序设计.ppt

算法与程序设计 柯桥中学 吴建锋 1、pascal编程基础 2、完善程序 3、算法专题 1、PASCAL编程基础知识 1、常量、变量 2、数据类型(integer、real、byte、boolean、char) 3、常用系统函数和运算符(trunc,mod,div) 4、三种基本程序结构、复合语句 For循环、while循环、repeat循环、循环嵌套以及配合for循环使用的break、continue(其他中断命令还有exit、halt) 5、子程序的二种形式(函数和过程) 深入一下还有递归 6、关系表达式的真值,逻辑运算 举例 1、program test1; var a,b,c,tot:integer; begin tot:=0; c:=213-21*10; b:=21-2*10; a:=2; tot:=tot+a+b+c; writeln(tot); end. 输出: 解题关键 没有什么难度,关键是以下两点: 1、掌握赋值覆盖的特点 2、草稿纸上细致的书写赋值经过 2、PROGRAM EXAM1; VAR X,Y:BYTE; BEGIN READLN(X,Y); IF XY THEN WRITELN(X-Y) ELSE WRITELN(Y-X); END. 输入:24 36 输出: 要点分析: 1、掌握byte数据类型 2、分支结构语句的使用 3、program test1; var x,y,t:byte; begin readln(x,y); if xy then begin t:=x;x:=y;y:=t;end; writeln(x, ,y); end. 输入:34 52 输出: 要点 1、赋值覆盖特征下的变量值的交换 2、输出时注意二数之间有空格 4、PROGRAM EXAM2; VAR S,I:INTEGER; BEGIN S:=0; FOR I:=1 TO 10 DO S:=S+I; WRITELN(‘S=’,S); END. 要点 1、赋值覆盖机制下的累加器程序 2、for循环基本使用 3、‘s=’的字符串输出 5、PROGRAM test2; VAR s,x:integer; BEGIN x:=0;s:=0; WHILE S55 DO BEGIN X:=X+1; S:=S+X; END; WRITELN(X); END. 要点 1、while循环结合复合语句的使用 2、累加的难度在于复合累加 3、突破难度的二个方法 (1)结合草稿纸的模拟计算 (2)算法总结基础上的直接计算 4、容易出错的地方是10是否会参与累加?(循环边界状态的细致分析) 6、program test2; var i:integer; a:array[1..10] of byte; begin for i:=1 to 10 do a[i]:=i; for i:=1 to 10 do begin a[i]:=a[i]+1; write(a[i]:3); end; end. 输出: 要点 1、熟练复合语句(这里不是嵌套) 2、熟练的肯定会在总结算法基础上立刻求解 3、不熟练也有方法(列表法),不易出错 7、PROGRAM EXAM3; VAR S,I,J:INTEGER; A:ARRAY [1..10] OF BYTE; BEGIN S:=0;I:=0; FOR J:=1 TO 10 DO A[J]:=1; WHILE I=10 DO BEGIN I:=I+1; S:=S+A[I]; FOR J:=I+1 TO 10 DO A[J]:=A[J]+1; END; WRITELN(S=,S); END. 列表法 算法分析能力不是很强,而现在试题各种累加、累乘等的赋值运算比较多,所以掌握列表法也许是不变应万变之策。 I s a[i+1]……a[10] 1 1 2,2….,2 2 1+2 3,3,…3 3 1+2+3 4,4,…4 …… 9 1+2+…+9 10 10 1+2+3+…+10 内循环不执行 总结算法基础上的求解 1、第一次外循环结束时,i为1,s为1;以后第k次外循环结束时,i为k,s加上的值是a[k],而a[k]是原来1基础上加上k-1所得值,所以程序实

文档评论(0)

aiwendang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档