高中信息技术 算法与程序设计教案 粤教版选修1概要[5篇模版]

时间:2019-05-13 21:24:47下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《高中信息技术 算法与程序设计教案 粤教版选修1概要》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《高中信息技术 算法与程序设计教案 粤教版选修1概要》。

第一篇:高中信息技术 算法与程序设计教案 粤教版选修1概要

2.3 选择结构第一课时教学设计 【教学内容】

(1 教材模块:《算法与程序设计》(2 年级:高中一年级

(3 所用教材出版社:上海科技教育出版社(4 所属的章节: 第二章第三节(5 课时数:2课时 【内容分析】

选择结构是VB程序设计三个基本结构之一。是学生学习VB程序入门,掌握程序语言的重要内容。

【教学目标】

知识

1、掌握条件逻辑表达式的构成

2、掌握简单IF语句的格式及其含义

技能

1、通过自主探究学习、编写程序,让学生掌握简单if语句 的语法格式和使用方法。

情感

1、形成良好的程序程序书写格式。

2、学会自主学习和养成独立解决问题的能力。【学生分析】

县级城市学生大部分来自农村,80%以上的学生在学校没有受到正规的计算机入门教育,大部分学生对编程一无所知,还有一部分学生英语基础特差,但通过一个学期的信息技术必修课学习后对电脑简单操作有一定认识,因为选择结构是程序设计基础中的一节重要内容,所以本节课分二个课时进行教学,第一课时主要讲IF语句的简单结构和标准结构,第二课时讲多重分支与多重选择语句。

【教学重点和难点】

重点:简单选择结构和标准选择结构的语法和逻辑运算。难点:选择结构算法的实现。【教学策略设计】 【教学过程设计】 1.教学过程

教学环节 教师活动 学生活动 设计意图 导入 新课 5分钟

活动1:给出特定关键词“小学生、公共汽车”,要求学生用“如果…… 就……”句型造句;活动2:要求学生用以上关键词,使 用“如果……就……否则就……”句型造 句;活动3:由于现在公共汽车都是无人

售票,公交公司想要设计一款自动检票的 设备,该设备能够自动测出身高并确定是 否需要买票。假定机器自动测出乘客的身 高为H,请大家想想计算机该怎么判断乘 客需要买什么票?用你自己的语言说出 判断过程。并试着翻译成英语。学生思考并积 极回答 大部分学生会 造句:如果小 学生身高小于 1.2米,就不用 买票.如果H<1.2米 就不用买票, 否则就要买 票.通过使用学生熟 悉的常识,引起学生积

极思考,激发学生学习兴趣,想像力和继续探 讨的热情和期待。新课 教学 20分钟

1.师生一起画出活动3的流程图 2.探究学习:写出该程序

学生自己看书学习IF语句的语法 并试着写出该程序

3.展示部分学生作品并小结IF语句 的简单格式。(有的同学可能用简单格式 有的可能用标准格式,这里一起讲评 4.完善作品

(提醒学生程序的书写格式 5.小结IF语句语法格式

1、IF 条件 THAN 语句块 END IF

2、IF 条件 THAN 语句块1

ELSE 语句块2 END IF 学生一起画 学生自学教材 并试着写出程 序

找两位做得最 好的同学上台 讲解他的程序 并介绍选择实 现的方法 未做完的或程 序有错误的同 学进一步完善 作品,已经完 成的同学作为 小老师指导其 他同学。

请两位同学上 台小结IF语句 的格式。在学生使用“如 果……就……否则 就……”造句,并翻译 成英语的基础上学生 很快会形成“IF…… THEN……ELSE……”概 念,通过自己学习教材 的IF语句语法格式从 而将模糊的想法转化 成严格的程序语句定 义,再通过程序实践、老师点评、小结和自己 改正、完善作品从而内 化为自己的知识。

课堂 任务

1、书64页课本例题填空。完成

全部学生必须

通过二个任务强化IF语句的练习,并 练习12分钟

任务

2、会考后老师要把会考成绩转 化成是否合格,凡是60分及以上的就“合 格”,低于60分的就“不合格”,请你帮 老师写一个电脑自动判断的程序。任务

3、在任务2中如果还想增加一 档超过85分的给“优秀”评价,该怎么 做?如果再分细一点,比如40分以下, 40—59,60—70,71—80,81—90,91以 上,又该怎么做呢? 全体学生要求 完成

在完成前面二 个任务的基础 上思考并试一 试

通过扩展任务引起同 学们的思考,并引出下

节课要讲的内容。

学生 作品 展示 5分钟 在课堂练习开始后几分钟就会有学 生上交作品,老师可以开始对学生作品进 行评价。力争评价所有作品,学生看到老 师在点评学生作品会激发他们做好作业 的激情。

展示部分有特色、有代表性的学生作 品。

在评价阶段如 果有做得好的 学生提醒其他 同学向其学习。

学生自己展示 并解说,老师 适当点评 通过投影不断展 示已经交作业的同学 作品,激发其他同学的

热情。学生把上台展示 自己的作品当成一种 荣耀每节课选择尽量 多的同学上台展示能 提高学生的学习热情。

课堂 总结 3分钟 请一位学生小结本节课的学习内容 老师提醒学生注意IF语句的书写格式和 逻辑表达式的构成。同时提示要解决任务 3有二种方式。学生总结IF语 句的语法和使 用方法

课后作业看书上多重选择结构并试着完成任务3。提出问题为下节 课上课做准备。【教学反思】

1、通过分解本节课的教学内容大部分学生可以通过自主学习掌握教学内容。

2、基础好的学生能够很快完成任务甚至是拓展任务,他们完成任务后老师要求他们去辅导其他遇到问题的同学有的学生能高兴接受有的学生不太愿意,怎么处理老师是一个考验。

第二篇:高中信息技术 认识算法教案 粤教版选修1

认识算法

教学目标:

知识与技能:

1、进一步理解什么算法,知道算法的多样性。

2、能够对设计的算法做简单的评价。

3、学会用自然语言、流程图描述算法。

过程与方法:

了解信息加工的机在机制。

情感态度与价值观:

通过有效地加工所获取的信息,做好新型人才。

教学要点:

1、体验程序设计的独特魅力,了解编程加工信息的内在机制。

2、了解并尝试编程的主要过程。

教学组织:

我们要介绍的就是编写程序的主要过程,了解这个过程后,我们尝试自己动手编程一个小程序。

教学安排:1课时。

教学过程:

一、导入新课

复习上节课,引导学生认识信息加工的重要性,它能帮助解决我们生活中那些事情。

二、教学内容

1、打开光盘中的实例,使学生初步认识到自动化的信息加工也来之我们的生活。

2、讲述算法

所谓的算法是指为解决一个问题而采取的方法和步骤。

算法的特征:确定性、有效性、有穷性、一个或多个输出

排序(Sorting)就是将记录按关键字递增(递减)的次序排列起来,形成新的有序序列。

排序方法:插入排序、选择排序、交换(冒泡)排序、归并排序和分配排序

冒泡排序(Bubble sort)是基于交换排序的一种算法。它是依次两两比较待排序元素;若为逆序(递增或递减)则进行交换,将待排序元素从左至右比较一遍称为一趟“冒泡”。每趟冒泡都将待排序列中的最大关键字交换到最后(或最前)位置。直到全部元素有序为止。

插入排序法: 每次处理就是将无序数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。

归并(Merge)排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列。

将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并。

选择排序法:每次从待排序的记录中选出关键字最小(或最大)的记录,顺序放在已有序的记录序列的最后(或最前)面,直到全部数列有序。

3、分析VB程序的一般步骤

(1)建立用户界面

(2)设置各个对象的属性

(3)编写事件驱动程序

(4)存盘和运行及调试

4、参考网站

编程沙龙:http://www.xiexiebang.com/app/aprong VB编程乐园:http://www.xiexiebang.com

5、小结

第三篇:《算法与程序设计》选修教案

第一课

初识算法与程序设计

一、教学目标

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

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

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

二、教学重点难点 重点:算法概念的理解 难点:如何科学合理的选择和设计算法。

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

四、教学过程(1课时)

(一)我们来共同寻找下面一些生活中比较现实的问题的解决方法。【问题一】天下真的有“不要钱的午餐”吗? 某一餐馆门口海报上写着“不要钱的午餐”,规则如下:在三个月内,来宾必须凑够五个人,五人每次来就餐必须按照不同的顺序坐,直到把所有可能的顺序都坐一遍,以后来吃饭就可永远免费”。于是有人想,这太容易了,每人每次坐不同的位置,吃五次不就行了?于是他就叫上自己的朋友参加这项活动,可是,吃了十次之后,还没有吃上免费午餐,这是怎么回事呢? 学生们感觉非常有意思,很快以小组为单位进行热烈的讨论并得出了破解问题的步骤:①第一个座位5个人都有坐的机会②第二个座位只有4个人中的任一个有坐的机会(一个人不能同时坐两个座位)③第三个座位只有3个人中的任一个有坐的机会④第四个座位只有2个人中的任一个有坐的机会⑤第五个座位只有1个人有坐的机会⑥计算:5×4×3×2×1=120⑦得出结论:需要吃120次才有可能吃上免费午餐。

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

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

学生观看的电视剧《汉刘邦》片断,内容大致如下: “韩信是我国西汉初著名的军事家,刘邦得天下,军事上全依靠他。韩信点兵,多多益善,不仅如此,还能经常以少胜多,以弱胜强。在与楚军决战时韩信指挥诸侯联军,在垓下十面埋伏,击败楚军,楚霸王项羽因此自杀。” 片断结束时屏幕出现“韩信点兵”问题:“相传汉高祖刘邦问大将军韩信统御兵士多少,韩信答说,每3人一列余1人、5人一列余2人、7人一列余4人、13人一列余6人„„。刘邦茫然而不知其数。你呢?”

(二)问题 教师:“下面我们先助刘邦解决一个简单的问题。” “韩信点兵”问题1:求整除3余

1、整除5余

2、整除7余4的最小自然数。

(三)探究 把全班分成16个学习小组,每个小组的同学一起探究、讨论问题。利用已学过的数学知识找出题目已知什么求什么、明确已知和未知之间的关系和写出求解问题的解题步骤。并填写《计算机解决问题的过程》教学活动表中的“探究问题记录表”。如下:

探究问题记录表

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

分析问题(找出已知和未知、列出写出解题步骤 已知和未知之间的关系)

1、令X为1。

2、如果X整除3余1,X整除5余2,设所求的数为X,则X应满足: X整除7余4,这就是题目要求的数,X整除3余1 则记下这个X。X整除5余2

3、令X为X+1(为算下一个作准备)。X整除7余4

4、如果算出,则结束;否则跳转2。

5、写出答案。教师解释第3步“另X为X+1”并指出它与数学中的区别,并从上面的解题步骤中总结出穷举的算法。教师:“刚才有些同学把题目解出来了,答案是67,韩信作为大将军,统率士兵当然不止67人,下面我们来解决一个数据量稍大的问题。” 展示题目: “韩信点兵”问题2:求整除3余

1、整除5余

2、整除7余

4、整除13余

6、整除17余8的最小自然数。学生分析上述问题并写出算法,不用计算。学生有了第1题的经验,很快会写出和第一题类似的算法。如下:

分析问题(找出已知和未知、列出写出解题步骤 已知和未知之间的关系)设所求的数为X,则X应满足:

1、令X为1。X整除3余1

2、如果X整除3余1,X整除5余2

X整除5余2,X整除7余4 X整除7余4,5

X整除13余6 X整除13余6,X整除17余8 X整除17余8,则记下这个X。

3、令X为X+1。

4、如果算出,则结束;否则跳转2。

5、写出答案。教师:“上面的结果超过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 教师:“程序编好以后,通过键盘输入计算机,并运行程序查看结果这个过程叫调试程序。” 6

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

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

求解问题的方式 相同点 不同点 人工求解问题 用计算机求解问题 教师提问2~3个小组的讨论结果,并引导出大致如下的形式结果: 求解问题的方式 相同点 不同点 对题目进行解答、运算速度人工求解问题 慢、不需要计算机等 分析问题、设计算法、得出结果、验算结果等 编写程序、调试程序、运算用计算机求解问题 速度快等 7

第三课 算法与算法的描述

一、教学目标

1、知识与技能(1)了解算法的定义及其表达方法;(2)认知流程图的六种基本符号;(3)理解计算机解决问题的一般过程。

2、方法与过程(1)理解用不同的表达方法描述算法的优缺点;(2)掌握用流程图描述简单的算法。

3、情感态度和价值观 以生活中的实例引入算法,激发学生的学习兴趣,培养学生的主动探究能力。

二、重点难点

(一)教学重点

1、算法的定义;

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

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

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

(二)教学难点

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

6、用流程图描述算法。

三、教学过程(2课时)教学内容 预期目标 新课内容:

一、对算法的初步了解 1.一个简单的物理问题:求物体在恒力作用下的加速度。根据在物理课中学过的知识,要解决这个问题有多种方法: 方法一: a)测量出物体的质量m、拉力F和滑动摩擦力f b)将测量所得的数据输入计算机 c)根据牛顿第二定律F-f=m*a,计算出加速度a

d)输出所得的结果 方法二: a)测量出物体从静止开始移动的距离s、时间t b)将测量所得的数据输入计算机 引入物理学中的例子,激发 c)利用公式:s=a*t*t/2计算出加速度a 学生的学习兴趣,有助于学 d)输出所得的结果 生理解算法的概念 2.算法的定义 这种为解决某一问题而设计的确定的有限的步骤称为算法。

