




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一节 用计算机程序解决问题课程内容标准初步掌握用计算机进行信息处理的几种基本方法,认识其工作过程与基本特 征。一、教材分析 本节内容主要讲述用计算机进行信息处理的其中一种基本方法,即用计算机 程序解决问题,能够通过解剖一段计算机程序实例,认识其工作过程,从而对利 用高级语言编程工具解决问题的基本方法有所了解。1、本节的作用和地位用计算机程序解决问题,应该是当今社会的一种根本手段,是人们把现实世 界的任务转换成计算机可以直接识别并执行的指令代码。通过学习本节内容,让 学生了解到计算机是在人们的具体指令之下解决实际问题的,计算机执行的每一 个动作,都是程序员预先设计的。计算机程序,就是利用程序设
2、计语言编写成计 算机可以识别和执行的程序指令,人们使用这些编写好的现成的程序软件来解决 一些实际问题。通过本节内容的学习,学生还可以了解到以往使用过的工具软件 事实上也是一种计算机程序,只不过那是别人已经编写好的、可以在计算机上直 接使用的工具软件而已。学生通过操作使用已经编写好的计算机程序,在解决实际问题 ( 例如对文本文 件进行加密和解密 ) 中分析并了解其工作过程。学生还对编写计算机程序的基本过 程有所了解,并对计算机程序的具体作用有初步认识,这种通过问题分析并形成 算法再利用计算机程序解决问题的思路和做法,对培养学生有条理、按步骤解决 问题的习惯有很大帮助。2 、本节主要内容介绍在日常
3、生活中, 人们除了使用计算机的工具软件处理许多事情之外, 相当部分 的现实问题也都可以利用计算机程序的方式加以解决,实现一些个性化的信息处 理方式。同时这种针对某些具体问题的计算机程序解决办法,也可以经过技术处 理把这些具有某种功能的计算机程序,改造成为具有某种通用功能的工具软件, 即我们所经常使用的通用工具软件,例如文字处理、图表处理、多媒体加工等工 具软件。所以利用计算机程序解决问题既是一项独特的个人化工作,也是一个人 类社会的标准化工作。本节的内容结构是:执行一段计算机程序,了解计算机程序的工作过程;然 后解剖程序实例,探讨计算机程序设计的基本过程。第一部分内容主要是通过操作一段实用计算
4、机程序,了解其工作的基本过程。 先让学生在高级语言 (Visual Basic) 环境下操作一段“加密”程序,观察其执行 过程和运行结果;然后再让学生操作一段相应的“解密”程序,比较并分析程序 具体实现的功能。通过这些实用的简单计算机程序的使用,让学生对用计算机程 序解决问题的基本过程有所了解。同时也告诉学生这样一个观点:计算机是通过 执行程序进行工作的,我们平常所使用的工具软件都是针对解决某些通用性问题 开发的计算机程序,当人们需要解决的问题无法利用现成的工具软件进行处理的 时候,可以利用高级语言编写程序,然后通过计算机执行程序来解决问题。在这一部分,由于解密的结果是有意义的文字,比加密后的
5、结果更容易让学 生判断程序运行的“对错” 。因此在教学序列的处理上也可先运行“解密”程序, 由教师提供加密后的密文,学生通过运行得出结果,既可活跃课堂气氛,也可激 发学生探索加密过程的兴趣。接下来再运行“加密”程序、剖析程序结构。第二部分内容主要是针对以上的“加密” “解密”计算机程序实例,帮助学生 了解计算机程序设计的基本过程的有关知识。计算机程序设计的基本过程包括: 问题分析、设计算法、编写程序、调试运行、检验修正。在“问题分析”阶段, 教材通过解剖以上的计算机程序实例,对所需要解决的问题利用自然语言(如文字 )进行了精确的描述。 “设计算法”阶段就是确定解决问题的思路和方法,并对解决 问
6、题的每个步骤进行了准确的语言描述。在“编写程序”中,根据算法的具体要 求,利用合适的计算机设计语言 ( 如高级语言 Visual Basic) 编写程序。“调试运行” 阶段就是执行所输入的计算机程序代码,如果程序有错则需要根据系统反馈的提 示信息修改相应的程序代码,直到运行结果正确为止。 “检验修正”中要对程序执 行的结果进行分析,观察程序是否还存在逻辑错误或计算方法方面的错误,并加 以修正完善。本节采用的计算机程序设计语言是 Visual Basic ,这是一种面向对象设计的 高级语言,功能强大,可能对于刚接触编程的学生来说会有一定的难度。但教材 中试图尽量减少这种技术上带来的影响,而侧重于
7、学生对计算机程序本身执行过 程的理解,以及帮助学生了解计算机程序是如何编写出来的。本节内容只涉及 Visual Basic 语言的程序代码编辑、执行程序、保存文件等简单功能的应用,至 于其他功能的学习则在选修模块算法与程序设计中进行。而在程序代码输入 过程中,要注意引导学生遵循程序结构化设计的思想以及书写规范 ( 即悬挂式格 式) ,增强程序的可读性和直观性。在“探究”栏目, “ x1mw$mw$fss”o 是“ This is my book ”经过加密转换之 后所产生的代码,转换的运算规则是机内码加 4。3、重难点分析教学重点:在高级语言环境中操作执行一段简单的实用计算机程序代码,了解其工
8、作过 程。教学难点:解剖简单的计算机程序,了解其结构组成和具体作用,认识计算机程序设计 的基本流程。二、教学建议 该节内容通过让学生操作具体的计算机程序,了解其执行的过程,通过解剖 计算机程序,认识程序设计的基本流程。如何让学生在具体操作实践中观察并归 纳出程序执行的工作过程和基本特征,并针对具体实例的分析和实践,了解程序 设计的具体流程,这主要是帮助学生了解程序设计的基本情况。1、课前准备 课前教师要细致考察教材中的具体实例,认识其主要用途。教师还要对高级 语言环境有所了解,对程序的功能实现进行具体分析和理解。对计算机程序设计 的基本过程要有整体的了解,对每个环节要做深入分析和把握,以便在具
9、体指导 学生实践的时候做到“游刃有余” ,分析得十分的透彻。2、教学建议 对于用计算机解决问题的学习,教师需要采取有效的教学组织活动,帮助学 生了解计算机程序的工作过程。建议如下:(1) 教师可以针对具体情况,设计其他更加实用有趣的程序实例,在帮助学生 完成基本学习目标的前提下,激发学生学习编程知识的兴趣。(2) 在设计具体的实用计算机程序时,可以考虑选择学生熟悉的学习和生活中 的实例,例如商店价格折算、计算器模拟实现等。(3) 教师可以演示并解剖一段实用的计算机程序实例,让学生利用高级语言编 程工具解决一个简单问题。(4) 可以组织学生分析并描述一些实用程序的执行过程,通过剖析程序实例, 大
10、致了解计算机程序的基本构成和主要作用。(5) 针对实际问题,要求学生利用自然语言描述解决问题的方法,并将解决问 题的步骤描述成为算法设计的具体内容。3、问题考虑 高一级学生大部分对“程序”具有好奇心同时完全没接触过编程。学生急于 看到自己的编程成果与严格规范的程序设计环境之间存在矛盾:一方面,程序设 计不可能一蹴而就;一方面,学生的好奇心与求知欲应得到有效的引导与满足。 协调好这两方面的矛盾需要有所取舍。本节的教学目标是“了解程序设计是什么, 用程序解决问题的过程是什么” ,在具体教学时可以先绕开设计程序时具体编程语 言的语法规范、编程技巧等等环节。让学生直接面向问题,分析问题,设计算法, 运
11、行程序,检测结果,从实践中体验程序设计的全过程。其中“编程调试”环节 中程序由教师以学习资源的形式提供帮助,使学生摆脱语言的束缚,专心体会程 序设计的内涵,构建起对程序的整体印象,初步对算法有所认识。学生在对计算机程序的基本过程有所了解之后,可能对具体的程序代码语句 产生疑问,这需要引导学生阅读并理解程序设计的有关知识,以提高其学习兴趣。 本节内容涉及的是面向对象设计的高级编程语言,这可能对大多数学生来说有一 定的难度,需要教师对整个教学组织进行严密细致和合理的安排。同时引导学生 了解更多有关程序设计的基本知识,将学生带入一个丰富多采的计算机程序设计 世界。三、练习说明如果输入相符,则显示成功
12、信息;否则3。VB中按钮的一些使用情况,对程序变量、练习1: “ 口令.vbp ”程序的实现功能是:通过键盘输入字符,与已经保存在 计算机文件 d:mm.txt 的字符进行匹配。 重新输入,但密码输入的次数不允许超过练习 2:该题目主要是帮助学生了解 函数运算等有所认识。四、参考教学课例 教学过程中可以根据教材中的例子组织教学,也可以另外设计例子。以下的 参考课例采用的是教师自行设计的例子。第1课时:通过“三步曲”程序的运行、剖析,了解VB的编程环境,了解计算机程序的工作过程,体验程序的执行效果。初步认识程序。第 2 课时:通过“韩信点兵”问题的分析,让学生完整经历程序设计的过程。(一)课题名
13、称用计算机程序解决问题(二)教学目标:了解程序是什么,用程序解决问题的过程是什么,初步掌握程序设计的工作 过程;培养学生进一步学习程序设计的兴趣。程序设计的整体流程 用程序设计的思想解决实际问题 培养学生学习程序设计的兴趣;(三)教学重点和难点:1.3.四)教学环境 网络教室五)教学过程:2.第一课时:编程环境的基本操作环节教学流程设计意图引入运行程序:清晨三步曲引出问题:在“清晨三步曲”中我们发一个指令,程 序执行一个动作。在程序设计过程中我们进行的每一个设 置,都会反映到运行结果中。那么,程序是怎样“做”出 来的?运行过程中,计算机在程序指挥下怎样“动作”的 呢?运行程序,激发兴趣熟 悉
14、编 程 环 境熟悉VB环境添加控件,设置控件细节。添加程序,对运行过程进行控制:(1 )在FORM中添加程序;(2)分别为每个按钮添加 程序并作相应修改(在“修改一 运行”的过程中感受程序的作用。此 环节有学习资源的帮助)初步了解VB的 运行环境;掌握新建 文件、输入程序语 句、运行程序的方 法;巩固为程序添加细节女口:添加标题“清晨三步曲”;添加背景;修改 FORM标题第二课时:用计算机程序解决实际问题环节教学流程设计意图程序设计能够帮助解决我们学习中的问题。那么应用引入课题,组织教学,让学生集中注意力到学习内容上。程序设计来解决问题的机制是什么样的?或者说,当面对 一个具体问题,要编程序来
15、解决时,作为程序员的我们要 先做什么,再做什么?而计算机面对问题时,它又是怎样 处理的?(有解的问题总是可以通过有限的步骤来完成的。面对问题时,首先是分析问题,接着把问题描述成有限的步 骤序列,也即设计出算法。下面,我们通过实例的分析, 来体验利用计算机程序解决决问题的过程:分析问题,设 计解决问题的步骤序列,并通过运行程序来进一步了解计 算机处理问题的方法)“韩信点兵,多多益善”这句话大家都知道,那究竟这“多多”的士兵共有多少呢?韩信说:“如果每3个人编为一队,那最后剩下1个人;如果每5个人编为一队,那最后剩下2个人;如果每7个人编为一队,最后也剩下2个人。请你自己算一个,我有多少士兵?”
16、(假设士兵总数不超过100人)(1)分析问题:1、引导学生分数学解法析问题,找出解决问题的方法,进而引导C,那么由题意,有3A+1=S向“列出解决问题的5B+2=S步骤”,即算法设计7C+2=S环节。这是一个“未知数的个数(这里有S, A, B, C共个)多于方程的个数(这里有3个)”的方程组。有无限多个正整数解(取 S=37, 37+105, 37+105X 2,代入方程组,就可以得到相应的各组 A, B, C的值)古代解法在我国古代的数学著作中,对这个问题也做了非常详细的研究,并总结了解题的方法:三人同行七十(70)稀,五树梅花廿一(21)枝,七子团圆正半月(15),余百零五(105)便得
17、知意思是说,把除以3、5、7所得的余数,分别乘以70、2、经过讨论、提示、归纳,学生般可以总结出不太规范的“解决问题的步骤”,此时教师在充分肯定学生答案的基础上再进行小结提高,给出规范的算法流程。让学生体验从问题到算法之21、15,加起来的和再减去105的倍数,所得的差小于105间的转化过程。这也时就是我们所求的这个数了。(2)设计算法:所谓算法,就是解决问题的方法和步骤。“韩信点兵”的算法可以描述为:用S表示士兵数目,则问题可以表达为找出同时满足S MOD 3=1S MOD 5=2S MOD 7=2是编程的最重要的环节。3、在调试环节设计出错的测试数据,让学生理解“程序做得越多,那么程序会做
18、的也越多;程的整数来。序员想得越周到,程设士兵有S名。S除以3, 5, 7所得的商分别为 A, B,设士兵数目为S,令S为100 (最大数),开始搜索判断:如果 S除以3余1、S除以5余2、S除以7余2同时成立,那么当前的数 S就是解,程序结束;否则,S减1,转重复这个判断过程。(3)编写程序:对应上述算法,套用合适的结构、语句编写程序。(4)调试运行:说明:以上“(3)编写程序、(4)调试运行”两步由于实际条件的限制,由教师完成,学生只需复制程序、运行程序,检测结果即可。(5)检测结果:运行程序,用古代算法和手工算法来验证运行结果。用计算机程序来解决问题的一般步骤是:分析问题7设计算法7编写
19、程序7调试运行7检测结果用程序解决问题和用手工解决问题的对比将本题拓展:(1)除数不再是3, 5, 7,而是13, 15,17?( 2)数据规模改得更大一些,例如,1000以内的最大数,10000以内的最大数,10万以内的最大数?则三种解法依然能起作用的只有编程序了。序也就越健壮”。设计大规模的测试数据,让学生体验计算机的高速运算能力,这也是程序解决问题的一个技术基础;利用计算机程序解决问题更方便,自动化程度高;更Clifi 士兵fiR在呵有普遍性。计算机程序能给我们的学习、生活带来很多的 方便,很多的乐趣;计算机编程的学习需要专心的训练, 乐于钻研的精神,同时,学习编程也会为我们带来发现的
20、惊喜和成功的喜悦。更进一步的学习可以选修算法与程 序设计模块。Jr韩信一共有3T名士兵芸数为厂厂厂1371(3 人辩为限,(7 人编古:以.«悟士兵总眾为,韩信点兵简单版界面韩信点兵完整版界面附:用计算机程序解决问题课堂教学实录用计算机程序解决问题课堂教学实录(第二课时)教学资源:1、 文本资源:韩信点兵题目描述、韩信点兵古代解法、韩信点兵数学解法、 韩信点兵算法、韩信点兵程序语句;2、 程序资源:韩信点兵程序简单版,韩信点兵程序完整版; 教学环境:网络教室(配有广播系统,液晶投影) 教学过程: 第一阶段:复习引入 师:前面的课中我们通过实例了解了 VB 的编程环境。 简单了解控件、
21、 属性、程序 的概念;同时,也知道了程序的运行过程。 (教师启动广播系统, 边讲边操作, 演示简单例子:通过命令按钮的控制,隐藏图片)师:这是我们之前的课中所了解到的:程序的运行过程。这只是利用计算机程序 解决问题整个过程中的一个环节。当我们面对一个问题时,到最后用程序解 决这个问题,这中间要经过哪些环节?我们经常说,只要是可解的问题,总 是可以经过有限的步骤来解决的。那这些步骤是如何得到的?下面我们同样 通过实例来认识这个过程。最后也剩下 2 个人。请你自己算一个,我有多少士兵?” ) 韩信点兵”大家可能都接触过,在这个问题中,韩信有多少士兵呢? 讨论,猜测,验证。 )37 人。 好,有同学
22、说是 37,那为什么呢?请这位同学帮我们大家解释。 因为除以 5 的余数是 2,那么士兵数的末位数只是能 2 或 7,除以 7的余数也 是 2 ,即是说,这个数是 5 和 7 的公倍数再加 2 ,最小的公倍数是 35,加 2 即 是 37,再用“除以 3 余 1 ”进行检测,也对,所以,我确定是 37。 师:非常好。这位同学从自己的知识、经验出发,通过猜测、验证得出了这个答 案。实际上,这是个非常出名的数学问题,它有很多的表达方式。比较著名第二阶段:讨论释疑 (广播“韩信点兵题目描述” :“韩信点兵,多多益善”这句话大家都知道, 那究竟这“多多”的士兵共有多少呢?韩信说: “如果每 3 个人编
23、为一队,那最后 剩下 1 个人;如果每 5 个人编为一队,那最后剩下 2 个人;如果每 7 个人编为一 队, 师: 生: 生: 师: 生:的是“物不知其数” ,大家只要输入“物不知其数”在网上进行搜索,可以找 到很多相关的内容。我国古代的数学家们花了很大力气研究这个问题,并找 到了它的解法。(广播“韩信点兵古代解法” 。)现在我们验证一下,就刚刚问 题的数据,用古代解法也能得出 37 这个解。生:(验证。) 师:古代解法虽然很方便,凭经验我们也能得到一些解。如果用现在的数学方法 来解,我们用什么方法?生:列方程求解。师:好。设士兵数目为S,我们可以列出如下方程组:(广播“韩信点兵数学解法”。)
24、我们这个方程组一共有 3 个方程,四个末知数,这是?生:不定方程)师:不定方程有没有解?生:有解,但无定解)100以内;同时,师:是)那如果我为这个不定方程加上限制条件,士兵的数目在 这个题目里还有另一个限制条件,是什么?那我们可以生:士兵数目一定是整数,且大于 0) 师:好)在加了这样的限制条件后,这个不定方程就可能有定解了) 通过什么方法来得到这个解?搜索的方法生:在 S 的取值范围内一个一个检测、判断) 师:好)我们可以通过逐个检测也就是搜索的方法来得到题目的解)也是利用计算机程序解决问题的常用方法之一)接下来,我们来讨论利用计 算机程序如何来解我们的这道题)大家都知道,计算机所会做的一
25、切,实际 上都需要程序员“教”给它;现在,请大家利用广播系统的“消息功能” ,把 大家准备教给计算机的解题步骤写出来)师:(结束广播状态)师:(巡视)生:(思考)写步骤)发消息) 师:(收集学生的典型解法:从消息管理器中复制解法,放大字体,以便讨论) 师:好)现在我们来看一下,大家提出来的都有些什么解题步骤: (液晶投影屏幕 显示学生解题步骤)我们请写出步骤的同学说明一下:生:在S的取值范围内,判断S除以3、5、7的余数是否刚好等于1、2、2,再让S加1,再判断)师:那么,什么时候就可判断 S的值就是解呢?生:S除以3、5、7的余数符合要求时)师:好。当S满足这三个条件且S在取值范围内时,S的
26、值就是我们所求的解)现在我们来看一下规范的算法表达:师:(广播“韩信点兵算法” )生:(阅读算法)师:我们先让S取100,然后判断S是否符合要求,如果符合要求,则输出结果, 结束程序;否则, S 减 1,重复这个判断过程。师:到现在为止,我们经历了分析问题、设计算法两个环节,接下来,我们要考 虑如何把算法转为程序。我们知道,算法是解决问题的方法和步骤。设计算 法是解决问题过程中关键的一步;算法设计完成后,用任何一种程序设计语 言来编写程序都是可以的。因为大家还没有完整地学过程序设计语言,编程 的部分由老师完成。现在我们先简单解释语句的含义。师 生 师 生 师 师广播“韩信点兵程序简单版” )阅
27、读程序)前面六个句子非常简单,是用来?记住三组除数和余数。 对,如果我们要改变余数和除数,就在相应的句子上进行修改。接着,我们用循环结构控制判断的过程,一发现 S 值符合要求,则将结果输 出到文本框中(text1.text="韩信一共有"& Str(s) & "名士兵"),“S赋值为负1” 是用来结束循环,结束程序的。师:现在请大家打开 VB ,结合我们之前学过的文本框、命令按钮,编程调试,解 决这个“韩信点兵”问题。要求:点击命令按钮开始运算,并把结果送到文 本框中。师:老师把程序发给大家。第三阶段:动手操作师 生 师 师 生 师 师结
28、束广播状态,利用广播系统“课堂讨论”功能发送程序)启动 VB ,设置控件,复制程序,试运行,调试程序)循视辅导。)好。现在能够运行程序并得到答案的同学举手。部分完成任务同学举手)统计人数) 大概有六分之一的同学可以得到答案。现在,请暂时还不能正确运行的同学 抓紧;完成的同学试一试另外一组数据:余数不变还是1、2、2,除数分别改为 2、 3、 4。生:(修改程序,调试程序)师:答案是多少?生:没有答案。师:为什么没有答案? 生:数据本身出错:不可能有一个数除以 2余1,除以 4余2的。 师:非常好。象这种出错的情况我们可以分析出来,可是我们的程序并不能给出 提示。这说明什么问题?计算机所会做的任何工作,都是程序教给它的;程 序员考虑得越周到,程序就越能干。所以,编程之前,能够考虑得更周全, 调试就更容易,程序的适应能力也更强。师:现在程序能够正常运行、第一组数据能通过的同学请举手。 生:(大部分举手)师:好,那么现在我们再试另一组测试数据:除数为为3, 5,7,余数全为 0。生:(改程序,运行程序,查看结果)师:结果是多少? 生:也没有结果。师:不可能吧?这结果非常明显是?生:是 105。 师:这么容易的测试数据,计算机为什么会算不出来呢? 生:我们程序里
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 测量专业试题及答案
- 湖北省汉川市金益高级中学2025-2026学年高二上学期9月起点考试语文试卷
- 安徽省淮南市第二中学2025-2026学年高二上学期开学考试物理试题
- 铝塑板挑檐施工方案
- 辽宁电镀线施工方案
- 娱乐休闲产业发展蓝图
- 人力资源管理数字化现状与挑战
- 【高中语文】《哦香雪》课件+统编版高一语文必修上册
- 大学新教师试用期转正个人工作总结字
- 涞水防火聚苯板施工方案
- 视网膜中央动脉阻塞的急救和护理
- 国际金融学 第一章 国际收支 南京大学商学院
- HY/T 087-2005近岸海洋生态健康评价指南
- GB/T 5563-2013橡胶和塑料软管及软管组合件静液压试验方法
- GB/T 3600-2000肥料中氨态氮含量的测定甲醛法
- GB 2715-2005粮食卫生标准
- OA流程表单案例
- 医师多点执业注册申请表
- 《边坡稳定性分析》课件
- 刮板输送机-课件
- 深信服防火墙技术方案
评论
0/150
提交评论