教科版高中信息技术 选修一 《算法与程序设计》选修教案

第一课初识算法与程序设计

一、教学目标

1、知识与技能

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

(2)能初步利用算法解决简单的问题,培养学生的理论联系实际能力和动手操作能力。

2、情感、态度、价值观

学生在学习过程中,通过亲身经历体验获得对此算法的感性认识,培养学生自我获取信息、分析评价信息、、表达呈现信息的能力,进一步提高其信息素养。

二、教学重点难点

重点:算法概念的理解

难点:如何科学合理的选择和设计算法。

三、教学策略与手段

以趣味性问题设置情境,激发学生探索解决问题的兴趣,与学生进行互动探讨,通过Flash演示材料,比较直观地把抽象的问题简单化,使学生的思考逐步深入,从而总结出算法的概念,学会如何设计和选择算法,培养学生自主探究学习的能力。

四、教学过程(1课时)

(一)我们来共同寻找下面一些生活中比较现实的问题的解决方法。

【问题一】天下真的有“不要钱的午餐”吗?

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

的顺序都坐一遍,以后来吃饭就可永远免费”。于是有人想,这太容易了,每人每次坐不同的位置,吃五次不就行了?于是他就叫上自己的朋友参加这项活动,可是,吃了十次之后,还没有吃上免费午餐,这是怎么回事呢?

学生们感觉非常有意思,很快以小组为单位进行热烈的讨论并得出了破解问题的步骤:①第一个座位5个人都有坐的机会②第二个座位只有4个人中的任一个有坐的机会(一个人不能同时坐两个座位)③第三个座位只有3个人中的任一个有坐的机会④第四个座位只有2个人中的任一个有坐的机会⑤第五个座位只有1个人有坐的机会⑥计算:5×4×3×2×1=120⑦得出结论:需要吃120次才有可能吃上免费午餐。

【问题二】有三个和尚和三个妖怪过河,只有一条能装下两个人的船,在河的任何一方或者船上,如果妖怪的人数大于和尚的人数,那么和尚就会有被吃掉的危险。你能不能找出一种安全的渡河方法呢?请写一写你的渡河方案。

学生:学生讨论回答。

〖展示步骤〗

①两个妖怪先过河,一个妖怪回来;

②再两个妖怪过河,一个妖怪回来;

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

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

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

⑥两个妖怪过河。

【Flash动画展示】通过讨论和动画展示,我们可以知道,计算机解决问题和人解决问题一样需要有清晰的解题步骤。算法就是解决问题的程序或步骤。(二)【课件展示】算法的概念:

1、广义的算法是指完成某项工作的方法和步骤,在我们日常生活中也经常使用算法,只是没意识到罢了。如:洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等。

2、在数学中,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。【小试身手】按照这样的理解,我们可以设计出很多由具体数学问题解决一类数学问题的算法.下面看一个例子:(要求学生自己考虑并写出具体的算法)

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

【设计意图】求解鸡兔的问题简单直观,却包含着深刻的算法思想。应用解二元一次方程组的方法来求解鸡兔同笼问题。

第一步:设有小鸡x只,小兔y只,则有

第二步:将方程组中的第一个方程两边乘-2加到第二个方程中去,得到,得到y=7;

第三步:将y=7代入(1)得x=10。

【变一变】在笼中有鸡、兔若干,已知有头a个,有脚b只,求各有多少只鸡和兔。

【师生合作】老师带领学生共同书写规范的算法的具体步骤,最后引出算法使用的范围:能解决一类问题,并且能重复使用。

(三)【课件展示】算法的基本特征

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

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

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

所适从。

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

4、有效性:算法中的每一步都应该能有效地执行,执行算法最后应该能得到确定的结果。

【教学总结】

1、本节课通过一些生活中看似简单问题的解决方法和步骤,使学生比较轻松的接受了生活算法的概念,进一步理解了计算机算法的概念。

2、课堂教学的效益取决于学生对所学知识理解了多少,能否用所学知识来解决一些实际问题。本节课的设计突出讲与练的结合,培养学生的动手能力,并且引出学生对下一节课的内容的思考,比较顺利的完成了本节课的教学任务。

3、如何优化算法,找到算法的形式和用算法解决问题的效益的最佳结合点,还尚需探讨。

第二课用计算机解决问题

一、教学目标

(1)让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。

(2)让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。

(3)让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的基本步骤,认识其在算法与程序设计中的作用。二、重点难点

重点用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。用计算机解决问题的过程中的分析问题、设计算法也是本节的难点。

三、教学过程(2课时)

(一)引入

教师:“在科技发达的今天,我们到处都可以看到计算机的踪影,感受到计算机给学习、生活带来的方便。然而,在惊叹计算机的神奇和享受的欢乐的时候,你是否了解计算解决问题的基本过程?有没有思考过其中的奥妙呢?下面我们先看一个古典的问题:”

学生观看的电视剧《汉刘邦》片断,内容大致如下:

“韩信是我国西汉初著名的军事家,刘邦得天下,军事上全依靠他。韩信点兵,多多益善,不仅如此,还能经常以少胜多,以弱胜强。在与楚军决战时韩信指挥诸侯联军,在垓下十面埋伏,击败楚军,楚霸王项羽因此自杀。”

片断结束时屏幕出现“韩信点兵”问题:“相传汉高祖刘邦问大将军韩信统御兵士多少,韩信答说,每3人一列余1人、5人一列余2人、7人一列余4人、13人一列余6人……。刘邦茫然而不知其数。你呢?”

(二)问题

教师:“下面我们先助刘邦解决一个简单的问题。”

“韩信点兵”问题1:求整除3余1、整除5余2、整除7余4的最小自然数。

(三)探究

把全班分成16个学习小组,每个小组的同学一起探究、讨论问题。利用已学过的数学知识找出题目已知什么求什么、明确已知和未知之间的关系和写出

求解问题的解题步骤。并填写《计算机解决问题的过程》教学活动表中的“探究问题记录表”。如下:

探究问题记录表

学生讨论,教师在这过程中到各学习小组中,引导个别学习小组分析问题、写出解题步骤。教师提问2~3个同学,从中逐渐引导出类似如下的分析问题和解题步骤,并给出算法的概念。

教师解释第3步“另X为X+1”并指出它与数学中的区别,并从上面的解题步骤中总结出穷举的算法。

教师:“刚才有些同学把题目解出来了,答案是67,韩信作为大将军,统率士兵当然不止67人,下面我们来解决一个数据量稍大的问题。”

展示题目:

“韩信点兵”问题2:求整除3余1、整除5余2、整除7余4、整除13余6、整除17余8的最小自然数。

学生分析上述问题并写出算法,不用计算。学生有了第1题的经验,很快会写出和第一题类似的算法。如下:

教师:“上面的结果超过1万,人工计算要很长时间,在科技发达的今天,你想到什么?”(用计算机解题)

(四)用计算机解决问题

教师:“计算机怎么样解决问题?用计算机解决问题,同样要经过分析问题、设计算法两步骤。”在讲授过程中展示人工解题中分析问题和设计算法这两个步骤。用计算机解题,是不是输入上面的算法?上面用自然语言描述的算法,计算机不懂,必须翻译成计算机的语言,这就是程序设计语言。”

本例用Visual Basic语言编写的程序请看如下:

Private Sub Command1_Click()

Dim X As Integer,Y As Integer

X = 1: Y = 0

Do

If X Mod 3 = 1 Then

If X Mod 5 = 2 Then

If X Mod 7 = 4 Then

If X Mod 13 = 6 Then

If X Mod 17 = 8 Then Y = X

End If

End If

End If

End If

X = X + 1