二、算法的描述 要把解决问题的步骤表达出来,有多种方法可以表达算法。引导出算法的概念

1.用自然语言表达 用自然语言表达算法,就是把算法的各个步骤,依次用人们熟悉介绍三种算法的表达方式,的自然语言表示出来。并对它们进行比较,分析优优点:容易理解 缺点。缺点:书写较烦、不确定性、对复杂的问题难以表达准确、不能被计算机识别和执行

给出流程图的基本符号,2.用图形符号表达 对其功能和使用情况加以用图形符号表达算法必须要有一组规定统一、含义确定的专用符说明,以便今后在具体运用号。中的正确使用。常用的“流程图”所用的基本符号 图形符号 符号名称 说明 流线 起始、终表示算法的开起始框:一流出线 止框 始或结束 终止框:一流入线 输入、输框中标明输只有一流入线和一出框 入、输出的内流出线

容 处理框 框中标明进行只有一流入线和一

什么处理 流出线 判定框 框中标明判定一流入线两流出线 条件并在框外(T和F

标明判定后的)但同时只能一流

两种结果的流出线起作用

向 流线 表示从某一框 给出流程图的作法,通过详到另一框的流细的解释说明使学生初步向 掌握流程图的使用和基本 连接圈 表示算法流向一条流线 画法。出口或入口连 接点 优点:直观、形象 缺点:不能被计算机识别和执行 例6-1-1:“物体在恒力作用下的加速度”的算法用下图表达。

