计算机解决问题的过程
一、教学目标
知识目标
(1)知道人类是如何分析问题、解决问题的。
(2)了解计算机解决问题的基本步骤。
(3)知道人类解决问题和计算机解决问题的异同。
能力目标
(1)培养学生发现习得知识中蕴涵的规律、方法和步骤,并把它运用到新知识中
去的能力。
(2)培养学生调试程序的能力。
(3)培养学生合作、讨论、观摩、交流和自主学习的能力。
情感目标
通过“韩信点兵”这个富有生动故事情节的实例和探究、讲授、观摩、交流等环节,
让学生体验用计算机解决问题的基本过程,培养学生的自主探索能力、 交流与合作
精神。
二、教学内容分析
“计算机解决问题的过程”是“算法与程序设计”模块的第一节课,学好这节课是使学
生学好“算法与程序设计”模块的关键。因此,本节课在设计时注重让学生在人工解
题中提炼、归纳、分析问题、设计算法等步骤,并把它推广到用计算机解决问题的
过程中去。教学中还采用了探究、讲授、演示观察、讨论等多种教学方法。
本节课的教学重点是用计算解决问题的过程;难点是理解人类解决问题和计算机解
决问题的异同。
三、教学策略
建议用 1 个课时,通过探究、讲授、演示、观察、讨论相结合的方法来完成本节
内容的学习。教学过程中教师要注意引导学生关注新知识并进行思考。学生在倾听、
反馈和实践过程中建构知识。
教学过程的基本步骤为:组织教学、导入新课、讲授新课内容、通过分组讨论和上
机实践巩固理解新课知识,最后小结并布置作业。
四、教学过程
情景导入
课前先演示如下古典问题。
我国汉代有一位大将,名叫韩信。他每次集合部队,都要求部下报三次数,第一次
按 1~3 报数,第二次按1~5 报数,第三次按 1 ~7 报数,每次报数后都要求最
后一个人报告他报的数是几, 这样韩信就知道一共到了多少人。 他的这种巧妙算法,
人们称为“鬼谷算”、“隔墙算”、“秦王暗点兵”等。
讲授新课
(1)人是如何解决这个问题的。
展示 [ 问题 1]:
今有物不知其数:三三数之余二,五五数之余三,七七数之余二,问物几何?
把全班分成 8 个学习小组, 每个小组的同学一起探究、 讨论问题。利用已学过的数
学知识找出题目的已知条件和未知条件、明确已知条件和未知条件之间的关系并写
出解题步骤。并填写附表1“探究问题记录表”。
给学生 5 分钟的时间讨论, 教师在这个过程中深入到各学习小组中,引导个别小组
分析问题,写出解题步骤。教师提问2~ 3 个同学,从中逐渐引导出如下的分析问
题和解决问题的步骤,并给出算法的概念(见附表2)。
解释第 3 步“令 X 为 X+1 ”,并指出它与数学表述形式的区别,然后从上面的解
题步骤中总结出穷举的算法。
引出 [ 问题 2]:“刚才有些同学把题目解出来了,答案是23,韩信作为大将军,
统率的士兵当然不止23 人,下面我们来解决一个数据量稍大的问题。”
展示 [ 问题 2]:
求整除 3 余 1、整除 5 余 2、整除 7 余 4、整除 13 余 6、整除 17 余 8 的最小自
然数。
提问:“上面的结果超过 1 万,人工计算要很长时间,在科技发达的今天,你想到
什么?”(学生回答用计算机解题。)
给学生 2 分钟时间分析上述问题并写出算法,不用真的去计算。
(2)计算机解决问题的过程。
向学生讲授用计算机解决问题同样要经过分析问题、设计算法两个步骤, 并在讲授
过程中展示人工解题中分析问题和设计算法这两个步骤(见附表3)
引出程序设计语言的概念: 但是上面用自然语言描述的算法,计算机不懂, 必须翻
译成计算机语言,也就是程序设计语言。与用Visual Basic语言编写的程序作对
照,简单解释变量Y 的作用,并提示学生程序设计语言是我们以后学习的重点。
(3)演示观察。
教师演示运行调试程序的操作步骤:启动
Visual Basic
软件,输入前面编写的程
序代码,进行调试,最后得到运行的结果。
(4)讨论交流。
提问:“前面我们学习了用计算机解决问题的过程, 它和人工求解有什么关系呢 (见
附表 4)?
(5)小结、布置实践和练习。
根据各小组的讨论结果, 总结出人工求解问题和用计算机求解问题的相同点和不同
点(见附表 5)。
附表 1
探究问题记录表
分析问题( 找出已知和未知、
写出解题步骤结果
列出已知和未知之间的关系)
附表 2
分析问题( 找出已知条件和未
知条件、列出已知条件和未知写出解题步骤
条件之间的关系)
设所求的数为X,则 X 应满1. 令 X 为 1。
足:
如果 X 整除3余2,X 整除5余3,X
X 整除 3 余 2整除 7 余 2,这就是题目要求的数,则记下
这个X。
X 整除5余3
3. 令 X 为