Loop Until Y > 0

Print "韩信统御士兵数:";Y

End Sub

教师:“程序编好以后,通过键盘输入计算机,并运行程序查看结果这个过程叫调试程序。”

(五)观摩

根据前面编制的程序,启动Visual Basic程序设计环境,输入程序代码,进行调试,最后得到运行的结果。要求同组内先完成的同学帮助还未完成的同学。帮助的时候不能代劳,只能动口不动手。

(六)交流

教师:“前面我们学习了用计算机解决问题的过程,它和人工解有什么关系呢?同一学习小组的同学一起探讨人工求解问题和用计算机求解问题的异同,并把讨论结果记录在《计算机解决问题的过程》教学活动表的“讨论记录”表中。如下:

关于求解问题的方式讨论记录

教师提问2~3个小组的讨论结果,并引导出大致如下的形式结果:

第三课算法与算法的描述

一、教学目标

1、知识与技能

(1)了解算法的定义及其表达方法;

(2)认知流程图的六种基本符号;

(3)理解计算机解决问题的一般过程。

2、方法与过程

(1)理解用不同的表达方法描述算法的优缺点;

(2)掌握用流程图描述简单的算法。

3、情感态度和价值观

以生活中的实例引入算法,激发学生的学习兴趣,培养学生的主动探究能力。

二、重点难点

(一)教学重点

1、算法的定义;

2、算法的三种表达方法;

3、流程图的六种基本符号;

4、用流程图描述简单的算法。

(二)教学难点

5、算法的描述(三种);

6、用流程图描述算法。

三、教学过程(2课时)

第四课程序与程序设计语言

一、教学目标

1、知识与技能

使学生知道什么是源代码,并理解算法、程序设计、程序设计语言之间的关系,了解程序设计语言的发展及种类。

2、过程与方法

使学生初步体验编程乐趣,了解如何编辑程序、编译程序和连接程序。

3、情感态度与价值观

让学生进一步领会算法和程序设计在解决问题中的地位,体会编写出程序的魅力,从而培养学生学习编程的兴趣。

二、重点难点

(1)重点:了解代码所包含的算法思想;

(2)难点:计算机是如何编辑程序、编译程序和连接程序的。

三、教学过程(2课时)

正课讲解

(一)尝试用VB编写程序

1、么是VB?

——VB是一种基本BASIC语言的可视化程序开发工具。

2、编写程序

⑴从桌面上启动VB,弹出“新建工程”对话框,从“新建”页面中选“标准EXE”,然后“打开“按钮,建立”标准EXE工程。

注:为了避免打开时总是出现“新建工程”对话框,在首次启动时,勾选“不再显示这个对话框”。

⑵单击工具箱“CommandButton”的按钮,在Form1窗体中拖出一个

“Command1”按钮。

Command1是命令按钮,它有6个属性、2个事件和4个方法。

⑶选中此按钮,从属性窗口中将Caption改为“韩信点兵”。

⑷给按钮添加代码,在Private Sub Command1_Click()和End Sub之间添加代码:

Dim N As Integer ‘声明N为整型

N=1 ‘赋初始值

Do(N mod 3=2) and(N mod 5=3) and (N mod 7=2)

Then ‘满足条件打印N,不满足继续循环

Print N

Exit do

End if

N=N+1

Loop

⑸从“运行”菜单中“单击”启动命令,运行程序。运行后,单击“韩信点兵”按钮。

注:运行时,不能修改程序代码。

实践题:从“调试”菜单中点击“逐语句”命令(F8),然后按F8键试着单步运行程序,观察代码是如何运行的,程序执行注释部分吗?在程序运行的过程中,用鼠标指向变量N,看看它的值有什么变化,为什么会这样变?(二)算法、程序设计与程序设计语言之间的关系

⑴算法

提出问题:什么是算法?算法有哪些特征?

⑵程序设计——寻求解决问题的方法,并将其实现步骤写成计算机可执行的程序的过程。

⑶程序设计语言——泛指一切用于书写计算机程序的语言。

算法是程序设计的前提,它包含方法和步骤;

程序是实现算法中的思想的过程;

程序设计语言把算法转化为计算机认识的语言。

(三)认识程序设计语言

1、发展过程

机器语言:由一串“0”和“1”构成二进制代码。

汇编语言:是一种符号化(英文助记符)的机器语言。

高级语言:如Basic、C/C++、Fortran、Pascal、Cobol、Java等。

2、分类(按转换方式不同分类)

3、编辑程序、编译程序和连接程序

⑴编辑程序

包含内容:一是将源程序逐个字符输入到计算机内存,二是修改源程序,三将修改好的源程序保存在磁盘文件中。

⑵编译程序:将已编辑好的源程序(已存储在磁盘文件中)翻译成二进制的目标代码。

二进制代码在UNIX下后缀为“.o”的文件,在DOS下是后缀为“.obj”

文件。

⑶连接:将各模块的二进制目标代码与系统标准模块经连接处理后,得到具有有绝对地址的可执行文件,它是计算机直接执行的文件。

在UNIX下它以“.out”为后缀,在MS-DOS以下“.exe”为后缀。

执行过程:

第五课vb语言及程序开发环境

一、教学目标

1、知识与技能

高中信息技术 第2章算法与程序设计教案 选修1

―、教材分析 1本章的作用和地位 本章是普通高中信息技术选修模块《算法与程序设计》的第二章,是程序设计的基础和开端。它涵盖了VB程序设计语言的基本知识和程序设计的基本思想与方法。通过本章的学习,学生可以掌握VB的语句、数据类型、变量、常量、表达式、函数等程序设计语言的基本知识。会使用程序设计语言实现顺序、选择、循环三种控制结构。初步掌握调试、运行VB 程序的方法。理解模块化程序设计的基本思想,初步掌握其基本方法。能够设计计算机程序来解决一些简单的实际问题。 本章是全书的入门篇,通过本章的学习,学生学习本模块的兴趣会得到进一步的提高,能够激发他们运用计算机程序来解决问题的学习热情。 本章还注意引导学生形成自主学习、自主探究、与他人合作的方法和意识,也为后续章节的学习和其他各选修模块开展多元化交流与合作做好必要的知识与技能上的准备。 2.本章主要内容介绍 本章从一些简单的问题出发,沿着分析问题、设计算法、编写程序等运用计算机解决问题之路,引导学生学习如何使用VB程序设计语言编写程序解决问题,掌握VB的基本语句、程序的基本控制结构以及程序设计的基本思想与方法。 本章设置了五节,内容如下: “2・1VB语言及程序开发环境”。本节通过对一个VB程序的探究活动,让学生掌握VB的基本数据类型、常量、变量、函数、表达式等程序设计语言的基本知识;通过探究VB 程序设计语言的开发环境的界面,了解菜单栏、工具栏、控件工具箱、代码窗口、窗体设计窗口、工程窗口、属性窗口、布局窗口等可视化程序开发环境的基本要素,掌腳B程序的调试方法。 “2・2程序的顺序结构”。本节从'‘居民生活消费支出的计算”问题出发,引导学生经历分析问题、设计算法、编写程序、调试程序等用计算机解决问题的过程,介绍了VB语言的赋值语句、输入输出语句和程序的顺序结构。 “2・3程序的选择结构”。本节从“制作矩形框”问题和“居民生活水平状况的评价”问题出发,引导学生经历分析问题、设计算法、编写程序、调试程序等用计算机解决问题的过程,介绍了VB语言的条件语句、多重选择语句和程序的选择结构。 “2・4程序的循环结构”。本节从“超级水稻种植试验的统计分析”问题出发,引导学生经历分析问题、设计算法、编写程序、调试程序等用计算机解决问题的过程,介绍了VB 语言的FOR循环语句、DO循环语句、循环的嵌套和程序的循环结构等。 “2・5模块化程序设计”。本节从“验证歌德巴赫猜想”问题出发,引导学生经历分析问题、设计算法、编写程序、调试程序等用计算机解决问题的过程,介绍了自顶而下、逐步求精的程序设计方法、VB语言的过程与函数、模块化程序设计的基本思想。 3.重点难点分析 教学重点: (1)要求学生掌握VB的基本数据类型、常量、变量、函数、表达式等程序设计语言的基本知识;掌握VB程序的调试方法。 (2)要求学生掌握VB语言的赋值语句、输入输出语句和程序的顺序结构。 (3)要求学生掌握VB语言的条件语句、多重选择语句和程序的选择结构。 (4)要求学生掌握VB语言的FOR循环语句、DO循环语句、循环的嵌套和程序的循环结构等。 (5)要求学生掌握自顶而下、逐步求精的程序设计方法、VB语言的过程与函数、模块化程序设计的基本思想。