开始

M=m F1=F F2=f a=(F1-F2)/M 输出a

结束 3.用程序实现算法 用计算机能理解和执行的程序设计语言把算法表示出来,然后把了解计算机解决问题的一程序输入到计算机并执行,计算机才能按照预定的算法去解决问般过程,为今后用编程解决 10

题。实际问题打下基础。不同类型的计算机能够识别的指令和语言不尽相同,即使对同一 种计算机语言,不同类型的计算机对该语言的解释程序也有差异。因此,用程序表示算法时,必须按照程序设计语言适用某类计算 机的具体规定来进行。例:用Pascal语言表示“从键盘输入一组数据并求该组数据的平均值”的程序如下:

Program ex_aver

Var I:integer;x,av:real;

Begin

Av:=0;I:=0;

Do while not eof()Begin

Readln(x);av:=av+x;

I:=I+1;

End

av:=av/I;Writenln(“The average value is :”,av);End

三、用计算机解决问题的一般过程 使用计算机解决一个问题,一般包括四个过程 1.需求分析 “需求分析”是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。“需求分析”就是确定要计算机“做什么”。2.设计算法 弄清楚要计算机“做什么”后,就要设计计算法,明确要计算机“怎么做” 11

解决一个问题,可能有多种算法。例如,数学题常常有“一题多解”。这就是说,解决一个问题的算法可能不止一种。这是,应该通过分析、比较、挑选一种最优的算法。3.编写程序 计算机只能接受并执行计算机程序设计语言编写的程序。当我们为解决一个问题确定了算法后,还必须将该算法用计算机程序设计语言编写程序。这个过程成为“编码”或“编程”。4.上机调试与维护 编写完成的程序,不一定完全符合实际问题的要求,还必须在计算机上运行这个程序,排除程序中可能出现的错误,才能得到结果。这个过程称为“上机调试”。即使是经过调试的程序,在使用一段时间后,仍然会被发现错误或不足之处。这就需要对程序做进一步的修改,使之更加完善。这个过程称为“维护”。在实际解决问题时,上述四个步骤可能会根据不同的问题有所侧重。

第四课

程序与程序设计语言

一、教学目标

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

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

3、情感态度与价值观 让学生进一步领会算法和程序设计在解决问题中的地位,体会编写出程序的魅力,从而培养学生学习编程的兴趣。

二、重点难点(1)重点:了解代码所包含的算法思想;(2)难点:计算机是如何编辑程序、编译程序和连接程序的。

三、教学过程(2课时)正课讲解

(一)尝试用VB编写程序

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

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

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

⑵单击工具箱“CommandButton”的按钮,在Form1窗体中拖出一个“Command1”按钮。Command1是命令按钮,它有6个属性、2个事件和4个方法。属性

Caption Default 标题

决定窗体的默认命令按钮

Style Enabled 控件的外观

决定对象是否响应用户生成事件

Visible Picture 决定对象是否可见

显示的图形 13

