第八课 循环结构一.doc_第1页
第八课 循环结构一.doc_第2页
第八课 循环结构一.doc_第3页
全文预览已结束

下载本文档

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

文档简介

北仑中学 算法与程序设计 自编教材第八课 循环结构一一、 问题:开始输入ni=n?结束yni1s0输出sii+1ss+i图1如果计算机在运行如图1所示的流程所描述的算法时,若n的输入值为100,分析变量i,s 的变化,说出s的最后的输出值。分析:只是一个循环结构的算法,这个问题的关键在于理解这个循环结构,这个循环由i=n 组成了循环的条件,由ss+i和 ii+1两个操作组成了循环体,分析循环结构的算法或程序,关键在于分析循环体内的变量变化情况,很显然,这个循环中的规律是这样的:每进入一次循环体,就会将i的值累加到S变量中,而后i变量的值自身增加1,通常我们将s=s+i这样的语句称为累加器,而把i=i+1这样的语句称为计数器。用于累加的变量s的初始值是0,第一次进入循环体的i是1,自然满足循环条件,进入循环,循环体中把1加到s中去,然后i增1变成2,也满足循环条件,进入循环,然后将2加入到s中is10+1=121+2=331+2+3=641+2+3+4=10.991+2+99=49501001+2+100=5050表1这样每次进入循环中的i分别是1、2、3、100,每次进入的i都被加到S里面去,当i的值为101的时候不符合循环条件,退出循环。那么这个时候i的数值当然是101,而s的数值是1+2+100的累加和,即5050。 数据的变化如表1所示。 由于N的任意性,上述的算法的能完成计算1+2+3+n的和。二、算法的实现界面设计如图2所示我们容易实现红框外的流程图代码:private Sub command1_click()Text2Command1Text1图2 Dim s, i, n As Long n = Val(Text1.Text) s = 0图1的红框流程实现代码Text2.Text = Str(s)End SubTF图3条件表达式循环体的语句块那么图1红框代码怎样实现呢?这就要用到VB的循环语句VB中最常见的循环语句有两种:1Do 语句 Do语句格式:Do While 条件表达式语句块(循环体)LoopDo 语句的执行过程是:先计算条件表达式的值,如果值为True,则执行一次循环体中的语句块,遇到loop后再次计算条件表达式的值,若仍true,继续执行循环体中的语句块,如此不断重复,知道条件表达式的值为False时,才终止Do语句的执行,具体执行的流程参见图3。针对于本课的问题中红框内的流程,用Do 语句实现的代码就是:i=1 Do while i=2 and i=8 if s mod i 0 then s=s+2 else s=s+i end if i=i+2 loop这段代码运行后s=_ 。(5)dim s,I,n AS Integer s=2 For i=1 to 5 step 2 if si then s=s+i end ifNext i这段代码运行后s=_ 。(4)dim x,i as integer x=1for i =1 to 10 step 2 if i mod 2 = 0 then x= x+1next i这段代码运行后x=_ 。(2)S=0For i=5 to -3 step -6S=s+iNext i这段代码运行后S= i= (1)K=0i=-3Do while i3K=k+1i=i+2Loop这

温馨提示

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

评论

0/150

提交评论