初识程序设计
一、基本说明
1模块:算法与程序设计
2年级:高中二年级
3所用教材版本:教育科学出版社
4所属章节:第一章
5学时数: 45分钟
二、教学设计
1、教学目标:
知识、技能目标:结合实例,体会程序设计的相关概念,流程。理解算法的重要性及其特性。了解算法的相关描述。
过程、方法目标:通过对实例程序的观察,形成对程序设计的感官认识;
情感目标:在实例分析和讨论过程中认知学习编程的目的及其重要性,形成对学习程序设计的热情。
2.内容分析:由于学生对程序设计基本上是完全陌生的,所以教材在编排上为学生能够顺利进入VB中进行程序设计做了大量的铺垫工作,使得学生在能真正进入VB进行程序设计之前,必须掌握较多的理论知识,而又无法将这些理论知识应用于实践,造成他们学习程序设计的兴趣逐渐消退。同时,由于无法进行实践,教师要将抽象的理论知识完全讲清楚,让学生真正理解,也颇费时日和功力!为此,我对第一、第二章的理论知识进行了综合,适当地调整了一些内容的秩序,以期在实践中完成对理论知识的掌握。
教学重点:学习编程的目的和意义;
教学难点:认识算法;
3.学情分析:程序设计的第一堂课是比较难上的,因为对于初次接触程序设计的学生来说,入门学习都是比较困难的。初学一门程序设计语言,并达到应用的水平,也是需要花
一定的时间的,同时要求学生具有一定的理解能力。
4.设计思路:本节课是算法与程序设计的第一节课,本课直接引入课题,并展示一些已设计好小程序,将学生带入到程序设计世界中来,从而认识程序设计的基本流程。学生对学习编程的意义有较大的认识偏差,作为第一节课,增加相应内容,使学生明晰学习程序设计的重要意义。算法作为软件的核心,理解算法的概念对学习程序设计至关重要,通过一些实例使学生理解算法的涵义,并养成选择最优算法的意识。算法的描述在数学授课中相应部分学生已有基本,不作为本节课重点,只是简单带入,并通过练习检测学生的掌握程度。
5.教学方法:以教师讲授法为主,辅以演示法、启示法等
6.教具:投影设备、电脑
三、教学过程
环节 | 教学活动 | 师生活动 | 设计意图 |
创设情境 导入新课 | 在没有真正接触程序设计之前,很多同学对程序设计跃跃欲试,没错,经过坚苦的设计、调试、运行,编制出自己的程序出来,是一件非常有满足感、成就感的事情。程序可以帮我们解决很多问题,Word程序可以帮我们排版文章,Excel程序可以帮我们统计数据,计算器程序可以帮我们做数据运算,游戏程序可以帮我们放松心情,消磨时光。接下来我给大家展示几个小程序,它们都有各自的作用,请大家在观看的时候注意思考一个问题:这些程序有什么样的共同特点? ①有界面设计 ②能解决一定的问题,具有实用性 ③可以正常关闭退出 …… 那程序是怎么被设计出来的呢? | 分别展示小时钟程序、鸡兔同笼问题程序、管理系统。 对学生的回答进行归纳 | 通过印度国王与国际象棋的故事既能引起学生的兴趣和思考,又能较好地引入课题 |
新 课 教 学 | 一、认识程序设计 一般地,设计计算机程序解决问题,其流程为: 分析问题→设计算法→编写程序→调试运行 以上这一用计算机解决问题的过程称为程序设计(Program Design),也即俗称的“编程”。编写程序时所使用的语言称为程序设计语言(Programming Language) 美国人已经视编程为一项应该从小学生就开始推广学习的技能并且为此作出了很多努力, 但是国人还在困惑普通人是否有必要学习编程,就连绝大多数的程序员自己都整天调侃自己的职业。 有件事你每天上班都要做,普通人要做两小时,我编程让它变成10分钟,是不是会觉得很爽呢?将自己的业余时间抽出一部分来,学习一些基本的程序设计技巧。程序设计并非为了让任何人都成为程序员,而是让人学会一种思维方式。 对程序设计来说,算法至关重要! | 讨论:普通人有没有必要学习编程? 展示视频和相关图片:编程让你学会思考 | 学生理解编程的意义是非常重要和必要的,希望通过IT知名人士的现身说法使学生明白学习编程的必要性,从而积极主动的学习编程。 引入算法 |
新 课 教 学 | 二、算法是程序设计的灵魂 算法(Algorithm)就是解决问题的方法和步骤。例如鸡兔同笼问题,要解决这个问题,就要设计合理的算法,解决这个问题的过程,就是实现算法的过程。 算法是程序设计的灵魂,是软件的核心。计算机科学家沃思指出:算法+数据结构=程序。可见算法在程序设计中的重要性。 解决一个问题可能有多种算法,我们要尽可能地从这些算法中到一种效率最高的算法。例如著名的“高斯算法”问题:计算1+2+3+……+100的和。高斯采用凑数的算法:1+100=101,2+99=101,……,结果为50×101 算法应具有如下几个特征:①有穷性,即必须在有限的步骤和时间内完成程序的执行;②确定性,每一步必须有确切的含义;③有输入和输出,程序应有0个或以上输入和至少一个输出结果;④可行性,程序能精确运行,在有限次运算后完成。 | ||
新 课 教 学 | 三、算法的描述 一般用自然语言、流程图和伪代码描述算法。 1.用自然语言描述算法 自然语言是指人们日常生活中使用的语言。例如过河问题: 一个人带着一只狼、一只羊和一捆白菜过河,河边只有一条小船,一次只能带一样东西过河。如果人不在,狼要吃羊,而羊要吃白菜。如何渡过河既不让狼吃羊,又不让羊吃白菜? 用自然语言描述算法符合我们的表达习惯,且容易理解。但它缺乏直观性和简洁性,并且容易产生岐义。例如“这个人谁都不认识”的理解可以是这个人不认识其他人,也可以理解为其他人都不认识这个人。 2.用流程图描述算法 流程图是算法的一种图形化表示方法,它形象、直观,更容易理解。常用的流程图采用美国国家标准协会ANSI制定的符号,包括: 圆角矩形:程序的开始或结束 平行四边形:输入或输出 菱形:判断 矩形:计算处理 实心点:连接点 流程线:程序执行方向 3.用伪代码描述算法 伪代码是介于自然语言和计算机程序语言之间的一种算法描述。它没有严格的语法限制,书写格式比较自由,只要把意思表达清楚就可以了。 | 学生自主阅读P6-P9页内容 请学生上台写出输出任意一个数的绝对值的程序流程图。考察学生对程序框图的掌握程度。 | 设计这个学生很熟悉的实例,理解自然语言描述算法的特点,增强学习的趣味性 学生已经在《数学3》中学习了算法的描述,尤其对流程图比较熟悉,这里不做重点,只做复习性的讲解 |
小结 | 编程小学生有必要学吗 | ||
作业练习 | |||
【课后思考】
本节课作为《算法与程序设计》的第一堂课,如何纠正学生的认知偏差,激发学生学习程序设计的兴趣,是本节课值得重点关注的问题。通过观看视频、图片材料,以及学生之间的讨论,对培养学生的编程兴趣应该有一定的帮助。 |
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论