事件 方法 Click Drag Refresh 单击 拖动 刷新 Move KeyPress SetFocus 移动 字符键被单设置焦点,将当前焦击 点强制设置到文本框对象上

⑶选中此按钮,从属性窗口中将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,看看它的值有什么变化,为什么会这样变?

(二)算法、程序设计与程序设计语言之间的关系 ⑴算法 提出问题:什么是算法?算法有哪些特征? ⑵程序设计——寻求解决问题的方法,并将其实现步骤写成计算机可执行的程序的过程。

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

算法是程序设计的前提,它包含方法和步骤; 程序是实现算法中的思想的过程; 程序设计语言把算法转化为计算机认识的语言。14

(三)认识程序设计语言

1、发展过程 机器语言:由一串“0”和“1”构成二进制代码。汇编语言:是一种符号化(英文助记符)的机器语言。高级语言:如Basic、C/C++、Fortran、Pascal、Cobol、Java等。

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

编译型语言

解释型语言

编写的源程序需要用编译程序先翻译成机器语言的源程序输入计算机后,运行源程序,相应的解释程序目标程序,然后再由连接装配程序进行连接装配,生会逐条分析源程序中的语句,每解释一句由计算机执成可执行程序,这样才能被计算机执行。行一句。C/C++、VB、Pascal、Cobol Qbasic、Lisp

3、编辑程序、编译程序和连接程序 ⑴编辑程序 包含内容:一是将源程序逐个字符输入到计算机内存,二是修改源程序,三将修改好的源程序保存在磁盘文件中。⑵编译程序:将已编辑好的源程序(已存储在磁盘文件中)翻译成二进制的目标代码。二进制代码在UNIX下后缀为“.o”的文件,在DOS下是后缀为“.obj”文件。⑶连接:将各模块的二进制目标代码与系统标准模块经连接处理后,得到具有有绝对地址的可执行文件,它是计算机直接执行的文件。在UNIX下它以“.out”为后缀,在MS-DOS以下“.exe”为后缀。

执行过程: 15

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

一、教学目标

1、知识与技能 掌握VB定义的常用的基本数据类型,常量与变量的定义方法,运算符、函数和表达式的描述。熟悉VB程序设计语言的开发环境,能调试简单的VB程序。

2、方法与过程

本节涉及到基础知识较多,所以要一个一个问题解决,从一个简单的求圆的面积的程序入手,从中分析VB程序一般包括的四部分,基本数据类型、常量与变量,运算符、函数和表达式,而且结合练习来加强对这些新知识的巩固。通过介绍VB程序的开发环境中的菜单、常用工具和常用窗口等,再通过上机操作运行一个程序,让学生更容易上手。

3、情感态度和价值观 这一节是学习VB程序的重要的入门课,授课时要注意结合学生的思路,逐个问题解决,不可一蹴而就。

二、重点难点

1、教学重点(1)VB常用的的基本数据类型,常量与变量,运算符和表达式(2)VB程序的开发环境

2、教学难点 把本节的内容加以运用

三、教学过程(3课时)导入: 以下是一个“求半径为r的圆的面积”的程序,请你注意观察程序的组成结构及其功能,并思考如下的问题:(1)程序有多少行,每一行的作用是什么?(2)如果按语句的作用区分,这个程序包含几个部分?

Private sub command1_click()

‘定义名为command1_click()的事件过程 Const pi as single=3.14 ‘说明程序中pi是常量∏ Dim r as single,s as single

‘定义半径r和面积s为单精度实型 r=inputbox(“r=”,”请输入半径”)

‘输入r的值

s=pi*r*r ‘把表达式pi*r*r的值赋给s print “圆的面积s=”;s ‘把s的值输出到当前的窗体上 16

End sub ‘过程结束 考察上述程序,我们容易看到:程序共有代码7行,每一行都是VB的一个语句,VB的程序就是由这样的一组语句组成。每一个语句都是按照一定的规则书写的。总结上述分析,我们可以得到VB程序的一般包括如下部分:(1)数据类型说明部分(2)数据的输入部分(3)数据的处理部分(4)数据的输出部分

一、基本数据类型 描述客观事物的数、字符以及所有能输入到计算机中,并被计算机程序加工处理的集合称为数据。数据既是计算机程序处理的对象,也是运算产生的结果。为了更好地处理各种数据,VB定义了多种数据的类型。基本数据类型是系统预先定义的数据类型,表2-1中列出了VB定义的常用的基本数据类型。例如在上述的程序中,既有单精度实型数的数据(如3.14等),也有字符类型的数据,如“输入半 17

径”、“圆的面积S=”。

二、常量与变量(1)常量 常量是指在程序运行过程中始终保持不变的常量、字符串等。例如在上述的程序中,3.14、“r=”、“输入半径”等都是常量。在程序设计中,以于一些经常使用的常量,可以用常量说明语句来定义。这样可以提高程序的可读性和可维护性。常量说明语句的格式是: Const 常量名 As 类型 = 表达式 在上述程序中,第2行就是一个常量说明语句,说明程序中需要使用的常量。(2)变量 在程序处理数据时,对于输入的数据、参加运算的数据、运行结果等临时数据,通常把它们暂时存储在计算机的内存中。变量就是命名的内存单元位置。在VB中,变量名必须是由英文字母开头,后面则可以由字母、数字或其它符号组成;变量的名称最好与它所表示的内容意义相同的英文单词来确定。(3)变量说明 使用变量前,一般应先说明变量名及其类型,以使系统为其分配存储单元,变量说明语句格式如下:

Dim 变量

As

类型 如Dim r as single,定义半径r为单精度实型

三、运算符、函数和表达式

(1)运算符 运算符是对数据进行加工的过程。描述各种不同运算的符号称为运算符,参与运算的数据称为操作数。在VB中,常用的运算符有算术运算符、字符串运算符和逻辑运算符等。①算术运算符有: +14 Age = Age + 1 Tree = Tree + Age Print “到”;Age;Loop Until Tree >= 100

“岁时种到”;Tree;“棵树!” End Sub 2.通过师生共同分析“陈婷植树”问题的程序,3.学生对老师所提问题展开分析问题、35

