资源简介 程序设计的基本方法 3 程序的三种基本结构 算法 编写程序应具备的知识 程序设计的一般步骤 练习与拓展 我们学过的VB语句有? 1、“赋值语句” A=A+2 赋值号“=” 2、“打印语句” PRINT 3、“条件语句” IF-THEN-ELSE-END IF 4、“循环语句” FOR-NEXT 等等 按一定的逻辑关系组合起来 一、程序的三种基本结构 1、顺序结构: 语句1 语句2 语句n 是最基本的结构 对应学过的“赋值语句” = “打印语句” PRINT 等 程序的执行是按照书写的顺序,从左到右,从上到下的顺序来执行。 返回 2、分支结构: 语句块1 语句块2 执行条件语句的后继语句 又称为选择结构 是否满足条件? 是 否 对应学过的“条件语句” IF-THEN 一、程序的三种基本结构 返回 3、循环结构: 执行一次循环体 执行条件语句的后继语句 又称为重复结构 是否满足 循环条件 是 否 对应学过的“循环语句” FOR-NEXT 一、程序的三种基本结构 返回 程序设计方法有多种,其中有一种叫“结构化程序设计”,认为:任何复杂的程序都是由顺序、分支和循环三种基本结构控制结构组合而成。灵活运用好这三种基本结构,就可以编写出各种各样的程序,解决许多实际问题。 一、程序的三种基本结构 开始 产生一个1~100的随机整数 结束 显示“猜对了,真聪明” 用户输入所猜的数 是否猜对? 是 否 是否太大? 提示“太小” 提示“太大” 是 否 返回 砌积木 1、过河游戏 第一步:把( )带到对岸; 第二步:返回; 第三步:把( )带到对岸; 第四步:返回时把( )带回原岸; 第五步:把( )带到对岸; 第六步:返回; 第七步:最后把( )带到对岸。 一个猎人带着一只山羊、一只狼和一棵大白菜回家,路上遇到一条河。河边只有一条小船,小船太小,猎人每次只能带一样东西过河。但猎人不在时,狼要吃山羊,山羊要吃大白菜。请问怎样才能把狼、山羊和大白菜都安全运过河?请你设计一个可行的步骤,让猎人安全过河: 山羊 狼 A 山羊 大白菜B 山羊 二、算法 算法:是指为解决某个问题而采取的方法和步骤。 返回 狼 A 大白菜B 这里有一个1到100之间的整数, 你用什么最快的方法,猜它是多少? 1 100 2、猜数游戏 二、算法 25 1 49 26 49 37 说明:A组同学(做电脑)出迷底和提示,B组同学猜,C组记录猜了多少次,D、E组做观众留意他们有没有答错。 你 猜 猜 返回 50 太大! 太小! (3)电脑判断是否猜对了,有三种情况(4—6): (1)电脑产生一个1至100之间的随机整数; (2)由猜方确定(输入)一个自己所猜的数; (4)若所猜的数比结果大,则提示“太大!”, 并转步骤(2); 若所猜的数比结果小,则提示“太小!”, 并转步骤(2); (5)若猜对了,则显示“猜对了,真聪明!”, 并结束程序。 “猜数游戏”算法用自然语言(文字)描述: 3、“猜数游戏”的算法描述 二、算法 返回 二、算法 描述算法也可以使用程序流程图。 “猜数游戏”算法用程序流程图表示如右图: 开始 结束 是否猜对? 是 否 产生一个1~100的随机整数 是否太大? 用户输入所猜的数 提示“太小” 提示“太大” 显示“猜对了,真聪明” 是 否 4、“猜数游戏”的程序流程图 返回 2、掌握程序设计的方法 1、应用领域方面的知识 自顶向下的方法(基本思想) 自底向上的方法(基本思想) 两种方法 相结合 如:编一个象棋游戏; 又如:模拟银河系运转。 三、编写程序应具备的知识 返回 自顶向下的方法 两种方法相结合进行 一个 大型的系统 子 系统1 子 系统2 子 系统n 细小子 系统2A 细小子 系统2B 细小子 系统2N 自底向上的方法 一个大型的 综合系统 子 系统1 学习子 系统2 子 系统n A同学的 历史系统 B同学的 数学系统 N同学的 化学系统 …… 划分 …… 划分 …… 合并 …… 合并 返回 上图所示是属于结构化程序设计方法中的( )方法。 A、智能型程序设计 B、自顶向下 C、自底向上 D、面向对象 一个 大型的系统 子 系统1 子 系统2 子 系统n 细小子 系统2A 细小子 系统2B 细小子 系统2N …… 划分 …… 划分 返回 3、程序设计语言 程序设计环境与工具是指什么? 4、程序设计环境与工具 当前,计算机高级语言有上百种,其中广泛应用的程序设计语言有十几种。如C语言、C++、PASCAL、VB、JAVA、ASP等,我们学习的是Visual Basic 6.0 。 三、编写程序应具备的知识 返回 VB的开发环境 1、分析问题 下面我们把“猜数游戏”用VB程序实现。 D、处理的结果是什么,怎样 表示及输出显示?等等…… A、这个问题能否用VB程序解决? C、对输入的数怎样处理? 整数随机产生,猜数通过键盘输入。 两个数怎样进行比较,产生三种情况:相等、大于和小于时怎样处理。 使用Print显示提示和结果。 四、程序设计的一般步骤 返回 B、如何产生一个数? 如何输入数? 能! 2、设计算法 四、程序设计的一般步骤 (3)电脑判断是否猜对了,有三种情况(4—6): (1)电脑产生一个1至100之间的随机整数; (2)由猜方确定(输入)一个自己所猜的数; (4)若所猜的数比结果大,则提示“太大!”, 并转步骤(2); 若所猜的数比结果小,则提示“太小!”, 并转步骤(2); (5)若猜对了,则显示“猜对了,真聪明!”, 并结束程序。 返回 四、程序设计的一般步骤 (3)电脑判断是否猜对了, 有三种情况(4—6): (1)电脑产生一个1至100之间 的随机整数; (2)由猜方确定(输入)一个 自己所猜的数; (4)若所猜的数比结果大, 则提示“太大!”, 并转步骤(2); 若所猜的数比结果小, 则提示“太小!”, 并转步骤(2); (5)若猜对了,则显示 “猜对了,真聪明!”, 并结束程序。 3、编写程序代码 Randomize X = Int(Rnd() * 100)+1 Print “猜对了,真聪明! " Do While GUESS <> X GUESS = InputBox(" 你猜它是:") If GUESS > X Then Print “太大!" Else If GUESS < X Then Print “太小!" End If End If Loop GUESS = InputBox(" 你猜它是:") 返回 3、编写程序代码 Dim X, GUESS As Integer Randomize X = Int(Rnd() * 100)+1 GUESS = 0 Do While GUESS <> X GUESS = InputBox(" 你猜它是:") If GUESS > X Then Print “太大!" Else If GUESS < X Then Print “太小!" End If End If Loop Print “猜对了,真聪明! " (1) 打开VB,添加一个按钮,输入该程序,试运行。 四、程序设计的一般步骤 返回 问题B:请大家修改猜数程序,使程序能 打印出猜了多少次才猜对。 在发送给大家的程序中,比上述程序增加了两行: CS=0 和 CS=CS+1 四、程序设计的一般步骤 问题A:这两行程序有什么用? 返回 (2) 思考拓展: Dim X, GUESS As Integer Randomize X = Int(Rnd() * 100)+1 GUESS = -1 cs = 0 Do While GUESS <> X GUESS = InputBox(" 你猜它是:") cs = cs + 1 If GUESS > X Then Print "太大了" Else If GUESS < X Then Print "太小了" End If End If Loop Print “你真聪明!猜对了。” 返回 Print “猜的次数是:"; cs 4、运行调试程序 由于各种原因,程序会存在错误,通过上机 运行调试,发现和纠正错误,使程序正确运行。 刚才大家所做的事情就是运行调试程序。 四、程序设计的一般步骤 加分 返回 从前面的程序设计过程,我们可以归纳出程序设计的一般步骤,如下图所示: 四、程序设计的一般步骤 图示:程序设计的一般步骤 返回 以下算法用于求长方形的面积,其中s记录面积,长、宽分别为a、b表示。那么横线①应该填上( )。 五、练习与拓展 1、练习: S=____________ 输入长a、宽b的值 显示长方形的面积S 结束 开始 1 返回 以下算法用于输入三个数,然后显示输出最大的值。请在①、②位置上填上适当内容使算法完整,其中max记录最大值,三个数为a、b、c。 第②个空应该填上( )。 第①个空应该填上( )。 五、练习与拓展 2、分组拓展练习: 先分组讨论,然后每组派一个代表出来写结果,最后分组记分。 返回 填写格式为:1( ) 2( ) 开始 将c的值赋给max 结束 将a的值赋给max b>max? 是 否 _____①_____ 输入三个数a、b、c 输出最大值max __②__ 是 否 老师已经给出了不完整的程序,请在VB中添加第二个按钮,输入程序,修改完整并试运行。 五、练习与拓展 2、分组拓展练习: 返回 开始 将c的值赋给max 结束 将a的值赋给max b>max? 是 否 _____①_____ 输入三个数a、b、c 输出最大值max __②__ 是 否 Dim a, b, c, max As Integer a = InputBox("a的值是:") b = InputBox("b的值是:") c = InputBox("c的值是:") max = a If b > max Then End If If Then max = c End If Print "最大值是:"; max 加分 课堂情况分析与小结 本节的主要内容: 1、掌握程序的三种基本结构 2、了解算法及其表示 3、了解程序设计的一般步骤 学生学习情况: 作业布置:完成本节课本后的练习1、2。 (在书本上完成) 返回 展开更多...... 收起↑ 资源预览