《算法与程序设计》选修教案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一课初识算法与程序设计一、教学目标 1、知识与技能

(1)理解算法的概念,培养学生自我探索信息,高效获取信息的

能力;(2)能初步利用算法解决简单的问题,培养学生的理

论联系实际能力和动手操作能力。 2、情感、态度、价值观学生

在学习过程中,通过亲身经历体验获得对此算法的感性认识,培

养学生自我获取信息、分析评价信息、、表达呈现信息的能力,

进一步提高其信息素养。二、教学重点难点重点:算法概念的理

解难点:如何科学合理的选择和设计算法。三、教学策略与手段

以趣味性问题设置情境,激发学生探索解决问题的兴趣,与学生

进行互动探讨,通过Flash演示材料,比较直观地把抽象的问题

简单化,使学生的思考逐步深入,从而总结出算法的概念,学会

如何设计和选择算法,培养学生自主探究学习的能力。四、教学

过程(1课时)(一)我们来共同寻找下面一些生活中比较现实

的问题的解决方法。【问题一】天下真的有“不要钱的午餐”吗?

某一餐馆门口海报上写着“不要钱的午餐”,规则如下:在三个月内,来宾必须凑够五个人,五人每次来就餐必须按照不同的顺序坐,直到把所有可能的顺序都坐一遍,以后来吃饭就可永远免

费” 。于是有人想,这太容易了,每人每次坐不同的位置,吃五

次不就行了?于是他就叫上自己的朋友参加这项活动,可是,吃

了十次之后,还没有吃上免费午餐,这是怎么回事呢?学生们感

觉非常有意思,很快以小组为单位进行热烈的讨论并得出了破解

问题的步骤:①第一个座位5个人都有坐的机会②第二个座位只

有4个人中的任一个有坐的机会(一个人不能同时坐两个座位)

③第三个座位只有3个人中的任一个有坐的机会④第四个座位只

有2个人中的任一个有坐的机会⑤第五个座位只有1个人有坐的

机会⑥计算:5×4×3×2×1=120⑦得出结论:需要吃12

0次才有可能吃上免费午餐。【问题二】有三个和尚和三个妖

怪过河,只有一条能装下两个人的船,在河的任何一方或者船上,

如果妖怪的人数大于和尚的人数,那么和尚就会有被吃掉的危险。你能不能找出一种安全的渡河方法呢?请 1

写一写你的渡河方案。学生:学生讨论回答。〖展示步骤〗①两个妖怪先过河,一个妖怪回来;②再两个妖怪过河,一个妖怪

回来;③两个和尚过河,一个妖怪和一个和尚回来;④两个和尚

过河,一个妖怪回来;⑤两个妖怪过河,一个妖怪回来;⑥两个

妖怪过河。【Flash动画展示】通过讨论和动画展示,我们可以知道,计算机解决问题和人解决问题一样需要有清晰的解题步骤。

算法就是解决问题的程序或步骤。(二)【课件展示】算法的概念: 1、广义的算法是指完成某项工作的方法和步骤,在我们日常生活中也经常使用算法,只是没意识到罢了。如:洗衣机的使用

说明书是操作洗衣机的算法,菜谱是做菜的算法等等。 2、在数学中,现代意义的算法是指可以用计算机来解决的某一类问题的程

序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有

限步之内完成。【小试身手】按照这样的理解,我们可以设计出很

多由具体数学问题解决一类数学问题的算法.下面看一个例子:(要

求学生自己考虑并写出具体的算法)鸡兔同笼问题。一个笼子里

有鸡和兔,现在只知道里面一共有17个头,48只脚,鸡和兔各有多少只?试设计一个求解的算法。【设计意图】求解鸡兔的问题

简单直观,却包含着深刻的算法思想。应用解二元一次方程组的

方法来求解鸡兔同笼问题。第一步:设有小鸡x只,小兔y只,

则有第二步:将方程组中的第一个方程两边乘-2加到第二个方

程中去,得到,得到y=7;第三步:将y=7代入(1)得x=10。【变一变】在笼中有鸡、兔若干,已知有头a个,有脚b只,求

各有多少只鸡和兔。【师生合作】老师带领学生共同书写规范的

算法的具体步骤,最后引出算法使用的范围:能解决一类问题,

并且能重复使用。(三)【课件展示】算法的基本特征①有穷性

②确定性③不唯一性④有效性(逻辑性) 2

1、有穷性:一个算法应该包含有限个操作步骤,而不能是无限的。

2、确定性:算法的每个步骤都应该是明确无误的,不能含义模糊,使执行者无所适从。

3、有零个或者多个输入,有一个或者多个输出

4、有效性:算法中的每一步都应该能有效地执行,执行算法最后应该能得到确定的结果。【教学总结】 1、本节课通过

一些生活中看似简单问题的解决方法和步骤,使学生比较轻松的

接受了生活算法的概念,进一步理解了计算机算法的概念。 2、课堂教学的效益取决于学生对所学知识理解了多少,能否用所学知

识来解决一些实际问题。本节课的设计突出讲与练的结合,培养

学生的动手能力,并且引出学生对下一节课的内容的思考,比较

顺利的完成了本节课的教学任务。 3、如何优化算法,找到算法的形式和用算法解决问题的效益的最佳结合点,还尚需探讨。

3

第二课用计算机解决问题一、教学目标(1)让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。(2)让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。(3)让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的

基本步骤,认识其在算法与程序设计中的作用。二、重点难点重

点用计算解决问题的过程中的分析问题、设计算法、和上机调试

程序等步骤。用计算机解决问题的过程中的分析问题、设计算法

也是本节的难点。三、教学过程(2课时)(一)引入教师:“在科技发达的今天,我们到处都可以看到计算机的踪影,感受到

计算机给学习、生活带来的方便。然而,在惊叹计算机的神奇和

享受的欢乐的时候,你是否了解计算解决问题的基本过程?有没

有思考过其中的奥妙呢?下面我们先看一个古典的问题:” 学

生观看的电视剧《汉刘邦》片断,内容大致如下:“韩信是我国西

相关文档
最新文档