归纳总结VB语言的DO循环语句的格式、功能、设计算法、编写程序、调试程序等用计执行过程,以及书写的注意事项,归纳总结VB算机解决问题的探究活动。语言的DO循环特点。3.老师提出思考题:已知s=1×3×5×…×N,找4.学生在教师的指导下,阅读、分析、出一个最大整数N,使得S<50000。要求学生展归纳,完成实践任务。开分析问题、设计算法、编写程序、调试程序等

5、要求学生上机练习共同探讨P58的用计算机解决问题的探究活动。交流,得出使用DO循环的技巧和心得。

4、上机练习:P54实践(1)、(2)

5、对几种DO循环的比较分析:归纳总结出各自不同的特点的把握要素,使同学们能运用自如。设立一些由人力解决较困难的问题,要求学生运要求学生能设计出算法及编写出程序。拓展 用所学编程知识去解决,比如:判断一个大数是否为素数等问题。小结 VB语言的DO循环语句、格式、功能和执行过程,以及几种不同DO 循环的比较。教师在布置课本的练习:P59(5),指导学生根据本节所学的知识,分析问题,设计算法,练习编程求解问题。36

第九课 模块化程序设计

一、教学目标(1)理解自顶而下、逐步求精的程序设计方法;(2)掌握VB语言的过程与函数的定义和调用方法。(3)理解模块化程序设计的基本思想。

二、重点难点 教学重点: 让学生学会使用VB语言的过程与函数的定义和调用方法。教学难点: 理解模块化程序设计的基本思想,并运用于程序设计中。

三、教学过程(2课时)教学环教师活动 学生活动 节 从歌德巴赫猜想的故事入手,验证歌德巴赫 学生边阅读边倾听。猜想,激发学生学习的兴趣和热情,通过先看P61情意 的程序2-9A观查此程序有没有功能重复的地方,导入 如何才能省略书写……并且反复调用同一功能的程序代码呢?拉开本节教学的序幕。1.通过组织学生探究“验证歌德巴赫猜想”问1.学生对“验证歌德巴赫猜想”题,引导学生经历分析问题、设计算法、编写程问题展开分析问题、设计算法、序、调试程序等用计算机解决问题的过程;归纳编写程序、调试程序等用计算机总结自顶而下、逐步求精的程序设计方法; 解决问题的探究活动。2.通过师生共同分析“验证歌德巴赫猜想”的2.学生在教师的指导下,阅读、新课 另一个程序,归纳总结VB语言的过程与函数的分析、归纳,完成实践任务。讲解 定义和调用方法。3.学生对“求五边形的面积”3.通过师生共同分析“求五边形的面积”程序,问题展开分析问题、设计算法、归纳总结模块化程序设计的基本思想。编写程序、调试程序等用计算机 解决问题的探究活动。

4、要求学生求三个数的平均数。(用自定义函4.学生在教师的指导下,阅读、数及自定义子过程)分析、归纳,完成实践任务。37

1、求园的面积,已知半径为1、3、5、7、9、11。(调用函数方法)拓展

2、调用子程序,使第一行打印20个*,第二行打印10个*,第三行打印20个*。引导学生利用函数及子程序解决较复杂问题,体会利用函数及子程序的好处。1.自顶而下、逐步求精的程序设计方法; 小结 2.VB语言的过程与函数的定义和调用方法; 3.模块化程序设计的基本思想。

指导学生根据本节所学的知识,完成求任意四边形的面积问题,要求他们能分练习析问题,设计算法,编程求解问题。38

第十课 递归算法的实现

一、教学目标

1、知识与技能: 理解什么是递归算法,学生会用递归算法的思想分析问题 能够应用自定义函数方法实现递归算法的编程

2、过程与方法: 学生参与讨论,通过思考、动手操作,体验递归算法的方法

3、情感态度与价值: 结合数学中的实例,激发学生的数学建模的意识,培养学生多维度的思考问题和解决问题。『教学目标设计的合理、准确。这也是在意料之中的,一般情况下,成功的教学任务分析一定会带来成功的教学目标设计。』

二、重点难点 重点:理解什么是递归算法,学生用递归算法的思想分析问题; 应用自定义函数方法实现递归算法的编程 难点:应用自定义函数方法实现递归算法的编程 『大部分教师在确立教学重、难点时不会给出确立的依据,可能这些依据早就在教师的脑中明确了,也有可能是一笔糊涂账,只不过是教参上是这样写的就照搬过来而已。如果在写教学重、难点的同时能再给出确立重、难点的依据会令教案更具借鉴意义。本案例的作者虽然没有写依据,但由于前面成功的教学任务分析,也就自然确立了教学重、难点。这也是很好的。』

三、教学过程(2课时)进程 教师活动 学生活设计意图 动

使用情境教学创设课堂导入:

法 情境 今天很高兴,特此我给大家准备了一份礼品(精美包 在此活动过程装猴与兔艺术品),你们想知道里面有什么礼物吗?

中能让学生初学生:想„„ 师生共步从活动中体

师:好!我们班有一位同学知道里面有什么礼物!(在同活动验“问题的发上课之前事先告诉其中的一个同学)但是他不能就这样告“找答与收”从而走诉大家,有一个规则可以让我们知道里面装的是什么„„ 案” 进了递归的思规则是: 维模式,为进1.从第一排的第一个同学开始。一步学习递归2.每位同学只问他相邻的同学,每位同学最多只能被 算法埋下伏笔 问一次,而且一个同学不能再问第二人,当任何一个同学 知道了答案,要求立即告诉曾经问过他的那个同学(不能 告诉其他同学)以此类推。

3.一直到得出答案为结束。以游戏规则开展,我想让第一位同学告诉大家,精装的礼物是什么? 39

启发师:前面我们学习了自定义函数,知道函数是为了实讨论活分析问题 主体 现某种功能而编写的一段相对独立的程序,并且可以多次动过确定方案,培养的调用。程,总学生思维程序 结游戏化,为下面新 规则,学习递归算法算法描述: 了解活做好移植准备 function what(student)动规如果我知道答案,那么我就告诉你 律,并否则,我要问下一位同学再告诉你 将活动end function 过程进 行算法描述 学习展示题: 讨论、实例教学,选新知 比较、择“小猴吃桃”小猴吃桃: 有一天小猴子摘若干个桃子,当即吃了一半还觉得不

