高一选修算法与程序设计《计算机解决问题的过程》--畅想colove之星

来源:百度文库 编辑:神马文学网 时间:2024/05/02 10:06:15
计算机解决问题的过程
【教材分析】
本节课“计算机解决问题的过程”是“算法与程序设计”模块的第一节课,上好这节课是学生能否学好“算法与程序设计”这一模块的关键。计算机解决问题是一个比较抽象的概念,学生理解起来比较困难,算法与程序设计更多是用来解决生活中的数学问题,如何从实际问题中建立数学模型至关重要。因此,本节从学生最熟悉的一元二次方程着手,让学生尝试寻找不同的解决方法,并试图从人解决问题的过程中提炼、概括出人解决问题的一般步骤,从而运用到计算机解决问题的过程,因为计算机解决问题都是模仿人解决问题的。本节课还涉及到让学生理解算法与程序设计在计算机解决问题的过程中的重要地位和作用,也为后续课程的学习奠定基础。
【学情分析】
通过《信息技术基础》必修模块第三章“信息的编程加工和智能化加工”的学习,学生初步了解到计算机信息加工的一般过程,尤其是第二节“信息的编程加工”的学习,学生已经初步接触到VB程序设计语言,初步感受到利用计算机解决问题的独特魅力,对计算机程序、程序设计语言等有了一定的认识。并且在数学中已经学习了算法,所以学生已有一定的基础。
对于高中一年级的学生来说,他们的求知欲和动手能力都比较强,很想一展身手,体验编程的乐趣,检验自己编写的程序是否能够运行出正确结果。强烈好奇心性驱使他们想进一步揭开计算机解决问题的神秘面纱。
【教学目标】
1. 知识与技能:
(1)知道人类是如何分析问题、解决问题的。
(2)了解计算机解决问题的基本步骤。
(3)归纳人类解决问题和计算机解决问题的异同。
2. 过程与方法:
(1)通过求解一元二次方程,分析判断出人,计算机解决问题的方法和步骤,并学会举一反三。
(2)通过小组讨论,培养学生合作、交流和自主学习的能力。
3. 情感态度价值观:
通过对同一个问题的不同解法分析,培养学生在解决问题时不要盲目的动手操作,而是先经过分析,理清问题的来龙去脉,明确的解决方法以后才开始着手解决。在小组讨论的过程中,培养学生自主探究,合作交流,和语言表达等能力;在体验编程带来快乐的同时,让学生正确理解计算机解决问题的基本过程,感受计算机解决问题对我们学习、生活带来的诸多魅力,从而进一步培养学生正确的信息素养观。
【重点难点】
重点:
用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。
难点:
1. 人类解决问题和计算机解决问题的异同。
2. 用计算解决问题的过程中的分析问题、设计算法。
【教学策略】
本节课以求解一元二次方程数学竞赛的形式导入课题,初步让学生感受到利用计算机解决问题的优越性。并以其中一个方程为例,先让学生回顾自己是如何解决这道题的,概括出自己解决问题的一般步骤,进而把人解决问题的步骤运用到计算机解决问题的过程中去,学会知识的迁移。在利用计算机解一元二次方程的教学中,让学生通过自主探究、亲身体验、合作交流等方式进一步加深理解用计算机解决问题的基本过程,突出强调了在利用计算机解决问题时建立数学模型的重要性,让学生体验到解决问题的关键是思想与算法。通过对比算法与程序设计语言,使学生充分理解算法对程序设计所具有的重要作用。
教学中运用了探究、讲授、交流、合作学习、阅读材料等多种教学活动的有机结合的教学方法。
【教学过程】
教学环节
教师行为
学生行为
设计意图
课程导入
游戏互动:展示10道一元二次方程题,在1分钟内看谁解的又对又快,并给予一定的奖励。
演示一段求解一元二次方程的小程序,利用计算机解10道题需要多长时间。
提问:与老师解题的方法相比,是同学们解题的快呢还是老师老师的快呢?
追问:同学们想不想知道计算机是如何来解决一元二次方程的呢?
动手解方程
观察
回答:老师
回答:想
培养学生动手能力,激发他们的学习兴趣,并初步感受到计算机解决问题给我们学习带来的快捷性和准确性。
充分调动学生学习的积极性
人是如何解决问题的
要想弄清楚计算机是如何求解一元二次方程,首先老师想问一下同学们是如何解一元二次方程的呢?比如方程:6x2+5x-50=0
环节一:任务驱动,求方程6x2+5x-50=0的解,写出解题步骤。引导学生观察各项系数之间的关系,确定用什么方法解决,从而写出具体的步骤。
请一两位同学讲解一下你从接到这题到完成解题都做了哪些工作?(了解题意、分析题涉及到哪些知识是什么题型、设计解题的基本步骤、解题得出结果)
提问:为什么刚才两位同学会采取不同的解题方法呢?
总结同学们解题的一般过程:首先观察、分析问题,收集必要的信息,然后根据已有的知识、经验进行判断、推理,尝试按照一定的方法和步骤解决问题。
提问:那么利用计算机来解决问题,它的过程又是怎样的呢?
回想刚才解题的过程
再次开始动手求解该方程
阐述自己的解题思路解题方法和步骤
思考
培养学生探究和口头表达能力。同时让学生在对比两位同学不同的解题方法,明确,对同一个问题,由于分析的不同直接导致了解决过程的不同,直至解决效果的不同,培养学生在解决问题中应该仔细分析问题,以便在解决问题的过程中应寻找最优方法。
引出本课的重点问题 ——用计算机解决问题过程。
计算机又名“电脑”,可见计算机解决问题时都是模仿人解决问题的。
计算机解决问题的一般过程
任务一:分组讨论:如何利用计算机求解方程6x2+5x-50=0的解。并写出具体的解题步骤和方法。
引导学生回顾旧知识,注意知识的迁移。
(巡视、发现学生存在的问题,并进行个别指导)
总结学生解决问题的过程,展示出解决问题的正确步骤。
演示计算机解方程的步骤
引出算法的概念:解决问题的方法和步骤。
问:通过上面的分析,同学们已经编写出了算法,那么计算机是不是就能理解人类的思想,按照算法一步一步的执行下去了呢?
引出程序设计语言的概念:泛指一切用于书写计算机程序的语言。
演示将算法一步一步转换成计算机读得懂的程序设计语言。强调算法和程序设计语言之间的区别,以及在计算机解决问题中的重要作用。
介绍VB程序设计界面,演示计算机解方程6x2+5x-50=0的完整程序。
任务二:同学们上机体验计算机解方程的过程,并试着修改a、b、c的值,进一步体验计算机解题的快捷性和准确性。
个别指导,发现存在的问题。
请同学们谈谈,你在使用计算机解方程的时候有什么收获。
引导学生总结计算机解决问题的过程:
提问:是不是计算机解决每个问题都是按照这个步骤来完成的呢?比如利用excel处理我们班的期末考试成绩,我也是再利用计算机解决问题,但是我们在使用excel的过程中就没有设计算法,编写程序,运行程序,这个问题我们又如何解释呢?
学生开始讨论,并试着写出算法
对比自己的解题步骤与老师的有什么不同
观察
思考
回答:是/不是
明白要使计算机解决问题,还必须将算法编写成程序语言,但是学生对程序语言还不是很清楚,究竟什么样子就是计算机能读得懂的语言呢。
对程序设计语言有了一定的认识后,非常想动手体验计算机解决的过程。
体验完整的计算机解6x2+5x-50=0的程序。
试着修改abc的值,感受计算机解方程的过程。在遇到问题时可以向周围的同学讨论,也可以参考老师发给的阅读材料。
学生自言其说。
回顾刚才利用计算机解题的过程。
思考
联系数学上学的算法的概念,培养学生知识的迁移能力
培养学生的自主探究能力,引导学生思考,发现问题,并试图解决问题
引导学生思考,回顾已有的知识,将数学上学的算法联系起来。学会知识的迁移
明确计算机解决问题中,算法和程序设计语言的重要性,以及它们之间的区别。
培养学生自主学习和探究学习的能力,从而培养学生的创新精神。
培养学生归纳总结的能力
引导学生发现问题,自主解决问题。
课堂小结
引导学生对比人、机解决问题的过程,总结二者解决问题的区别和联系。
学生思考后回答
培养学生归纳总结的能力
思维拓展
著名的“韩信点兵”问题,今有物不知其数,三三数之余二,五五数之余三,七七数之余二,问物几何?
请同学们列出解决这道题的方法和步骤,并尝试编写计算机解决问题的程序语言。
学生思考
教师继续提出问题,让学生学生产生继续探究、学习的愿望,也为后即学习做铺垫。
在利用计算机解决问题一般过程中:要让学生分析解,得出解题的数学表达式(学数模型)再变为计算机能解决的表达式,设计代码(这步可以老师自已完成),只运行程序得出结果就可以,不必去解说VB软件。