【课题】循环结构程序_第1页
【课题】循环结构程序_第2页
【课题】循环结构程序_第3页
【课题】循环结构程序_第4页
【课题】循环结构程序_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、【课 题】循环结构程序【教学目标】理解并掌握单层FOR循环的功能; 掌握FOR语句应用格式; 能够正确应用FOR循环解决指定次数的循环问题; 领悟程序算法的数学模型建立; 激发学生用程序解决实际问题的兴趣【教学重点】FOR语句在程序中的运用【教学难点】循环次数与循环体的模型建立【教学方法】任务驱动法、程序讨论法、上机实践法【课程类型】授新课【教学反思】【教学过程】一、导入1、小明为希望工程存款,第一个月存1元,第二个月存入2元,第三个月存3元,计算两年共为希望工程存款多少元?在实际应用中,会经常遇到许多有规律性的重复处理问题。例如,2、解决运动会所需要的几百个号码布,如何输出“*”呢?写百个w

2、riteln(*)输出?可以用循环结构程序设计,可以有不同的方法实现。二、新授1、可以用GOTO和带标号语句实现循环结构(出示程序)Program SigmaN(input,output);Label 10;下一语句1 => ii+1 è i打印Ii<=10VAR n,I,total: integer;Begin Readln(n); Total:=0; i:=1;10: total := total + i ; i:=i+1; if i <=n then goto 10; writeln(the total of sigma , n:4, is, total)EN

3、D.2、FOR语句格式和执行过程先看一个简单的例子:For i : = 1 to 10 do Write ( i : 3 ) ;执行此语句将打印出:2 3 4 5 6 7 8 9 10for语句的一般格式为:for <控制变量>:=<表达式1> to <表达式2> do <语句>for <控制变量>:=<表达式1> downto <表达式2> do <语句>FOR语句的语法图FOR变量名:=初值终值DOTO终值 递增型循环FOR变量名:=初值终值DOdownto终值 递减型循环FOR循环语句的执行过

4、程:循环结束初值=>变量循环变量递增或递减执行do后的语句变量超过终值知识点: 循环变量必须为顺序类型,(例如,整型、字符型,但不能为实型。) 循环变量递增或递减规律:如果是递增,则按SUCC(i)规律变化,递减则按pred(i)规律变化 循环体可以是一个基本语句,也可以是一个复合语句。 循环变量不得在循环体内再被赋值 循环变量的初值和终值一经确定,循环次数就确定不变了。For语句执行过程先将初值赋给左边的变量(称为循环控制变量);判断循环控制变量的值是否已"超过"终值,如已超过,则跳到步骤;如果末超过终值,则执行do后面的那个语句(称为循环体);循环变量递增(对to

5、)或递减(对downt o);返回步骤;循环结束,执行for循环下面的一个语句。思考:如果要求1+2+3+100, 1+3+5+99,2+4+100呢?三、应用举例【例1】求N!123N ,这里N不大于10。分析:程序要先输入N,然后从1累乘到N。读入n T N<0 F 1èx打印 for i:=1 to n do出错 信息 x+ièx 打印n , x程序如下:NfactorialProgram leichen(input,output);Var n,i : integer;i为循环变量x : longint;s作为累乘器beginwrite('Enter n

6、=');readln(n);输入nif n<0 then writeln (Input n<0 error ! ) else beginx:=1;for i:=n downto 2 do从2到n累乘到s中x:=x*i;writeln(n, '!=', x :10 :1)输出n!的值 endend.【例2】一个楼梯20 级台阶,上楼时允许每步迈一级或两级台阶,按照这样的走法,共有多少种走法?编程解决。这就是意大利著名数学家的兔子繁殖,所形成的数列问题。Fibonacci 数列,前几个数为 1,1,2,3,5,8,13,其规律是:F1=1 (n=1) Prevf

7、:=1 lastf:=1 打印Prevf, lastfFOR i : = 3 to 24 doF : =prevf+lastf;打印FPrevf : = lastflastf : = f ;F2=1 (n=2) Fn = Fn-1+ Fn-2 (n>=3) 编程求此数列前24项。Program Nfib(input, output) ;Var f , prevf,lastf , i , n : integer; BEGIN Prevf:=1; lastf:=1 ;Write(prevf:10:0, lastf :10 :0); N:=2;FOR i : = 3 to 20 do Begi

8、n F:=prevf+lastf; If (n mod 4=0 ) then witeln; Write (f :10:0) ; N : = n+1; Prevf : = lastf ; lastf : = f ; EndEND.四、归纳小结重复执行的对象称为循环体。 重复执行次数由FOR语句控制,变量i 称为循环控制变量,只是起个计数的作用。编程时需要注意FOR语句的格式,需要正确应用。对于典型例题,应该尽量上机验证;累加程序及算法需要理解记忆。五、拓展练习: 【例3】 输入两个数x1,x2,判断它们是否互质数。分析:判断两个数X1,X2是否互质的方法:如果X1/X2为整数,则非互质;如果X

9、2和X1能同时被2X2/2间任一整数整除,则X1和X2非互质算法分析是一个逐步细化的过程输入X1,X2 判断是否互质打印结果S1:S2大数èX1; 小数èX2 x1被x2整除T F非互质 X2和X1同时被2X2/2除,判是否互质S2:S2-1 S2-2S2-2-1S2-2-1: X2 DIV x1 è n For I : = 2 to n do X2 , X1能同时被i T 整除 F 非互质 互质参考程序如下Program M-P-N(input,output) ;Var x1,x2,t,n,i:integer; Yes:Boolean;Begin write(I

10、nput x1,x2 ) ; Readln(x1,x2); If x1<x2 then Begin t:=x1; x1:=x2; x2:=t end; Yes:=true; If (x1 mod x2 )=0 Then yes:=false Else begin n : =x2 div 2; for i:=2 to n do if (x1 mod i)=o and (x2 mod I )=0) then tes:=false end; if yes then writeln(they are mutual prime number) else writeln(Then are not m

11、utual prime number)End.六上机编程:P348 T6,T7七、板书设计For i:=1 to 10 do Write(i:3);执行此语句将打印出:1 2 3 4 5 6 7 8 9 10for语句的一般格式为:for <控制变量>:=<表达式1> to <表达式2> do <语句>for <控制变量>:=<表达式1> downto <表达式2> do <语句>求N!123N ,N<=10。Program leichen(input,output);varn,i : int

12、eger;i为循环变量S : longint;s作为累乘器beginwrite('Enter n=');readln(n);输入ns:=1;for i:=2 to n do从2到n累乘到s中s:=s*i;writeln(n,'!=',s);输出n!的值end.Fibonacci 数列,前几个数为 1,1,2,3,5,8,13,其规律是:F1=1 (n=1) F2=1 (n=2) Fn = Fn-1+ Fn-2 (n>=3) 编程求此数列前24项。Prevf:=1 lastf:=1 打印Prevf, lastfFOR i : = 3 to 24 doF : =prevf+lastf;打印FPrevf : = lastflastf : = f ;Program Nfib(input, output) ;Var f , prevf,lastf : Real ; i , n : integer; BEGIN Prev

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论