分析、这一题的目的过瘾,又多吃了一个。第二天接着吃剩下桃子中的一半,归纳 是为了简化教

仍觉得不过瘾又多吃了一个,以后小猴子都是吃尚存桃子材“裴波那契” 一半多一个。到第10天早上小猴子再去吃桃子的时候,数列的多函数

看到只剩下一个桃子。问小猴子第一天共摘下了多少个桃调用,回避问 子? 题分析的复杂 1.鼓励学生进行讨论,共同寻找答案或解决方法 性较大的特

2.师生共同分析题: 点,从而使得 以4位同学排成了行,(设从行的后面开始的第一位同重点难点得以 学知道第10的桃子数(1个),倒数第二位同学知道第9轻松的突破。

天的桃子数是„„)从教师提问排在前面第一位(第7天)的同学,你知道,你今天的桃子数有多少? 目的是讨论出,只有倒数第一位同学知道,其他有同 学都不知道,但是他只要知道他后一位同学的桃子数就可 以求出本人所具有的桃子数,(后同学的桃子数+1)*2就 是本人的桃子数。建立数学模型:

假设第n,n<10天的桃子数为tao(n)那么 推导数 tao=10 n=1 学建模 tao(n)=(tao(n+1)+1)*2 n<10 我们能不能这样设一个函数: 学生进培养学生养成算法描述: 行算法良好的编程习

function你有多少桃子?(第几天)描述 惯 如果我第10天,那么我就有一个桃子。否则,我的桃子数=(前一天的桃子数+1)*2 end function 40

示图协助学生

分析算算法实现过程法的实的始末思维,现过程 学生编程实现:

Function tao(ByVal days As Integer)As Integer

If days = 10 Then 培养学生的编 tao = 1 学生编程和调试程序 Else 程实现 能力,让学生 tao =(tao(days + 1)+ 1)* 2 获得成功的体 End If 检 End Function 41

自主我们再来看第二题:(学生阅读教材P68,让学生阅尊重学生的个构建 读教材的“裴波那契”,培养学生的自学能力、和知识迁阅读 体发展,让学移建构自我的知识体系)思考、生进行自主探裴波那契(Fibonacci leonardo,约1170-1250)是意大分析、究学习,使用利著名数学家.在他的著作《算盘书》中许多有趣的问题,讨论,学主动、积极 最富成功的问题是著名的“兔子繁殖问题”: 如果每对兔的学习新知 子每月繁殖一对子兔,而子兔在出生后第二个月就有生殖识,培养他们 能力,试问第一月有一对小兔子第十二月时有多少对兔的自学能力。子? 1、1、2、3、5、8、13、21„„ 培养学生分析

假设第n个月的兔子数目为f(n),那么 问题、解决问 f(n)=F(n-1)+f(n-2)当n≥3,题能力,煅练 f(1)=f(2)=1 学生“数学建 讨论得出算法描述 模”建构主义 Function有多少对兔子(第几月)的学习观认 如果是第一月或第二月,那么就有一对兔子。为:学习不是 否则,(本月)兔子数=(本月-1)月的兔子数+(本月被动接收信-2)月的兔子数 息,而是主动

end Function 地建构意义,以自己原有的 Function tu(ByVal month As Integer)As Integer 知识经验为基 If month = 1 Or month = 2 Then 编程实础对外部信息 tu = 1 现。进行主动地选 Else 择、加工和处 tu = tu(month2)理,人而获得 End If 自己的意义过End Function 程。深化阅读教材的循环结构实现,比较讨论两种算法的区别学生讨培养学生分析知识 和特点 论 问题、归纳、梳理知识的能力,通过两种算法的对比,让学生深入体会递归算法的魅力。加深对本节课所学知识的理解。42

课堂我们今天所学习的算法是“递归算法”,我们谈谈什么 小结 是递归算法,递归算法有什么特点。师生讨论,共同小结: 1.递归算法是数值层层调用实现的,函数先由上向下调用,当达到最底层后,再将函数值层层向上返回。(递达成共下去,收回来,简称:递归)识 2.必须有个结束条件(有个该收回来的条件)3.可读性强 4.计算机资源耗费大,所以效率比较底(常驻内存的数据比较多)布置1.N!(用递归算法编程实现)巩固和发展本作业 2.求1+2+3+4+5„„N(用递归算法编程实现)节课的学习内3.用递推算法实现“猴子吃桃”问题求解 容。43

第四篇:高中算法与程序设计教学

高中算法与程序设计教学方法初探

左权中学 张彦萍

算法与程序设计是高中信息技术选修课。本模块强调的是通过算法与程序设计解决实际问题的方法。对于学生来说,程序设计的思维方式、方法和概念都是全新的,学生接受起来比较困难,因此必须认真研究程序设计的教学方法。我在近几年的高中信息技术课教学过程中进行了一些研究与探索,对程序设计教学方法有了一些浅显的认识,与大家共同探讨。

一、培养学生编程的学习兴趣,调动学习积极性

爱因思坦说“兴趣是最好的老师”。兴趣相当程度上决定了教学效果的好坏。如何培养学生学习程序设计的兴趣,我认为可以从以下几个方面入手。

1、让学生认识到学习程序设计在提高自身素质的突出作用。讲一些IT界精英的故事;社会需要提高学生未来的生存能力;自身素质提高:可以培养学生的思维品质,培养学生发现问题、思考问题和解决问题的能力;学习程序计算机教育对其他学科的影响等方面入手。

2、程序设计教学中要从学生的兴趣入手,利用学生对事物的好奇心,选择学生身边的,学生感兴趣的、有实际意义的程序,激发学生的学习兴趣。比如:第一堂课讲VB界面设计,可设计一个QQ登录界面。学完选择语句后,我设计了利用随机函数加法练习小程序,加数和被加数随机产生(1-100),结果自己输入,可判断对错,程序结束可计算得分。例程也可以找班内学生自己编写的程序,学生非常喜欢。