选修1算法与程序设计《23排序》公开课教案

选择排序算法及其程序实现 一、设计思想 算法的程序实现是程序学习的难点,选择排序算法又是高中信息技术教学中几个算法中较难理解和掌握的。为了让每个学生都乐于听,都能听得懂,整个教学过程把选择排序算法进行手术刀式的解剖,分解为一个一个小知识点,然后各个突破,最终掌握整个算法。一步一步,由浅入深,由小到大,前后呼应,前后关联,直到解决完整算法。 二、教材分析 1.《学科教学指导意见》对本课教学内容的要求:初步掌握选择排序算法的程序实现。对于选择排序,除了掌握排序算法本身外,更重要的是排序算法的原理,了解排序算法的特点。 2.本课内容的组成成分和在模块学习中的地位和作用:排序是的计算机程序设计中一个重要算法,高中信息技术主要有冒泡排序和选择排序,选择排序是对冒泡排序的改进,大大提高了冒泡排序的效率,相对而言,算法比较复杂,比冒泡排序难以理解。学生只有在充分理解和掌握选择排序的算法的前提之下,才能更好使用VB程序语言来实现该算法。所以,本节课在教学的内容上主要由选择排序的算法思想和该算法的程序实现两部分组成。其中,学生对于选择排序的算法思想的理解是前提和基础,也是算法实现过程中难点的突破口。 三、学情分析 1.学生已有的认知水平和能力基础: 在学习本课之前,学生已经掌握了必备的VB6.0操作和基础的VB程序设计语言,学生可以使用这些基本技能实现简单的算法。而且,学生刚刚学过冒泡排序算法,对于排序算法有一定的认识。 2.学生学习本课可能遇到的困难和问题: 本课在学习过程中,学生可能将遇到3个主要困难。第一,理解选择排序算法,从而归纳出算法流程;第二,在程序实现过程中,查找给定范围内最小的数的位置;第三,两个位置的数据如何实现交换,以及何时需要交换。 四、教学目标 知识、技能教学目标:掌握选择排序算法具体过程;初步掌握选择排序算法的程序实现。 能力、方法教学目标:会根据选择排序算法分析画出流程图并写出程序代码;通过实例,掌握使用选择排序算法设计程序解决问题的方法。

高中信息技术 算法与程序设计-分支结构教案 教科版 教案

分支结构 【基本信息】 【课标要求】 1.内容标准 (1)理解并掌握一种程序设计语言的基本知识,包括语句、数据类型、变量、常量、表达式、函数。会使用程序设计语言实现选择控制结构。 (2)理解模块化程序设计的基本思想,初步掌握其基本方法。 (3)初步掌握调试、运行程序的方法。 (4)在使用某种面向对象程序设计语言解决问题的过程中,掌握面向对象程序设计的基本思想与方法,熟悉对象、属性、事件、事件驱动等概念并学会运用。 2.活动建议 (1)选择实例,根据解决问题的要求分析设计算法,恰当地使用选择控制结构编写源程序,调试并运行该程序,在过程中体验程序设计语言的逻辑特点。 【学情及教材分析】 《分支结构》是某某省高某某息技术教材第六章第五节的内容,它是建立在学生已学习的顺序结构的基础之上,为后续学习循环结构作了铺垫。VB中IF语句的分支结构对学生来说,并不难理解,特别是学生在英语中已学过IF引导的条件语句,它和VB有诸多相似之处,所以我以英语中的IF条件语句作引子,导入本节课的内容,本节课的重心放在如何引导学生明确程序设计的思想是什么,如何培养学生利用IF语句解决实际问题的能力。 『此处,作者对“学情及教材”进行分析之后,加入了“教学策略”的描述,特别是提出了结合英语中的“IF引导的条件语句”这样一个知识点来引入教学的方法,让人眼前一亮,会给人“我怎么没有想到呢?”的感觉。这体现了作者对学生已有的认知结构把握较准,善于将学生已有的知识与新知建立联系,从而提高教学效率的能力,同时也指出了本节课的教学重点。』 【教学目标】 知识与技能 (1)掌握IF语句的格式和功能 (2)会画IF语句的流程图 (3)学会用IF语句解决日常生活中的实际问题 过程与方法

高中信息技术 第3章算法与程序设计教案 选修1

高中信息技术第3章算法与程序设计教案选修1 1.本章的作用和地位 本章作为高中信息技术选修模块《算法与程序设计》的第三章,旨在培养和提升学生利用VB面向对象语言编写程序解决问题的能力,让学生初步认识VB可视化编程的基本概念和方法,学会利用VB进行可视化编程的方法,掌握程序调试、查错和运行,以及学会综合运用前面所学知识和VB可视化编程知识综合解决问题的能力。 本章强调学生通过感悟和操作来体验可视化编程环境和可视化编程,侧重培养学生利用可视化编程工具进行可视化编程过程与方法的能力,为学生进一步学习面向对象程序设计和开发软件奠定基础。 另外,本章还注意引导学生形成自主学习意识、与他人合作意识,也为本书的后续章节的学习和其他各选修模块开展多元化交流与合作做好必要的知识与技能上的准备。 2.本章主要内容介绍 在软件技术领域中,可视化编程是面向对象编程技术的热门领域,也是软件技术的重要发展方向之一,学好可视化编程是《算法与程序设计》课程的一个重要任务之一,是理解面向对象程序设计思想和从事高效图形用户界面设计的关键,切实学好VB可视化编程可以为学生将来的学习打下良好的基础。 本章设置了三节内容: “3.1 可视化编程的概念与方法”。本节从一个爱动脑筋的同学刘浩的一个问题(如何方便快捷地设计出像Windows那样的、人机交互比较友好的图形用户界面呢?)切入,激发学生的求知欲,提出为解决问题要从VB的可视化编程开始,通过对VB可视化编程概念的感悟,从客观世界和程序世界的对象实例类比让学生认识可视化编程的几个重要概念(对象、属性、方法、事件、事件过程和事件驱动),通过亲身实践来加深对这些基本概念的理解。 “3.2 程序调试的方法”。本节通过张军在学习《算法与程序设计》课程的过程中,遇到调试程序的麻烦开始,引出程序调试是一项既需要技巧,又需要耐心和毅力的工作。通过任务的设置,让学生亲自上机编辑程序、调试程序、发现程序错误,通过探究找出程序中的错误,并分析产生错误的原因,进而归纳出在程序设计中容易出现的四种错误类型:编辑时出现错误、编译时出现错误、运行时出现错误和逻辑错误。再次通过任务设置,让学生上机操作,进一步体验程序的调试与排错方法,并总结出调试程序的基本方法和过程。 “3.3 综合活动:心算练习程序设计”。本节运用探究性学习的方式设置了学习情景、目的任务、过程等活动环节,引导学生综合运用第一章、第二章和本章所学过的算法和编程知识,以小组合作探究的形式确定不同的任务需求,通过观察、交流、任务分析、设计算法和编写程序的解决问题过程,完成“心算练习程序设计”。本节还提供了一个“心算练习”程序示例给学生进行综合活动时参考,这是本章内容编写的一个创新点。它突破了以往一些教科书生搬硬套程序设计的条条框框,既强调学生进行自主学习、协作学习,又能使学生在学习时有规可依,并使学生在程序设计中有适度的创新。 3.1节强调的是VB可视化编程的概念,包括对象、属性、方法、事件、事件过程和事件驱动等。这些概念是面向对象程序设计中的重要组成部分,应鼓励学生通过类比和实践来感悟这些概念,只有理解了这些基本概念,才能为将来的学习打下基础。3.2节表面上看起来与3.1节关系不大,其实不然。由于VB提供的是一个可视化的编程环境,程序的编辑、调试、编译均在一个“即见即所得”的环境中完成,因此在3.1节的后面安排3.2节内容,对加深学生对可视化编程环境和可视化编程的认识有重要的作用。另外通过让学生创建相应的图形用户界面来调试程序,既达到了学习可视化编程的目的,又使学生学会了程序的调试

