1、11.3.3 循环语句循环语句 学习目标 1.正确理解循环语句的概念,并掌握其结构.2.会应用条件语句和循环语句编写伪 代码.3.经历对现实生活情境的探究,认识到应用计算机解决数学问题的方便简捷 知识链接 在一些破解密码的软件中,经常会使用穷举法,或称为暴力破解法,是一种针对于密码的破 译方法,即将密码进行逐个推算直到找出真正的密码为止例如一个已知是六位并且全部由 数字组成的密码,其可能共有 1000000 种组合,因此在软件中可以将密码由 000000 开始至 999999 逐个试一遍,因此最多尝试 1000000 次就能找到正确的密码理论上利用这种方法可 以破解任何一种密码,问题只在于如何
2、缩短破解的时间你知道这种软件是如何设计的吗? 预习导引 1循环语句 循环语句与程序框图中的循环结构相对应,一般程序设计语言中都有直到型(UNTIL)和当型 (WHILE)两种循环语句结构,分别对应于程序框图中的直到型和当型循环结构 2循环语句的格式、功能及程序框图的对应关系 名称 直到型 当型 格式 DO 循环体 LOOPUNTIL 条件 WHILE 条件 循环体 WEND 过程 先执行一次 DO 和 UNTIL 之间的 循环体语句,再判断 UNTIL 后的 条件是否符合,如果不符合,继 续执行循环体语句,然后再检查 上述条件,如果仍不符合,再次 执行循环体语句,直到条件符合 时为止,这时不再
3、执行循环体, 跳出循环体,执行 UNTIL 语句后 面的语句 先判断条件的真假,如果条件符 合,则执行 WHILE 和 WEND 之 间的循环体语句,然后再检查上 述条件,如果条件仍符合,再次 执行循环体语句,这个过程反复 进行,直到某一次条件不符合为 止,这时不再执行循环体,跳出 循环体,执行 WEND 后面的语句 对应 程序 框图 题型一 直到型循环语句的应用 例 1 画出计算 1232529992的值的程序框图,并写出伪代码 解 由题意知各项指数相同,底数相差 2,可以借助于循环结构设计算法 程序框图: 伪代码为: 规律方法 1.直到型循环语句中先执行一次循环体,再判断条件是否满足,以决
4、定继续循环 还是退出循环 2循环次数的控制往往是判断条件,在循环体内要控制条件的改变,否则会陷入死循环 3控制循环次数的变量要综合考虑初始化时和 LOOPUNTIL 后两处,若初始值为 1,则循环 体中累加,若初始值为循环的次数,则循环体中递减 跟踪演练 1 设计一个计算 1357999 的值的算法 解 程序框图如图所示: 伪代码: 题型二 当型循环语句的应用 例 2 编写伪代码求 246100 的值 解 程序框图: 伪代码: 规律方法 1.计算机执行当型循环语句时, 先判断条件的真假, 若条件为真, 则执行循环体, 若为假,则退出这是确定是否应用当型语句的关键 2当型循环语句中 WHILE
5、和 WEND 成对出现 3判断条件往往是控制循环次数的变量 跟踪演练 2 下面伪代码运行后的输出结果为( ) A17B19 C21D23 答案 C 解析 当 i9 时, S29321, 循环结束. 课堂达标 1关于循环语句的说法不正确的是( ) A算法中的循环结构只能由 WHILE 语句来实现 B循环语句中有直到型语句和当型语句,即 UNTIL 语句和 WHILE 语句 C一般来说 UNTIL 语句和 WHILE 语句可以互相转换 D算法中的循环结构由循环语句来实现 答案 A 解析 算法中的循环结构由循环语句来实现, 循环语句包括 UNTIL 语句和 WHILE 语句两种 不同的格式,且一般情
6、况下这两种语句可以相互转换所以选项 A 是错误的,其余都正确 2下列问题可以设计成循环语句计算的有( ) 求 133239的和; 比较 a,b 两个数的大小; 对于分段函数,要求输入自变量,输出函数值; 求平方值小于 100 的最大整数 A0 个 B1 个 C2 个 D3 个 答案 C 解析 和用到循环语句;用不到故选 C. 3读伪代码 对甲、乙两伪代码和输出结果判断正确的是( ) A伪代码不同,结果不同 B伪代码不同,结果相同 C伪代码相同,结果不同 D伪代码相同,结果相同 答案 B 解析 两个伪代码虽然不同,但都是求 S1231000 的值,故结果相同 4下列的伪代码执行后输出的结果是(
7、) A1B0C1D2 答案 B 解析 当 S543214 时,n211,此时 S15,继续执行循环体,则 S54 32115,n110,此时 S15,循环结束,输出 0. 5下面的伪代码运行后第 3 个输出的数是 答案 2 解析 该程序中关键是循环语句, 第一次输出的数是 1, 第二次输出的数是 x11 2 3 2, 第三次输出的数是 x11 2 1 22. 课堂小结 应用循环语句编写伪代码要注意以下三点: (1)循环语句中的变量一般需要进行一定的初始化操作,也就是要设置一些变量的初始值 (2)循环语句在循环的过程中需要有“结束”的语句,程序中最忌“死循环” (3)在循环中要改变循环条件的成立因素 程序每执行一次循环体,循环条件中涉及到的变量就会发生改变,且在步步逼近跳出循环体 的条件