师:亲爱的同学们,大家好!我是张老师。
生:hi,同学们,你们好呀!我是你们的学习小伙伴可可。
师:欢迎走进今天的信息技术课堂,接下来就由我和可可陪大家一起度过愉快的学习时光。请大家准备好笔和纸哦,可可,你准备好了吗?
生:我已经准备好了,同学们,你们呢?
师:可可,老师想问你,在上一个活动中,你都学到了哪些知识呀?能和大家分享一下吗?
生:没问题。通过圆面积计算程序这个活动的学习,我不仅掌握了如何在VB编程软件中添加标签和文本框控件,还根据所学绘制出了程序界面。除此以外,我还学会了计算按钮和退出按钮代码的编写。最后我了解到,原来圆面积计算程序是一个顺序结构。程序编程实在是太有趣啦!
师:看来可可收获了不少知识呢。刚才他提到了顺序结构,大家想一想,计算机在执行程序的过程当中,除了顺序结构以外,还有没有其他的结构呢?比如说需要进行选择和判断的时候,计算机能否根据不同的输入而做出不同的判断呢?
生:出租车的计价器是不是这样的程序呀?我真的特别想知道它是如何实现的。
师:大家是不是也和可可一样好奇呢?别着急,今天我们就来一探究竟,设计出租车计费程序。在前面的活动中,我们通过体验抽奖小程序和圆面积计算程序,已经了解到程序设计的基本过程,即通过算法设计、界面设计、代码设计、调试程序,最终达成目的解决问题。所以今天我们要解决出租车计费问题,同样首先要进行算法的设计,然后通过VB编程实现算法,最终解决问题。
师:接下来我们就以某市出租车计费问题为例,探究这个计费程序是如何设计出来的。我们先来看一下案例,某市出租车起步价为8元,在2.5公里以内,超过2.5公里的路程按每公里1.5元计价。这个问题怎么理解呢?首先我们可以尝试用数学的方法来进行分析。其实这是一个分段求值的问题。接下来同学们可以动动手,和老师一起用画数轴的形式来读懂问题。我们画一条数轴。
师:设x为公里数,y为应付费用。x和y有什么关系呢?通过案例我们不难发现,x的取值决定了y的值。在案例中,x有两种情况,第一种情况是在2.5公里以内,第二种情况是超过2.5公里。
师:那么第一种情况我们可以表示为x大于0,小于等于2.5;第二种情况可以表示为x大于2.5。现在我们在数轴上找出2.5这个点。x大于0小于等于2.5的时候,也就是这一段,我们将它标记出来。此时的y等于什么呢?对了,y应该等于起步价8。那当x大于2.5的时候,应该是这一段,此时的y等于什么呢?对了,应该等于起步价8元,加上超出部分的费用,也就是(x - 2.5)×1.5。这样我们就用数轴的方法将问题分析清楚了。
师:除此以外,我们还可以用公式来进行表达,y等于:当x大于0,小于等于2.5的时候,y的值为8;当x大于2.5的时候,y的值为8 + 1.5×(x - 2.5)。同学们看懂了吗?刚才我们用数学的方法分析了出租车计费问题,接下来我们是否可以用语言将刚才的问题进行简要描述呢?同学们请看,大家一起动动脑完成填空。
师:接下来我们一起填一填。首先要输入什么呢?已经设x为公里数,y为应付费用,因此这里首先输入的应该是公里数x。中间的部分,我们可以参考公式来填写。如果当x大于0,小于等于2.5的时候,则y的值等于8,否则也就是当x大于2.5的时候,y等于8 + 1.5×(x - 2.5),最后输出应付费用y。
师:你们都做对了吗?刚才我们用自然语言对问题进行了分步描述,其实我们还可以做进一步的简化。右边就是简化的结果。现在右边看起来是不是像一个流程呢?但是这样的表达未必大家都能理解,有没有办法能让大家都看懂呢?当然有,我们可以使用统一规定的流程图符号绘制出流程图,这样大家就一目了然了。下面我们就来认识一些常用的流程图符号,同学们也可以跟着老师一起动手画一画。
师:第一个是圆角矩形,我们称它为起止框,用来表示程序的开始或者结束。它的使用方法是在框内写“开始”或“结束”即可。第二个平行四边形,我们称它为输入输出框,用来表示数据的输入或输出。比如我们在流程中表达输入x或输出y,只需要在框内写“输入x”或“输出y”即可。菱形是判断框,表示对某个条件做判断。比如出租车计费问题中,判断条件为x大于0,小于等于2.5,使用时直接将这个条件输入框内就可以了。矩形是处理框,用来表示对于信息的处理或执行。很多同学容易把输入输出框和处理框混淆使用,这样流程就出错了,所以我们要正确使用流程图符号。最后的箭头是流程线,用于表示流程进行的方向。流程图符号非常重要,同学们一定要牢记,学以致用。请同学们一起动动手,结合刚才所讲的自然语言和流程图符号,将出租车计费问题的流程图绘制出来,接下来看一看你都画对了没有。
师:首先,我们需要添加一个表示开始的起止框,并写入“开始”。接下来用向下的箭头表示程序的流向。输入公里数x要用到什么符号呢?绘制输入输出框,非常棒。流程线千万不要忘记。接下来是判断的条件,x大于0,小于等于2.5,当然这里要用到的是判断框。经过判断,当判断成立时,y等于8,否则也就是当条件判断不成立时,y等于8 + 1.5×(x - 2.5)。判断完毕是处理和执行,所以要使用处理框。
师:经过上面的判断和处理,最后需要将结果进行输出,我们只需再绘制一个输入输出框。很多同学以为到这里我们的流程图就描述完毕了,其实有始也要有终,最后还要绘制一个起止框,并写入“结束”,表示整个程序的结束。千万不能忘记,这样一个完整的流程图就表达出来了。刚刚我们用到语言和流程图两种方式来描述解决问题的步骤及策略,其实这就是编程中的算法设计。设计是不是很简单呢?看来同学们已经掌握了算法设计了,但是程序设计光有算法是不够的,这只是第一步。接下来还需要通过编程实现算法才能最终解决问题。