3、一定要分层次教学。文科班和理科班、尖子班教学内容难度上有所变化。一个班级布置作业时也要分层次。

4、轻入浅出,消除学生们对程序设计的畏难心理。在教学时,低起点,从一个个简单实例出发,让学生们从自身的实践中感受到这个的确很简单,从而迎合了学生渴望成功的心理特点。前两节课千万不能罗列过多的概念,让学生不知东西,打击学生的学习兴趣。

二、适当调整教材结构,立足具体实例,渗透基本概念

VB程序设计概念比较多,如何让学生较容易按受、理解是我在最初的教学中较为头痛的问题。刚接触程序设计的学生,对程序设计充满了好奇,如果把一开头还用不上的许多的控件、属性放在前面,一下子引入大量抽象的名词、概念,就会让不少学生望而生畏。因此要想让学生领会这些抽象的概念,教学中我选择的方法是先少讲控件,最多讲窗体、按钮,三个控件。结合数学课本已学的知识,先复习、巩固、提高基本知识。从数据类型,基本运算,讲到三种基本控制结构后,然后再讲基本的控件。这时,控件用于程序设计的例子就可以讲明白了。但是,我仍然不敢把控件的每一个属性都细讲。突出按问题需要设计界面来选用控件,以一个个鲜活的具体实例为切入点,在每个例子中适时、适量渗透一些相关的概念和知识,让学生在做中学,在学中做,使学生在完成任务的过程中,逐渐地、很自然地去体会控件、对象、事件的概念。教学中要安排足够的课时把这些控件的用法渗透到一个个程序实例中,由浅入深逐渐介绍,让学生在编写程序的过程中总结控件的用法。

三、采用启发、引导的教学方法,培养学生的实际应用能力、设计教学的主要环节,因“材”施教与因“需”施教相结合

《VB程序设计》课程的内涵十分丰富, 涉及的知识单元和知识点很多。因此在教学过程中,不仅要培养学生程序设计的技能,还要培养学生系统分析和系统开发的技能。实施VB的教学,首先要选择合适的教材,这样既有利于教师设计教学过程,又有助于学生的学习。这里所讲的“材”是指以教材为纲,按照教材的章节按部就班地讲授,课堂教学中往往以教师讲课为主,要求学生紧跟教师的思路,但是教学方法极易造成教与学的脱节,限制学生创造力的正常发挥。而“需”是紧扣教学大纲所确定的培养目标,以应用为目的,以必需够用为尺度,打破课程界限,将相关课程的知识点加以整合,按照“实际、实用、实践”的原则重新组织教学内容,这是VB教学方法的重要方面,也为教师在讲课过程中提出了更高要求。另外,程序设计是设计与实践并用的工作,只听、看、读是学不会的,只有让学生多动脑、多动手、多实践,通过编写调试大量的程序,才能使学生从中理解程序设计的思想方法、积累程序调试的经验,体会成功的喜悦。因此,在实验环节,除了验证型实验外,增加了设计型实验和综合型实验。为了解学生学习的具体情况,提高教学效果,授课教师要督促学生独立完成上机实验,以提高学生的动手能力,为学生创造性发展提供良好的条件。

2、实例教学

《VB程序设计》是一门实用性很强的课程,它既有理论又有实践,既讲方法又讲动手能力。讲授《VB程序设计》,像任何其他语言的程序设计一样,教材中前几章多数都是先介绍对象、对象的属性、方法和事件及VB语言基础等等一系列的在程序设计中比较抽象难懂的概念,然后才介绍程序的建立和运行。因此在教学中,可适当打破课本原有以知识的逻辑结构体系为顺序组织课堂教学的方式,改用从简单有趣的实例入手,通过让学生观看、模仿,在实际操作中去探究和领悟这些概念,例如,在一开始学习VB对象及对象的方法和事件的有关概念时,我设计了一个求外语、教育学平均成绩的并打印平均成绩的程序实例,让学生和教师一起做,在当前打开的窗体内添加了三个命令按钮、三个文本框和两个标签,设置好各对象的属性;并分别在三个命令按钮的单击事件过程中添加相应代码,按功能键F5运行程序。在操作的过程当中,教师开始只简单提示学生完成程序,等学生完成任务后,教师通过设问,让学生思考:什么是对象的方法和事件?并让学生找出本实例中各对象的名称、不同对象的方法和事件过程名称,教师再适当加以归纳和小结:窗体以及添加到窗体中的控件,统称为对象;而方法却是VB提供的内置于对象的特殊子程序,它可以直接调用,如Print方法;而事件则是对象能够响应和识别的动作,如单击鼠标触发Click事件等,同时提醒学生注意观察在VB中方法与事件的区别。在此基础上,再适当引导学生归纳总结出创建VB应用程序的基本步骤,及如何在界面内添加对象、设置事件等等,一切问题都迎刃而解。在讲解实例时,教师当以精选出的具有代表性的程序实例,把重点放在具体实例的分析和讲解上,把要学习的语法和概念融入到具体实例中来讲解。

3、重视算法,抓住核心

在教学中经常存在这样一种现象:很多学生对语法、结构等知识掌握得很好,但一旦碰到实际问题就束手无策,不知道如何用学到的知识解决实际问题,其实这是算法能力欠缺的一种表现。教师经常注重于分析每条语句的含义,却忽略了算法描述过程的展现,造成学生知其然不知其所以然。其实,在VB中,算法设计是它的核心。如果学生掌握了良好的算法设计能力,也就掌握了钓鱼的本领,无论遇到什么问题都可以很好的解决。那么在教学中可以通过多种方法培养学生的算法设计能力:(1)详细讲授常用的算法。算法有很多种,学生一般只要掌握常用的就可以满足编写模块的需要。而与数据结构、软件工程相关联的算法则不做要求。(2)教师带领学生多阅读程序,分析过程,吸取他人的经验和成熟的算法,使学生少走弯路或不走弯路。(3)开展实践性学习,引导学生积极参与编程实践,促进思维的飞跃,比如让学生练习编辑班级学生档案管理软件等等。在这个过程中,学生亲自动手解决具有一定难度的实际问题,为之设计合适的算法, 经过实践去培养学生的创新意思、应用意识和探究能力。这些意识和能力一旦形成,就会使学生利用VB解决实际问题能力得到很快的提高。

