版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、a,1,第6章基本程序结构,本章内容和要求:1.理解算法的概念和算法的表现,用n-s流程序表现算法2 .熟练掌握代入句、End句和注释句等句和输入输出消息框函数的使用3 .熟练的行if句使用Select Case状况选择结构,掌握所选择的嵌套结构4 .学习For/Next环路结构和Exit For语句、Do/Loop环路结构的使用,掌握多环路。 重点:选择结构和循环结构的实现及其应用,难点:选择的嵌套和多重循环结构、a、2、6.1算法和算法的表现,6. 1.1算法的概况是算法:广义上,算法是完成一个任务应遵循的一步一步的规则狭义上,算法是解决问题的方法和步骤的描述。 下面用两个简单的例子来说明
2、:例6.1输入三个个数,输出其中最大的数量。 依次输入变量a、b、c的3个个数,将最大数量保存在变量MAX中。 其算法如下:a,3,例6.2输入10个,其中打印输出最大的数量。 算法的设计方法是(1)输入一个个数,存储在变量a上,并将1代入变量n,即,N=1 (2)将a存储在表示最大值的变量Max上,即,在Max=A (3)输入另一个值,如果是AMax,则Max=A,如果是不将记录数据个数的变量增加1,即判断N=N 1 (5是否小于10 ),如果成立则转移到步骤(3),否则转移到步骤(6)。 (6)打印输出max,1 )输入a、b、c。 2 )把a和b中较大的一个放入MAX中。 3 )把c和M
3、AX中较大的放入MAX中。 4 )输出max,max成为最大数量。a、4、4、4,6.1.2算法的特性,有贫困性确定性的0个以上的输入有一个以上的输出有效性,a、5、5、5,6.1.3算法的表示,自然语言和伪代码代表算法自然语言:指人们日常使用的语言伪代码:用自然语言和计算机语言之间的文本和符号(包括数学符号)描述算法。例如,例6.1在Begin (算法开始)输入a、b、C IF AB的情况下,AMax的情况下,BMax IF CMax的情况下,AMax打印max end (算法结束),a,6,2,用以往的流程图表示算法,等流线连接点,1,传统流程图中的基本符号,a、7、2,三种基本结构的传统
4、表现为(1)顺序结构,条件,文1,文2,、y、文1,文2,(2)选择结构,a,8,条件, 条件,(3)循环结构a )该循环,b )循环,y,n,y,n,(b ),语句群,a,9这三个基本结构的特征:(1)只有一个入口,(2)只有一个出口,(3)不存在死语句,(4)不存在死循环,例如: 6.2输入从a,10,10,10个中选择最大数量的流程图,NMax,Max=A,输入a,开始,N=N 1,打印Max,结束,y,n,n,y,a,11,6.1.4是在n-s流程图中的算法可以在矩形内包含其他从属框,基本结构的n-s图,语句a,语句b,条件,y,n,1,顺序结构,2,选择结构,a,12,语句组,(3)
5、循环结构,a )相应的循环,b )循环,条件成立例如,从10个中选择最大数量,画出n-s流程图,a,13,以往的流程图,NMax,Max=A,输入a,开始,N=N 1,打印Max,结束,y,n,y,输入a,N=Max,n 私有子表格_ click () dim a %,max%,I % max=a fori=1to 10a=val ( a=? ) ) ifmaxthenmax=nextprintmax=; max End Sub,最后需要说明的是,上面介绍的算法是给人看的,是为帮助程序开发人员阅读和写程序而设计的辅助工具,程序必须遵循计算机语言的语法规则。 例6.2的计算机程序用计算机语言表示
6、算法:a,15,6.1.5结构化程序的设计方法(补充),(1)用计算机解决问题的过程,a, 16、(2)结构化程序的设计思想由上而下,逐步细分,模块化由上而下:首先是全局,从整体设计细分:将一个问题分解为几个小问题解决模块:将一个大任务分解为几个小部分被称为“功能模块”,例如:以100个整数打印输出其中的像素数,a,17,S1,n-s流程图,S3,S2,a,18,S1,n-s流程图,S3 S2,S21,a,19,被细分的流程6.2.1代入语句形式:变量名称=式对象.属性=式功能:将式的值代入变量名称或指定对象的属性。 通常用于为变量指派值,或为控件设置属性值。 sRate!=0.1text1.
7、 text=欢迎使用visual basic6.0说明:1.执行步骤:求出表达式的值,然后为左边的变量指派值。 2 .右表达式可以是特殊表达式,如变量、常量和函数调用。 3 .不要把“=”理解为数学等号。 A=A 1表示将a单元格的值加1,返回a单元格。a,21,执行过程如右图,4 .代入符号“=”所示,左边只是变量名称或对象的属性参照,不是常数,符号常数,公式。 以下赋值语句都错了。 5=X的左侧是常数。 Abs(X)=20的左边是函数调用,即公式。 5 .代入符号“=”两侧的数据类型一般必须一致。 具体规则(p7 )、a,22,6.2.2注释语句的语法是Rem或说明:1.包含的注释文本。
8、在Rem关键字和注释内容之间加空格。 Rem关键字可以替换为英语单引号“”。 2 .如果在其他语句行之后使用rem关键字,则必须用冒号(:)分隔语句。 如果使用英语单引号“”,则不需要在其他语句的行后面加上冒号(:)例如,当计算Const PI=3.1415925符号常数PI S=PI*r*r : Rem日元的面积时,a,23,6.3构造体1. IfThen语句(单分支构造体) If Then语句块End If或If Then,例:是已知的双重分支选择结构执行过程,使得比较它们的大小的x大于y.ifxythen打印xelseprinty,a,25,3.ifthenelse if语句(多分支结构
9、)形式: If Then Else If Then Else 方法是90100为“优秀”,8089为“良好”,7079为“中等”,6069为“合格”,60为“不合格”,执行过程,a, 使用26 IF语句实现的程序是ifx=90 then打印优秀else ifx=80 then打印良好else ifx=70 then打印中等else ifx=60 then打印合格else打印a 27 6.3.2 Select Case语句(条件分支)格式: Select Case变量或表达式列表1语句块1 Case表达式列表2语句块2 Case Else语句块n 1 End Select :相同类型的以下四种形
10、式之一:表达式A 5的枚举表达式的集合(以逗号分隔) 2,4,6,8表达式1 To表达式2 60 to 100 Is关系运算符表达式Is 60,数值类型或字符串表达式,a, 使用select case .语句实现28例6.3的程序, selectcasexcase 90 to 100打印“case 80 to 89打印”良好“case 70 to 79打印”中等“case 60 to 69打印”合格“ase else打印”不合格“结束选择,a,29, 补充例题:计算机设计VB应用程序成为小学低年级学生算术教师,要求一系列110数四则运算的算术问题,学生输入这个问题的答案,计算机根据学生的答案判
11、断是否正确,算出成绩,点击结束命令按钮,然后分析:产生了1到10个操作数,可以通过Int(10* Rnd 1)实现。a,30,6.3.3可以在选择结构的IF语句的Then分支和Else分支中完全嵌套其他IF或Select Case语句,同样可以在Select Case语句的各Case分支中嵌套其他IF或Select Case语句。 有两种正确的嵌套形式: if thenif thenelseelseelseendif (2) if thenselect casecaseelseendifcaseend selectendif 注意:如果嵌套在一个分支内,则不出现交叉,满足结构规则,其嵌套形式有
12、很多,嵌套层次也可以是任意的。 在多级IF嵌套结构中,Else必须与IF结合,以特别注意IF和Else的配对关系。 配对原则建议您在编写包含多级嵌套的程序时使用缩进来保持易读性。的。a,32,6.4循环结构1. For循环语句(一般循环次数已知)形式For循环变量=初始值to结束值 step step 语句块Exit For语句块Next循环变量,a,33,循环次数, 例: for I=2to 13 step 3打印I next I打印“I=,I,循环执行次数输出I的值分别为: I=14,a,34,例6.5编程计算: S=1 2 3 100,Dim S%, I% S=0累计前变量s为0 for
13、 I=1to 100 s=si next I打印 s=,s,n 为素数 else打印n; “不是素数”的End If,a,57,验证哥巴赫预想: 1个在6以上的偶数可以表示为2个素数之和。 例如,6=33.8=3.5. 10=37,算法设计: n被设定为6或更大的任意数,将此分割为n-1和n-2的两个个数,使用N1 N2=N来判断n-1和n-2是否为素数,如果是,则设定为一组解。 如果N1不是素数,则不需要检查N2是否是素数。 首先从N1=3到N1=N/2。 算法的流程图如图4图29所示。将程序代码写入表单的点击事件。 实现上述算法的程序代码为a,58,私有子表单() dim n %,N1%,
14、N2%,I%,K1%,k2 % n=val (输入大于“6”的偶数) for n1=3ton 2 step 2k1=int (sqr (n1 ) ) fori=2to k1,其中n1是素数IFN1modi=0netextiofforenextifik1thenn 1是素数,n是n1n2n2=n-n1 k2=int (sqr (N2 ) ) fori=2 判定n2是否是素数ifn2modi=0then的printn = n1 N2 endifendifnextn1end sub,a,59,6.6.2字符串处理,对例6.12文本框中的英语单词数进行统计。 算法设计(1)从文本(字符串)的左边取出字符的逻辑量WT表示接受的字符是否是单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年江西省贵溪市初三语文试题二模冲刺试题(八)含解析
- 黑龙江省哈尔滨市实验校2026届初三下学期语文试题2月16日周练试题含解析
- 爱护动物践行承诺书8篇
- 生物制药生产工艺与质量控制指南
- 销售代理渠道拓展沟通函(7篇范文)
- 团队协作项目管理流程和职责分工文档模板
- 企业年度目标完成承诺书范例范文3篇
- 企业内训课程设计流程及执行标准
- 物资紧缺调配供应商管理团队预案
- 企业多项目统筹调度方案工具书
- AQ/T 1119-2023 煤矿井下人员定位系统通 用技术条件(正式版)
- 信纸(A4横条直接打印版)
- 2024年厦门航空有限公司招聘笔试参考题库含答案解析
- 林城镇卫生院安全生产制度
- 南京航空航天大学“天目启航”学生自由探索项目申请书
- EIM Starter Unit 6 This is delicious单元知识听写单
- 陕西铜川声威特种水泥有限公司2500t-d新型干法特种水泥熟料技改生产线项目环评报告
- GB/T 4062-2013三氧化二锑
- GB/T 26746-2011矿物棉喷涂绝热层
- GB 30616-2020食品安全国家标准食品用香精
- GA/T 1343-2016防暴升降式阻车路障
评论
0/150
提交评论