高中信息技术 算法与程序设计-赋值语句教案 教科版

案例二:赋值语句 【基本信息】 【课标内容】 (一)计算机解决问题的基本过程 (1)结合实例,经历分析问题、确定算法、编程求解等用计算机解决问题的基本过程 (二)程序设计语言初步 (1)会使用程序设计语言实现顺序结构。 【教学目标】 知识目标:使学生初步认识赋值语句,掌握赋值号的含义及功能。 技能目标:能够运用赋值语句进行简单代码的编写,体验代码编写的过程。 情感目标:激发学生学习兴趣,培养学生分析处理问题的能力,增强逻辑思维能力。 『赋值语句是学生遇到的第一个语句,因此教师并没有将教学目标单纯的定位于掌握赋值语句的含义和功能,而是更多引导学生体验编程的过程。』 【教学方法】 目标驱动,游戏教学法 【重点难点】 重点:控制键工作原理及代码编写 难点:按钮的代码编写 『教学重点和难点的描述不清晰,如“代码编写”包含的范围过广。』 【教学过程】

通过小游戏回顾类似于vb这种可视化程序设计语言处理问题的一般步骤: 界面设计——属性修改——代码编写——

(为了图片能够拼接的准确,我们就以一个网格的单位距离120移动) 表格分析,引导学生用自己的语言描述变化规律。提出:image1.left=image1.left+120 Let <变量名>=<表达式〉这里的let

(教师巡视指导) 【案例分析】 案例设计者赋值语句的授课分为两个课时,本案例是第一课时,第二课时内容是赋值语句的应用。 1.醉翁之意不在酒 看到本案例的第一印象是“过于烦琐”。赋值语句并不复杂,以高中生的现有能力完全可以接受教师讲解的赋值语句的含义和功能,为什么教师通过如此复杂的过程加以引导?然而仔细阅读后发现教师的设计是醉翁之意不在酒。教师不是为了讲赋值语句而讲赋值语句。 教师的授课对象是毫无语言基础的学生,他们不知道在哪里写代码,如何写代码,所以教师

高中信息技术 算法与程序设计-递归算法的实现教案 教科版

递归算法的实现 【基本信息】 【课标要求】 (三)算法与问题解决例举 1. 内容标准 递归法与问题解决 (1)了解使用递归法设计算法的基本过程。 (2)能够根据具体问题的要求,使用递归法设计算法、编写递归函数、编写程序、求解问题。 【教材分析】 “算法的程序实现”是《算法与程序设计》选修模块第三单元的内容,本节课是“递归算法的程序实现”,前面学习了用解析法解决问题、穷举法解决问题、在数组中查找数据、对数进行排序以及本节的前一小节知识点“什么是自定义函数”的学习,在学习自定义函数的基础上,学习递归算法的程序实现是自定义函数的具体应用,培养学生“自顶向下”、“逐步求精”的意识起着重要的作用。 『递归算法在算法的学习过程中是一个难点,在PASCAL和C语言等程序语言的学习过程中,往往是将其放在“函数与过程”这一章节中来讲解的。递归算法的实现也是用函数或是过程的自我调用来实现的。从这一点上来讲,作者对教材的分析与把握是准确的,思路是清晰的,目标是明确的。』 【学情分析】 教学对象是高中二年级学生,前面学习了程序设计的各种结构,在学习程序设计各种结构的应用过程中培养了用计算机编程解决现实中问题的能力,特别是在学习循环语句的过程中,应用了大量的“递推”算法。前一节课学习了如何自定义函数,在此基础上学习深入学习和体会自定义函数的应用。以递推算法的逆向思维进行求解问题,在学习过程中体会递归算法的思想过程。多维度的思考问题和解决问题是提高学生的学习兴趣关键。 『递归算法的本质是递推,而递推的实现正是通过循环语句来完成的。作者准确把握了学生前面的学习情况,对递归算法的本质与特征也分析的很透彻,可以说作者对教学任务的分析是很成功的,接来就要看,在成功分析的基础上作者是如何通过设计教学来解决教学难点的了。』 【教学目标】

信息技术信息技术(选修1)算法与程序设计

信息技术信息技术(选修1)算法与程序设计本文档提供了信息技术(选修1)算法与程序设计课程的详细内容和章节细化,旨在帮助学生深入了解并学习该课程的相关知识和技能。以下是本文档的内容概述: 第一章:算法基础 1.1 算法的概念和特性 1.2 算法的表示方法 1.3 算法的时间复杂度和空间复杂度 1.4 常用的算法设计方法 1.5 算法实例分析与练习 第二章:数据结构 2.1 数据结构的基本概念 2.2 线性表及其实现 2.3 栈和队列及其实现 2.4 串的表示和操作 2.5 树的表示和操作 2.6 图的表示和操作

2.7 数据结构实例分析与练习第三章:排序算法 3.1 冒泡排序 3.2 插入排序 3.3 选择排序 3.4 快速排序 3.5 归并排序 3.6 排序算法的比较和应用3.7 排序算法实例分析与练习第四章:搜索算法 4.1 顺序搜索 4.2 二分搜索 4.3 哈希搜索 4.4 图搜索 4.5 搜索算法的比较和应用4.6 搜索算法实例分析与练习第五章:算法优化

5.1 贪婪算法 5.2 动态规划 5.3 分治算法 5.4 回溯算法 5.5 优化算法的比较和应用5.6 算法优化实例分析与练习第六章:程序设计基础 6.1 编程语言概述 6.2 程序设计基本原理 6.3 程序的输入与输出 6.4 控制结构 6.5 函数与过程 6.6 数组与字符串 6.7 文件操作 6.8 异常处理与调试技巧 6.9 程序设计实例分析与练习第七章:高级程序设计技术

7.1 面向对象程序设计 7.2 泛型编程 7.3 并发与并行 7.4 网络编程 7.5 数据库编程 7.6 GUI设计与应用 7.7 Web开发基础 7.8 高级程序设计实例分析与练习 附件:本文档所涉及的附件包括实例代码、演示文稿、课程PPT等,可在相应章节或中获取。 法律名词及注释: 1.Copyleft:一种软件版权授权方式,保障用户自由使用、修改和再发布软件。 2.Creative Commons:一种非盈利组织,推广用户之间共享知识和创作作品的授权方式。