4、培养学生综合运用知识及自己动手的能力

程序设计课程的实践性很强,“精讲多练”是程序设计课程教学的一大特点,实验教学在程序设计教学中起着重要的作用,学生只有通过自己编写程序、上机调试程序,才能从中理解程序设计的思想方法、积累程序调试的经验,体会成功的乐趣,从而激发学生的学习兴趣,学生只听不练根本达不到学习的目的。学生在完成课后习题时积极性不高,兴趣不大,甚至想抄作业应付老师。只有让学生动手编制他们感兴趣的程序,学生才会有成就感,才会对课程产生兴趣,学起来才会从容自如。如在学生学会编写求1+2+„+N!=?的程序后,即引导学生设计求N!的程序,待学生设计出N!的程序后,接着又让学生进一步设计求1!+2!+„+N!=?的程序。这种一环紧扣一环的探究式的动手实践练习, 以发展学生探索能力为主线来组织实践, 以培养探究性思维的方法为目标,以基本的教材为内容,使学生通过再发现的步骤进行主动实践的过程,产生一种探索和发现的心理。因此如何让学生综合应用所学知识解决实际问题,提高综合应用能力和动手操作能力,激发学习兴趣也是我们需要加入课程设计的内容。课程设计时,老师要重点设计选题, 使得选题既贴近实际需要,又能够让学生感兴趣,并且能够运用所学知识解决问题,课程设计题目分为基本题和综合题。基本题按教学顺序设计,尽量避免涉及后续章节的知识,后续的课程设计题目尽量引用前面的课程设计内容,以便加深对前面所学知识的理解;综合性题目是对一学期所学知识的总结和巩固,应与实际生活或工作相关且具有一定规模,可将其分成几个子项目,由更多的学生参与,分工合作,以期进一步锻炼学生的动手能力,从而进一步培养学生分析问题、解决问题、研究和探索问题的能力和团队协作精神。

四、切实落实以学生为中心,学生为主体,教师为主导的新课改思想。信息课教师绝大部分为青年教师,无论教学理论和教学经验上都相当缺乏。特别是在程序设计内容时,自觉不自觉地还是走向了教师为主的教学模式。教师与学生缺乏互动,课堂气氛沉闷。在课堂教学中,要鼓励学生质疑是激发学生的主体性、培养学生思维能力和创造能力的起点。学生的主体性主要体现在学习过程中能掌握学习主动权,能够主动、自觉、积极地学习。因此,在教学过程中特别要注意设置恰当的问题,通过启发引导,体现教师的主导作用。集中学生的注意力,促进学生主动思考、主动探索,可以使学生在学习的过程中成为主体。总之,VB作为一门重要的编程语言,在高校的计算机基础教学中仍然占据重要位置,教学方法在程序设计教学中的举足轻重制约着程序设计教学的效率。科学的教学方法一定会为学生提供良好的帮助。我们在教学过程中应以学生为主体,教师为主导,采用符合学生认知规律的、科学的教学方法,充分调动学生学习的主动性,同时,采用综合评价学生的方式,努力培养学生自主学习的兴趣,提高学生实际应用能力,从而使得VB课程的教学质量得到不断地提高

第五篇:算法与程序设计教案

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

一、教学目标

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概要[5篇模版]word格式文档
下载高中信息技术 算法与程序设计教案 粤教版选修1概要[5篇模版].doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    高中信息技术 网页制作教案 粤教版选修3

    网页制作 教学目标: 1、了解网页的主要构成内容 2、学会网页的布局 3、学会网页中插入图片,文字设置,插入超链接的方法 教学内容: 1、启动FrontPage “开始”菜单——程序——Mi......

    高中信息技术,信息技术全套教案,粤教版必修1

    篇一:高中信息技术_信息技术全套教案_粤教版必修1 高一信息技术基础教案教师:雷萍 1.1信息及其特征 一、教学内容分析和设计: “信息及其特征”是广东教育出版社的高一《信......

    教案算法与程序设计思想

    算法与程序设计思想 【课标要求】 (一)利用计算机解决问题的基本过程 (1)结合实例,经历分析问题、确定算法、编程求解等用计算机解决问题的基本过程,认识算法和程序设计在其中的......

    高中信息技术 《网络技术应用》知识点 粤教版选修3

    《网络技术应用》知识点 (一)因特网应用(因特网诞生于 1969 年初,前身是阿帕网,我国的四大骨干网: CERNET 、 CSTNET 、 Chinanet 、 ChinaGBN ) 1 、因特网服务的基本类型:......

    高中信息技术_4.1规划个性网站教案_粤教版选修3

    4.1规划个性网站(2课时) 【教学分析】 1、教材分析 本节内容为教育科学出版社普通高中课程标准实验教科书《网络技术应用》(选修)第四章“网站的开发”的第一节“网站的规划”,课......

    高中信息技术 4.2网站规划设计教案 粤教版选修3

    4.2网站规划设计 *教材分析】本案例是教育科学出版社《网络技术应用》(选修)第四章第三单元网站实现的第一课时,主要介绍使用网页制作工具FrontPage实际动手制作自己的网站,将规......

    高中信息技术 2.1因特网的接入教案 粤教版选修3(模版)

    接入因特网 学习目的:1、了解因特网的几种接入方式。2、了解因特网接入的软件配置。3、了解因特网的服务组织。 重点难点:因特网接入的软件配置。 学习方式:任务驱动、小组讨......

    高中信息技术 1.1计算机网络的组成与分类教案 粤教版选修3

    第一节:计算机网络的组成与分类 学习目的: 1、了解计算机网络的组成与分类2、知道日常家庭组网所需的网络设备3、结合校园网,小结什么是计算机网络? 学习重点: 1、 计算机网络的......