- 8
- 0
- 约1.56千字
- 约 17页
- 2017-05-19 发布于江西
- 举报
循环语句的应用QB程序设计课程
循环语句的应用 QB程序设计课程 回顾 前面一段时间我们都在学习循环语句, 请问同学们 我们现在一共学习了多少种循环? 分别是什么? 问题1 计算1+3+5+……+99=___。 该题是一个累加的问题,由于累加的数字很多我们使用循环语句来解题。 一般我们用字母S来表示和,用字母I来表示循环变量。 钱江同学的解答 计算1+3+5+……+99的和。 I=1 S=0 DO IF I MOD 2 0 THEN S=S+I I=I+1 LOOP UNTIL I99 PRINT S END 李艺毅同学的解答 计算1+3+5+……+99的和。 老师的方法 从题目1+3+5+……+99就可以看出,该题其实就是从1(初值)开始,每一次的增加2(步长),循环相加到99(终值)时结束,一共相加了50次 对比来看看 问题2 求满足1+3+5+7+…+ >10000的最小正整数。 同样的是一个累加的问题,使用循环来求解请大家思考下面的问题。 1、你能看得出该题要相加多少次吗? 2、你认为应该用计数循环还是条件循环来求解这个题目? 使用计数循环 S=0 I=1 FOR I=1 TO __ STEP 2 …….. 使用条件循环 S=0 I=1 DO S=S+I I=I+2 LOOP UNTIL _______ Print ___ END 读一读,找不同,练一练 习题1:某纺织厂2005年的生产总值为300万元,如果每年生产总值增加16万元,计算最早在哪一年生产总值超过600万元。 习题1: S= 300 I=2005 . . . END 课时小结 计数循环语句适用于:循环次数已知的情况。 条件循环语句适用于:循环次数未知,且能找到具体条件的情况 多角度的去思考问题,你的程序效率可能更高。 * * 计数循环 FOR…NEXT 条件循环 1.当循环DO WHILE...LOOP 2.直到循环DO…LOOP UNTIL) ? I=1 S=0 I是否为奇数 S=S+I I是否超过99 I=I+1 Y 运行程序 N N 输出S Y I=1 S=0 DO S = S + I I = I + 2 LOOP UNTIL I99 PRINT S END I=1 S=0 S=S+I I是否超过99 输出S I=I+2 N Y 运行程序 S=0 FOR I=1 TO 99 STEP 2 S=S+I NEXT I PRINT S END S=0 I=1 S=S+I I是否超过99 输出S N Y 步长为2 运行程序 I=1 S=0 I是否为奇数 S=S+I I是否超过99 输出S I=I+1 N Y N Y I=1 S=0 S=S+I I是否超过99 输出S I=I+2 N Y I=1 S=0 S=S+I I是否超过99 输出S N Y 步长为2 循环了99次,每次进行2次判断,程序语句繁琐 循环了50次,每次进行1次判断 循环了50次,每次进行1次判断,程序语句简洁 循环初值和终值已知的情况下,使用FOR(计数)循环比较适用,快捷。 小结论 循环次数 ? 循环次数未知的情况下,不能使用FOR循环。 ? I=1 S=0 S=S+I S是否超过10000 输出I I=I+2 N Y 运行程序 S10000 I 循环次数未知,但有条件的情况下,适用条件循环。 小结论 习题2:某纺织厂2005年的生产总值为300万元,如果每年生产总值增加16万元,请问到2020年该厂的生产总值为多少? 生产总值 :S 循环变量年份:I 习题2: S= 300 I=2005 . . . END
原创力文档

文档评论(0)