高中信息技术 第4章算法与程序设计教案 选修1

一、教材分析 1、本章的作用和地位 本章是算法与程序设计模块的重点。学生在必修模块中对程序设计的概念有了初步的了解,然后在本模块前面的章节加深了对程序设计语言VB的认识,对设计程序解决问题作了一些实践,积聚了初步的编程经验,本章把这些原始的编程经验上升到“算法〞的高度,把以模仿为主的编程实践过渡到以创造为主的程序设计过程。算法在程序设计中占有重要的地位,算法是程序设计的核心,被比作程序设计的灵魂。算法强调按照逻辑顺序进行程序设计的过程和步骤,因此,算法的学习和掌握,有利于培养学生的逻辑思维能力。 程序设计在计算机应用中处于比较高端的位置,要纯熟掌握自由主义的技巧去解决问题,需要一个不断学习、总结的过程。因此,学习程序设计,除了本身的价值外,对于陪养终生学习的习惯和建立正确的学习方法将起到很好的作用,为学生形成良好的学习惯奠定根底。 2、本章主要内容介绍 掌握编程技术是信息社会的建设者的根本素质。本章通过解决具体的问题方式,介绍了一些常见的算法。但本章所介绍的算法仅仅是算法的一局部,实际上,算法的种类远不止这几种。而且,问题的解决并不都是依靠单独的一种算法就能完成的,多数情况是,需要配合使用几种算法才能到达整个目的。也就是说,算法存在多样性、复杂性等特征,这些特征有利于学生形成对算法的正确认识,从而提高利用算法来解决问题的能力,所以,在实际教学中需要对这些内容给予关注。 本章设置了6节内容。 “4.1 用解析法设计程序〞。本节介绍了主要靠列出解析式来解决问题的方法。这种得法对工程技术界是常见的。解析式的导出可能需要专门的知识,本节只探讨了一些在程序设计中常见的问题解析解法。更深入的探究可能需要“计算方法〞的专门学问。 “4.2 用穷举法设计程序〞。本节介绍的算法是比较容易理解,算法也相对直观。人们解决问题时,通常都会考虑用穷举法,但没有计算机帮助时,穷举法所需要的计算量往往令人望而生畏,但应用穷举法设计程序解决问题,那么显得游刃有余。应用计算机作穷举法,关键是穷举过程的设计。 “4.3 查找得法设计〞。本节介绍了顺序文件查找的思路,还介绍了一种非常有用的数据结构――数组。从这一节开始,我们有意识地留下一些在进行程序设计实践时常常会遇到的问题让同学们自己解决,有时例子中给出的程序亦非尽善尽美,我们希望在教师的引导下,同学们能够通过讨论和探索找到解决问题的途径。这种发现和排除错错误的能力,是进行程序设计所必不可少的。 “4.4 排序算法设计〞。本节介绍了选择排序和拖入排序两种常见的排序算法。这两种排序算法是庞大的排序算法家族比较粗浅的,效率不高,但比较容易理解,因此在数据量不太多的场合,应用还是很广泛的。

算法与程序设计的教案

算法与程序设计的教案 算法与程序设计的教案 作为一位杰出的教职工,时常需要编写教案,编写教案有利于我们弄通教材内容,进而选择科学、恰当的教学方法。如何把教案做到重点突出呢?以下是小编为大家整理的算法与程序设计的教案,仅供参考,大家一起来看看吧。 一、学情分析 通过上学期《算法与编程》部分的学习,学生初步了解算法及其表示、比较熟悉流程图设计; 本学期课程为《算法与程序设计》,对算法的理解更加深入,要求能通过visual basic实现简单算法; 在本课之前,学生应了解了流程图的应用,熟悉在一组数中求极值算法,对于排序及冒泡排序,学生比较熟练。 对于本部分,学生可能会对选择排序算法的原理理解较为困难,需要教师的引导学习。学生应当在学习过程中认真听取教师对于算法的分析,在教师指导下能解释该算法的流程图,进而实现程序。 二、教学目标 知识性目标: 了解排序的概念、能在现实生活中列举出关于排序的实例 能对照冒泡排序,解释选择排序的优势,指出选择排序的策略,找出数字之间的逻辑联系 有迁移应用能力,能由此及彼,归纳排序中的数字规律,探索更有效率的排序算法 技能性目标: 具有模仿水平,在教师指导下可以表达出选择排序的思想,能对流程图作出解释 能独立完成流程图的绘制,对选择排序的各个环节比较熟练,并能在visual basic环境中规范地编写程序 情感、态度、价值观目标:

学生在学习过程中,通过亲身经历体验选择排序的实现过程,获得对此算法的感性认识 利用信息技术手段,开展交流合作,把自己对此算法的心得与他人交流,培养良好的信息素养,提升热爱科学的理念 三、重点难点 重点:对选择排序原理的理解,绘制流程图,数据交换,调试程序 难点:分析流程图 四、教学策略与手段 把握重点,先导入问题,复习排序定义,分析冒泡中数据交换次数多的问题,指出冒泡排序法效率不高,从而引出数据交换次数较少的选择排序算法 在教学过程中,可通过flash演示材料,比较直观地把抽象的问题简单化,由“流程图雏形绘制”-“逐步完善流程图”-“程序实现”-“调试”的过程,让学生熟练此算法与程序实现。 在教学中可灵活运用小组合作、分组讨论、小组间竞赛等手段进行教学,通过发散性思维的培养,增强学生对知识的探索能力。 五、课前准备 1.学生的学习准备:对流程图的绘制方法、vb语法作巩固,对选择排序算法作预习;学生分组:4人一组 2.教师的教学准备:准备充分的演示材料、相关数据、相关软件安装。 3.教学环境的设计与布置:计算机教室 六、教学过程 简要点拨排序的概念。 演示已经学习过的冒泡排序flash动画。 [小组讨论]在冒泡排序算法中,我们知道冒泡排序是依次把数组中相邻两个数据进行比较,通过交换数据,把较小的`数据逐次向上移动的算法。由于数据的移动是逐次进行的,数据交换的次数相当多。大家想想它的实质既然是将一堆数据中的最小数据移动到某个位置,有

算法与程序设计 教案

算法与程序设计教案 1-1节计算机解决问题的过程 一、教学目标 1、知识与技能 (1)让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。 (2)让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。 (3)让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的基本步骤,认识其在算法与程序设计中的作用。 2、方法与过程 (1)培养学生发现旧知识的规律、方法和步骤,并把它运用到新知识中去的能力。 (2)培养学生调试程序的能力。 (3)培养学生合作、讨论、观摩、交流和自主学习的能力。 3、情感态度和价值观 通过“韩信点兵”这个富有生动情节的实例和探究、讲授、观摩、交流等环节,让学生体验用计算机解决问题的基本过程。 二、重点难点 本节的重点用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。用计算机解决问题的过程中的分析问题、设计算法也是本节的难点。 三、教学环境 1、教材处理 教学内容选用中华人民共和国教育部制订的《普通高中技术课程标准》(2003年4月版)中信息技术部分的选修模块1“算法与程序设计”第一章的第一课“计算机解决问题的过程”。教材选用《广东省普通高中信息技术选修一:算法与程序设计》第三章第一节,建议“算法与程序设计”模块在高中一年级下学期或高中二年级开设。 根据2003年4月版《普通高中技术课程标准》的阐述,“算法与程序设计”是普通高中信息技术的选修模块之1,它的前导课程是信息技术的必修模块“信息技术基础”。学生在“信息技术基础”模块里已经学习了计算机的基本操作,掌握了启动程序、窗口操作和文字编辑等基础知识。学生可以利用上述的基础知识,用于本节课的启动Visual Basic程序设计环境,输入程序代码,运行程序等操作。本节课“计算机解决问题的过程”是“算法与程序设计”模块的第一节课,上好这节课是使学生能否学好“算法与程序设计”这一模块的关键。本节课的教学目的是让学生理解分析问题、设计算法、编写程序和调试程序等用计算机解决问题的基本过程,认识其在算法与程序设计中的地位和作用,它也是后续课程如模块化程序设计、各种算法设计等课程的基础。 让学生在人工解题中发现分析问题、设计算法等步骤,并把它应用到用计算机解决问题中去,这是构建主义中知识迁移的方法。本节课还采用了探究、讲授、观摩、交流、阅读材料等多种教学活动的有机结合的方法。 2、预备知识 本节课相联系的旧知识是计算机的基本操作中鼠标、键盘操作,启动、关闭程序,窗口、菜单操作和文字编辑等基础知识,还有解决数学问题的步骤等知识。 3、硬件要求 可以进行屏幕广播的多媒体电脑室。教师自行设计制作的课件。准备《计算机解决问题的过程》教学活动表。 4、所需软件 学生机要安装VB6.0或以上版本。 5、所需课时 2课时(100分钟)

教科版高中信息技术 选修一 《算法与程序设计》选修教案

第一课初识算法与程序设计 一、教学目标 1、知识与技能 (1)理解算法的概念,培养学生自我探索信息,高效获取信息的能力; (2)能初步利用算法解决简单的问题,培养学生的理论联系实际能力和动手操作能力。 2、情感、态度、价值观 学生在学习过程中,通过亲身经历体验获得对此算法的感性认识,培养学生自我获取信息、分析评价信息、、表达呈现信息的能力,进一步提高其信息素养。 二、教学重点难点 重点:算法概念的理解 难点:如何科学合理的选择和设计算法。 三、教学策略与手段 以趣味性问题设置情境,激发学生探索解决问题的兴趣,与学生进行互动探讨,通过Flash演示材料,比较直观地把抽象的问题简单化,使学生的思考逐步深入,从而总结出算法的概念,学会如何设计和选择算法,培养学生自主探究学习的能力。 四、教学过程(1课时) (一)我们来共同寻找下面一些生活中比较现实的问题的解决方法。 【问题一】天下真的有“不要钱的午餐”吗? 某一餐馆门口海报上写着“不要钱的午餐”,规则如下:在三个月内,来宾必须凑够五个人,五人每次来就餐必须按照不同的顺序坐,直到把所有可能

的顺序都坐一遍,以后来吃饭就可永远免费”。于是有人想,这太容易了,每人每次坐不同的位置,吃五次不就行了?于是他就叫上自己的朋友参加这项活动,可是,吃了十次之后,还没有吃上免费午餐,这是怎么回事呢? 学生们感觉非常有意思,很快以小组为单位进行热烈的讨论并得出了破解问题的步骤:①第一个座位5个人都有坐的机会②第二个座位只有4个人中的任一个有坐的机会(一个人不能同时坐两个座位)③第三个座位只有3个人中的任一个有坐的机会④第四个座位只有2个人中的任一个有坐的机会⑤第五个座位只有1个人有坐的机会⑥计算:5×4×3×2×1=120⑦得出结论:需要吃120次才有可能吃上免费午餐。 【问题二】有三个和尚和三个妖怪过河,只有一条能装下两个人的船,在河的任何一方或者船上,如果妖怪的人数大于和尚的人数,那么和尚就会有被吃掉的危险。你能不能找出一种安全的渡河方法呢?请写一写你的渡河方案。 学生:学生讨论回答。 〖展示步骤〗 ①两个妖怪先过河,一个妖怪回来; ②再两个妖怪过河,一个妖怪回来; ③两个和尚过河,一个妖怪和一个和尚回来; ④两个和尚过河,一个妖怪回来; ⑤两个妖怪过河,一个妖怪回来; ⑥两个妖怪过河。 【Flash动画展示】通过讨论和动画展示,我们可以知道,计算机解决问题和人解决问题一样需要有清晰的解题步骤。算法就是解决问题的程序或步骤。(二)【课件展示】算法的概念:

新课标高中信息技术《算法与程序设计思想》教案

新课标高中信息技术《算法与程序设计思想》精品教案【基本信息】 【课标要求】 (一)利用计算机解决问题的基本过程 (1)结合实例,经历分析问题、确定算法、编程求解等用计算机解决问题的基本过程,认识算法和程序设计在其中的地位和作用。 (2)经历用自然语言、流程图或伪代码等方法描述算法的过程。 (4)了解程序设计语言、编辑程序、编译程序、连接程序以及程序开发环境等基本知识。 【学情分析】 高一年级的学生已具备了一定的观察、思考、分析和解决问题能力,也已有了顺序结构、分支结构、循环结构等知识的储备。因此,对于如何将解决问题的思路画成流程图已有一定的基础,但可能还不很熟练,尤其对刚学过的循环结构,教师在课堂上要注意引导。 『此处说“已有了顺序结构、分支结构、循环结构等知识的储备”,应该是指在必修部分对“计算机解决实际问题的基本过程”已有所体验与了解,或是指已学习过数学中相关模块的知识,这是本案例教学得以实施的必不可少的前提条件。』 【教学目标】 1.知识与技能: 建立求一批数据中最大值的算法设计思想,并将算法的设计思想用流程图表示出来。 2.过程与方法: 利用现实生活中比较身高的活动,以及对武术比赛中“打擂台”流程的逐步梳理,让学生学会从此类生活实际中提炼出求最大值的思想方法,即算法思想。 培养学生分析问题、解决问题的能力,让学生学会在面对问题时能梳理出解决问题的清晰思路,进而设计出解决某个特定问题的有限步骤,从而理解计算机是如何解决、处理某种问题的。 『在过程上,通过现实生活中的实例来引导学生总结“求最大值”的算法思想。过程的实现关键在于实例引用是否贴切,是否有利于学生向抽象结论的构建。本案例的实例选择是符合这一要求的。在方法上,注重培养学生分析、解决问题的一般能力,再次体验与理解应用计算机解决问题的基本过程,为后面更一步的学习打下基础,积累信心。』 3.情感态度与价值观:

高中信息技术《算法与程序设计》

高中信息技术《算法与程序设计》 算法与程序设计是高中信息技术选修1中的一门课程,是计算机科学 领域中非常重要的一门基础课程。在这门课程中,学生将学习到一些基本 的算法和程序设计的知识和技能。本文将重点介绍该课程的内容和对学生 的意义。 首先,算法是计算机解决问题的方法和步骤的描述,是程序设计的基础。在算法与程序设计课程中,学生将学习到一些常用的算法,比如排序 算法、算法、图算法等。通过学习这些算法,学生可以更好地理解问题解 决的过程,更有效地设计程序。 其次,程序设计是将算法转化为可执行的程序的过程。在算法与程序 设计课程中,学生将学习到一些基本的程序设计技巧,比如控制结构、数 据结构、函数的使用等。通过这些技巧的学习,学生可以更好地组织和编 写程序,使程序更清晰、高效。 此外,算法与程序设计课程还教授一些编程语言的基本知识和技能。 学生将学习到一门具体的编程语言,比如C语言、Python等。通过学习 这门编程语言,学生可以更好地理解和运用课程中学到的算法和程序设计 技巧。 算法与程序设计课程对学生来说有着重要的意义。首先,学习算法和 程序设计可以培养学生的逻辑思维和问题解决能力。在解决实际问题时, 学生可以有条理地分析问题、设计算法、编写程序,从而更好地解决问题。 此外,学习算法和程序设计还可以培养学生的动手实践能力。在课程中,学生将进行大量的编程实践,通过不断地练习和实践,学生可以掌握 一些实用的程序设计技巧,并能够独立地思考和解决问题。

最后,学习算法和程序设计对学生今后的学习和工作都具有重要的意义。在计算机科学领域中,算法和程序设计是非常基础的知识和技能。无 论是学习其他计算机科学的课程,还是从事相关的工作,都需要掌握这些 基本的知识和技能。 综上所述,算法与程序设计是高中信息技术选修1中的一门重要课程。通过学习这门课程,学生可以掌握一些基本的算法和程序设计的知识和技能,培养自己的逻辑思维和问题解决能力,提高动手实践能力,为今后的 学习和工作打下坚实基础。

高中信息技术-算法与程序设计-选择结构教案-教科版

选择结构 [ [ 〔二〕程序设计语言初步 1.内容标准 〔1〕理解并掌握一种程序设计语言的基本知识,包括语句、数据类型、变量、常量、表达式、函数.会使用程序设计语言实现顺序、选择、循环三种控制结构. 〔2〕理解模块化程序设计的基本思想,初步掌握其基本方法. 〔3〕初步掌握调试、运行程序的方法. 〔4〕在使用某种面向对象程序设计语言解决问题的过程中,掌握面向对象程序设计的基本思想与方法,熟悉对象、属性、事件、事件驱动等概念并学会运用. 2.活动建议 〔1〕选择实例,根据解决问题的要求分析设计算法,恰当地使用三种控制结构编写源程序,调试并运行该程序,在过程中体验程序设计语言的逻辑特点. [教学分析] 算法与程序设计是普通高##息技术课程中选修模块之一,本模块旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题. "选择结构〞是教育科学出版的高级中学课程标准实验教科书《算法与程序设计》第二章第三节的内容,共分三课时,本课为第二课时.主要内容是用选择结构编写简单的程序解决具体问题.用选择结构编写简单的程序解决具体问题是在学生已经掌握了程序设计数据的表示与处理的基础上,理解了顺序结构的前题下提出的. 通过本课的学习,可以促进学生对问题解决方法和思想的理解与掌握,从而提升学生的问题解决能力,让学生在按照一定的流程解决问题的过程中,去体会和理解程序设计的思想,而且也为多分支选择结构的学习打下基础. [教学目标] 1.知识与技能: 〔1〕掌握分支选择结构实现条件判断控制. 〔2〕能够运用分支选择结构设计编制程序解决问题. 〔3〕培养学生的逻辑思维能力,促进学生对问题解决方法的理解. 2.过程与方法: 〔1〕通过教师讲解和演示,利用任务驱动,通过学生分组探究,协作学习,在完成一个个具体的任务的过程中了解常用的文件传输方法; 〔2〕以具体的任务为外驱力,在教师的引导下,通过学生个体的自主探究和相互间的协作学习,提高学生用算法解决问题的综合应用能力. 3.情感、态度和价值观: <1>通过完成实践活动,激发学生对信息技术学习与应用的浓厚兴趣,培养学生正确选择、运用信息技术收集、处理、交流、发布信息的能力. <2>通过小组协同合作交流学习,培养学生互相帮助、团结协作的良好品质;增强学生协作学习、与人合作交流的意识;形成积极主动地学习和使用信息技术、参与信息活动的态度. [重点难点] 教学重点:掌握分支选择结构的格式

选修1算法与程序设计《21枚举算法》优质课教案

《枚举算法》教学设计 一、教材分析 《浙江省普通高中教学指导意见》指出“算法与程序设计”信息技术学科的核心内容之一,通过该内容的学习,培养学生的算法思维能力,并初步学会编制程序实现算法以解决问题。而枚举算法是在掌握VB 界面设计、VB基本语句及VB编程方法的基础上进行的算法的综合运用与程序实现的一个方面。枚举算法来源于生活,生活中的很多问题都是用枚举算法解决的。枚举算法注重学生逻辑思维能力的训练,同时它也充分体现了用计算机解决实际问题的思想,是设计算法的一种重要方法。 二、教学目标 1、知识与技能 ①、根据具体情况确定问题解决的方法 ②、了解枚举算法的概念 ③、发现枚举算法的解决问题的原理,归纳枚举算法的注意点 ④、模仿例题,编写程序求解简单问题 2、过程与方法 ①、通过实例分析,发现枚举算法的注意点 ②、通过观看、解析源程序,发现枚举算法的解决问题的原理 ③、通过模仿、创新,内化算法思想 3、情感与价值 ①、感受计算机在问题解决中的作用 ②、形成严谨的思维习惯 ③、增强合作与交流意识 三、教学重点、难点 教学重点:理解枚举算法的思想 教学难点:根据流程图写出对应的语句 四、教学方法 讲授法,辅以讨论法与体验 五、教学准备 计算机机房、多媒体课件 六、教学过程 ㈠、导入 投影展示问题一:《找钥匙》。小明是一个动漫迷,昨天他约了几个动漫社同学一起到会议室里举行一个联欢会,可是粗心的小明去学生处拿了一串钥匙回来准备开门时,却忘记了到底哪一把才是会议室的钥匙。假设这串钥匙一共有10把。

提问:怎样才能找到正确的钥匙来开门? 师生共同分析——找钥匙的过程。引出枚举法。 ㈡、新课过程 1、枚举算法的概念 枚举算法就是按照问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,根据问题的条件对各解进行逐个检验,从中挑选出符合条件的解,舍弃不符合条件的解。 2、数7游戏 在联欢会上,小明提议大家来玩数7的游戏。 游戏规则:从1开始数,每个人数一个数,凡是遇到7的倍数就要喊“过”,这样一直数到100为止。 任务:帮小明找出1~100所有要喊“过”的数? ①、问题分析 用变量 i 表示要列举的自然数。 列举范围:1~100 检验条件:i 能否被7整除。 ②、流程图 ③、程序结构分析 ④、程序代码 3、学生课堂实践(作业) “数7游戏”Vb程序的制作 教师演示学生作业。 4、拓展1、找出两位正整数中要喊“过”的数。 5、拓展2、小明提议增加难度,逢末位为“7”的数字也要喊“过”,请找出两位正整数中要喊“过”的数。 备注:在任务单中添加一个分层题,供提前完成上述任务的学生操作实践。 尝试将上述程序改为Do While语句来实现,并调试程序,看看能否得到相同的结果? 6、枚举算法的设计步骤 ①、确定列举范围一一列举 ②、明确检验条件逐一验证 ③、分析流程图、确定程序结构 注意:不遗漏不重复 7、生活中的枚举算法实例

高中信息技术 第二章第一节程序的顺序结构教学设计 教科版选修1

程序的顺序结构 一、基本说明 1模块:算法与程序设计(选修1) 2年级:高中二年级 3所用教材版本:广东教育出版社 4所属的章节:第二章第二节 5学时数: 40分钟(机房授课) 二、教学设计 1、教学目标:巩固程序设计的一般过程,特别是算法设计一环;初步掌握输入输出语句及赋值语句的应用;初次独立完成一个或两个简单程序设计的全过程。 2、内容分析:本节课内容简单,但是却是学好其它结构的基础,这节课不仅仅是让学生们掌握输入输出语句、赋值语句的使用,而且通过对流程图的观察,得出顺序结构的特点,更重要的是让学生们在解决实际问题的过程中,深刻体会到算法在整个程序设计过程中所占的重要位置。 3、学情分析:高二学生,经过一年的学习,有一定的操作能力,而且在高一下学期,在数学学习过程中,接触到程序设计的理论知识,有一定的理论基础,但是,与现行教材的VB程序设计有一定的区别,而且,学生的基础不是很好,而这课程又偏向理论,学生学习兴趣不是很高。 4、设计思路:本节课,首先让学生尽快地学会使用输入输出语句和赋值语句,这个只要让学生做几个小练习就可以了,然后让学生们做一个求长方形面积和周长的程序设计,重点在于学生把流程图画出来,然后用所学的语句做一个完整的程序,并上机调试运行,检查结果是否有误。考虑到学生输入程序速度不同,学生掌握本节课所学内容的深度不同,布置两个不同的作业,基础作业就是求圆的面积和周长,扩展作业就是两变量的值互换。 三、教学过程

四、教学反思

1、本节课是重点偏向理论知识,学生学习兴趣并不是很高,而且本校学生无论从理论上,还是动手能力上,都不令人满意,这是现实,所以本节课设计的最大亮点就是想方设法地降低学生学习的难度,减少学生学习的困难。比如说,学生输入程序慢,我采用的三个任务的实际输入语句都不超过七条,而且每条输入的内容也是比较少的。从上课的情况看,绝大部分学生还是完成了任务1和任务2,少部分学生完成了任务3,从一点上讲,教学是很成功的。 2、在具体教学过程中,我设置了三个讨论环节,意图在于调动大家的积极性,实现互动性教学,从实际上课情况上看,有一定的效果,但是容易跑题,这一点,我以后上课时多加注意。 3、在教学方法上,我采用了任务驱动教学和讲授教学相结合的方式,因为有些东西你要让学生自己领悟,确实有一定的难度,而且上课时间又不够,在关键的地方讲一讲还是有必要的,比如说三种基本语句的语法格式及顺序结构的特点。从学生反映的情况来看,学生还是基本上掌握了这些要点,这充分说明了讲授教学方法还是有一定的使用场合。 4、在任务的选取上,我还是以教材上的例子或作业为例,灵活性不强,以后有待加强。 内容总结 (1)程序的顺序结构 一、基本说明 1模块:算法与程序设计(选修1) 2年级:高中二年级 3所用教材版本:广东教育出版社

高中信息技术(选修1)《算法与程序设计》

高中信息技术(选修1)——《算法与程序设计》 多媒体应用程序设计教学设计 广东肇庆中学麦丽华2005年11月 【教学目标】 ●知识与技能: 1、认识扩展控件的主要属性和方法。 2、掌握通用对话框控件的主要属性和方法。 3、掌握菜单编辑器的使用。 ●过程与方法: 1、掌握利用扩展控件来设计多媒体程序的方法。 2、掌握利用面向对象编程的原理来设计和制作应用程序。 ●情感态度价值观: 能产生学习多媒体程序设计的相关技术的愿望。 【教学重点】 1、利用VB的多媒体控件设计VCD多媒体播放器。 2、通用对话框控件的常用属性和方法。 3、菜单编辑器。 【教学难点】 1、通用对话框控件的属性和方法、菜单编辑器的使用。 2、利用面向对象编程的原理来设计和制作应用程序。 【教学方法】 任务驱动和边讲边练相结合。 【教学环境】 多媒体计算机网络教室。 【教材分析】 本节是广东教育出版社的普通高中课程标准实验教科书之信息技术(选修1)――《算法与程序设计》模块中的第六章第一节多媒体应用程序设计。主要内

容是让学生用VB设计制作一个VCD多媒体播放器。过程是采用任务驱动的形式,引入一个多媒体播放器程序的设计需求,提出了任务的具体要求,让学生通过观摩回答问题,进行任务分析,划分程序的功能模块,学习两种新的控件知识,进而进行设计制作,经过创建图形用户界面、设置控件属性、编写程序代码、运行和调试程序的过程,最后完成程序设计。 通过本节的学习以进一步深化学生对设计实用程序的理解,从而进一步掌握程序设计的模块划分方法,以及利用可视化编程工具提供的控件对象进行编程,进一步熟悉对象、属性和方法的运用。而且由于多媒体技术具有将多种媒体信息集成在一起的特点,以及它具有强大的表现力,具有一定的娱乐性,相信本节内容在学生学习时一定会很受欢迎。 【学生分析】 学生是高二级的同学,是广东省实施新课程标准的第一届学生,因此,他们基本掌握在新课标理念下的学习方法,和已适应教师的教学方法。高二年级是学习信息技术选修模块“算法与程序设计”,经过大约一个学期的学习,他们已基本熟悉可视化编程工具――VB的使用,以及对面向对象的编程也有一定的理解。因此,他们学习本节内容“多媒体应用程序设计”是可以的。但是,本节是属于综合实践活动课,内容多、难度较大,对学生要求较高。 【教学过程】

《算法与程序设计》

算法的描述之用自然语言和流程图描述算法 教材分析 本节是高中信息技术选修课?算法与程序设计?〔教科版〕第一章的第二节“算法描述与设计〞中流程图描述方式局部。主要是让学生在已有的数学算法的根底上,对算法作进一步的总结和提升,强调让学生了解自然语言描述方式,学会用流程图描述算法。 学生分析 髙中学生已经到达了较髙的知识点认知水平,而在数学课中他们已经初步接触到算法,对算法有了一定了解,这为本课学习奠定了根底。 教学目标 1.知识与技能 进一步理解什么是算法,知道算法的描述方式 2.过程与方法 能够对设计的算法作简单的评价。 学会用流程图来描述算法。 3.情感、态度及价值观 教师注意结合实例给学生讲解,帮助学生建立并保持其学习程序设计的兴趣和信心。 教学重、难点

1•重点:算法的描述方法之一:流程图描述方式 2.难点:结合实例分析算法的描述方法。 教学策略 1•教学思路 作品欣赏一一复习算法概念〔解决问题的方法和步骤〕一一算法的描述方法〔结合实例:韩信点兵问题和标准体重小测试〕。 2.媒体选择 1〕多媒体教室 2〕教师自制ppt课件〔主要用来展示板书内容〕 3〕教师用VB软件自制的小程序等。 教学过程 一、案例欣赏、引入新课 学生活动:欣赏VB软件制作的小作品:标准体重小测试。 教学总结:刚刚同学们看到的是利用VB软件制作的小程序, 同学们是不是想看看自己体重是否标准,是不是也想动手制作自己喜欢的小程序呢? 设计意图:由贴近生活小程序,激发学生学习兴趣。 二、结合实例、讲解新课 〔一〕算法是“灵魂〞 教师活动:从今天开始我们一起学习如何制作自己喜欢的小程

序。那,在制作作品之前,我们要先了解程序设计的相关知识: 1〕通过上节课的学习,我们知道了计算机解决问题的过程和算法的概念。 那么用计算机解决问题的过程是什么流程呢? 学生活动:请个别答复开始f分析问题f设计算法f编写程序f 运行验证一问题解决 算法的概念:解决问题的方法和步骤,是解决问题的核心。 学生活动:集体答复出算法的概念 2〕今天我们的主要任务是由小程序分析问题,设计流程图。 设计意图:复习旧知识,引入新课。 〔二〕算法的描述方式 1、算法的描述方式:用自然语言描述算法 教师介绍: 1〕自然语言是指人们日常生活中的语言,如:汉语、英语、法语等。 2〕自然语言描述算法符合我们的表达习惯,并且容易理解。 3〕案例1:韩信点兵问题 “今有数不知其数,三三数之余二,五五数之余三、七七数之余二,问物几何?〞 换言之:即是求同时被3整除余2,被5整除余3,被7整除余2

相关文档
最新文档