初中信息技术川教九年级下册计算机程序与BASIC语言用vb程序解决数学问题汇报课教学设计_第1页
初中信息技术川教九年级下册计算机程序与BASIC语言用vb程序解决数学问题汇报课教学设计_第2页
初中信息技术川教九年级下册计算机程序与BASIC语言用vb程序解决数学问题汇报课教学设计_第3页
初中信息技术川教九年级下册计算机程序与BASIC语言用vb程序解决数学问题汇报课教学设计_第4页
初中信息技术川教九年级下册计算机程序与BASIC语言用vb程序解决数学问题汇报课教学设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

用vb程序解决数学问题汇报课教学设计唐军一、活动背景:程序设计是当今信息技术产业高速发展的基础和源动力,已经高度渗透与融合到国民经济和社会发展的每个领域,其技术水平和发展规模已成为衡量一个国家产业竞争力和综合国力的重要标志之一。程序设计可以培养学生严谨数理思维,挖掘潜力。优质生和特长生通过程序设计提高了思维能力和解决问题的能力,参加程序设计竞赛。程序设计也是计算机科学核心,现有信息技术课程,以多媒体应用、图形化为主,不能体现计算机科学核心。信息技术拥有有自己的学科体系,课程不能以“工具”为中心,要回归其本质“计算科学”,程序设计直接体现“计算科学”,中小学信息技术课开设程序是重要的一环。现代学生的信息接触面已经越来越广阔,适当的了解程序设计,学习基本的程序开发,不仅有助于学生帮助了解社会的发展,提升对人类文明的认识。更是培养其对高新科技浓厚兴趣的有效途径之一。双流中学实验学校实施“以课程改革为核心的素质教育”,其核心是促进学生个性化学习,培养学生综合实践能力,《VisualBasic程序设计》课程的开发与实施,应运而生。VisualBasic是微软公司推出的面向对象编程工具,它也是基于Windows操作系统可视化编程环境。VisualBasic是极具特色和功能强大的程序设计软件。主要表现在:所见所得的界面设计,基于对象的设计方法,把程序和数据封装起来作为一个对象,每个对象都是可视的,同时,具有较易维护的代码。是程序设计教学的良好载体。经过了一学期的VisualBasic程序设计学习,学生学习了VB集成开发环境和VB语言的简单语法基础;会使用VB的窗体、VB标签、文本框、命令按钮、以及单选框等控件,同时掌握了这些控件的基本属性设置及访问方法;学习了VB常见变量类型及定义方式、数学运算、布尔运算、赋值语句、分支语句、循环语句等基础语句及其流程;能够编写和调试简单的VisualBasic程序。活动目标:通过VisualBasic(以下简称VB)程序设计汇报活动,让学生探究VB语言的编程算法规则,体验VB程序设计语言的设计过程。培养学生初步用VB语言设计短小应用程序的能力。通过该课程的学习,使学生了解算法和程序设计在解决实际问题中的地位和作用。培养学生的算法思维能力,使学生能利用学过的算法和VB语言解决生活和学习中碰到的一些简单问题。随着学习深入,能够设计出有一定实用价值的程序,让计算“听”自己的话,按自己的意图运行。让学生感悟程序设计思想,体验程序设计过程,发现计算机运行的原理和规律,激发学生进一步继续学习的热情。让学生体验程序中严谨的态度并养成良好的习惯。引导学生发现程序设计中的美如:程序实现效果的美、算法代码规律美、数学模型的结构美。让学生的个性特长得到充分的展现和发展。三、活动流程:(一)导入新课程序设计“大佬”介绍:比尔-盖茨13岁开始学习编程,后创建微软,成为世界首富。马克-扎克伯格10岁开始学编程后来他创立了著名网站Facebook成了最年轻的亿万富翁。百度创始人李彦宏、腾迅创始人马化腾、新浪创始人王志东、网易创始人丁磊、360创始人周鸿祎,小米创始人雷军.....他们都有共同一个共同的起点—程序设计。巨人是学习榜样,是我们的目标,让我们也一同走进VisualBasic程序设计。经过大半学期的VisualBasic(VB)程序设计学习,我们学习了:了解了程序基本知识及常用程序设计语言;VB集成开发环境和VB语言的简单语法基础;会使用VB的窗体、VB标签、文本框、命令按钮、以及单选框等控件,同时掌握了这些控件的基本属性设置及访问方法;学习了VB常见变量类型及定义方式、数学运算、布尔运算、赋值语句、分支语句、循环语句等基础语句及其流程;能够编写和调试简单的VisualBasic程序。同学们在学习过程中有什么想法或困惑,我们就请一些同学来展示他们的学习的过程,编程实例及相关经验介绍。(二)小组汇报1、利用循环程序实现老鼠繁殖数量模拟。小组成员:刁俊熙()、徐伊雯()、付敏()(1)需求分析老鼠作为“四害”之一,十分猖獗。其根本原因老鼠的繁殖能力十分惊人。老鼠的繁殖能力极强,如果让雌、雄老鼠交配,母鼠21天就可以产下幼鼠。雄性幼鼠30天后就进入成年;雌性幼鼠40天以后就可以繁殖下一代。这些年轻的老鼠又会接连不断地生下幼鼠,生下幼鼠后,在6-10小时内又可进行交配,怀下另一胎。这样父母和子女同步生产,就像繁殖机器,使老鼠数量急剧增加。一对成年老鼠若干月后究竟能繁殖多少后代呢?如果用实验的方法来探究这个问题,那么,不管是时间成本、经济成本还是环境成本……代价都是巨大的。所以我们不可能用真实的实验来呈现老鼠的繁殖的规模!计算机模拟实验无疑是这个问题是最佳解决方案。(2)系统设计界面及接口设计:通过输入初始老鼠数量、繁殖时间等参数后计算机自动运行模拟计算出老鼠繁殖的总量。模型设计:为了简化数学模型我们先做以下假设:a)、一对老鼠每月繁殖一胎、平均6只。即:初生幼鼠数量=成年鼠/2*6,(也可以简化为:初生幼鼠数量=成年鼠*3)。

b)、初生幼鼠经历三个月后长成年老鼠。c)、老鼠总量=幼鼠+成年鼠。(3)程序编码a)变量的使用对于不同月龄的老鼠数量用不同的变量表示。其中,初生幼鼠数量用变量n0、一月鼠n1、……成年鼠m。其中幼鼠变量的类型都为整形:Integer,成年鼠的数量有可能会非常庞大所以采用长整型:Long。b)赋值语句老鼠的繁殖过程可以用赋值语句Letn0=m/2*6来实现;而老鼠的生长过程实现起来则要繁琐一些需要几条赋值语句同时使用:Letm=n3+mLetn3=n2

Letn2=n1

Letn1=n0

而且赋值顺序必须严格按照以上语句顺序进行,否则就会由于赋值混乱造成数据覆盖的严重后果!c)循环结构的使用由于可以根据繁殖时间精确得出循环执行的次数所以我们采用FOR循环语句来模拟实现老鼠的繁殖和生长情况,具体语句如下:Fori=1TomonthStep1m=m+n3n3=n2n2=n1n1=n0n0=m*3Nexti最终老鼠的总量计算则由代码LETm=m+n3+n2+n1+n0实现。(4)程序调试为了验证程序的执行效果,我们特意编排了一系列数据输入进行测试:在程序中输入下列数据:1、5、10、30、0、99999、-5……;b)在程序中输入下列数据:a、B、Hello、“米老鼠”、“唐老鸭”……。

经测试,程序对预期正常输入数据能作出正确输出,但对非法输入会报类型错误;超大数据则会溢出。针对这种情况,我们对程序进行了以下完善:a、利用Val、IsNumeric函数确保输入的合法性;b、利用if语句和Msgbox提示用户输入有效数据;c、对界面进行了进一步的规范和美化。(5)汇报答辩由学生观众和汇报成员互动答疑(略)(6)教师点评老鼠繁殖数量模拟程序属于计算机模拟实验的范畴。所谓计算机模拟实验是指:利用计算机模拟某种自然现象或实验现象。很多实验由于各种局限无法实施,如辐射因素、时间跨度、场地限制、危险系数……这时我们可以进行计算机模拟实验。通过一系列观察和推理过程建立它的数学模型;给定的模型条件下不断调整其参数并进行模型修正。这种计算机模拟实验也称作“干式实验”原子能实验、生物遗传实验、经济调控、气象灾害预报等领域有着广泛的运用。2、等差数列计算程序小组成员:吴佳轩()、刘源炳()(1)需求分析高斯是德国著名的大科学家,高斯最著名的故事莫过于小学时计算1+2+3+...+100的值。当时高斯上小学,老师在班上出了这样一道题,叫大家算。那个老师以为至少要20分钟以后才会有答案,正想休息一下,谁知刚坐下高斯就说算出来了。老师很惊讶,问他怎么算的,他就说先算1+100=101,2+99=101,。。。这样一共有50个101,因此1+2+3+……+100=5050

从1一直加到100其实就是一个经典的等差数列求和的计算。回忆起小学计算等差数列的情形无疑是很多同学的梦魇……(2)系统设计可以用VB程序求出任何等差数列的和,先用VB计算1到100的和

(3)程序编码Dima,s,d,f,gAsInteger

Letd=

Letf=

Letg=

Fors=dTofStepg

a=a+s

Nexts

Let=a(4)程序调试PrivateSubCommand2_Click()

DimtuichuAsInteger

tuichu=MsgBox("确定要退出吗?",1,"退出")

Iftuichu=1ThenEnd

EndSub

这样就行了(5)汇报答辩由学生观众和汇报成员互动答疑(略)(6)教师点评:在数学物理化学都有很多类似的数列的问题,虽然可以用数学的方法可以得出相应的计算方法,但是,如果要统计计算出相应的结果的话,则十分繁琐。而计算机通过编程则可以高效快速的计算出结果,因此,在物理化学,军事等高科技很多领域,采用计算机编程来计算结果已经必不可少。3、简易口算训练程序王智翔、龙威伍、罗博文()(1)需求分析口算训练是大家从小学一直到中学数学学习的必修课。我们每一个人都不厌其烦地做了无数道的口算练习、数学老师也孜孜不倦的批改了更多的口算,为了提高计算能力,大家可以说在这方面不断重复花费了太多太多的精力……能否利用计算机来辅助我们提高自己的计算能力呢?答案是肯定的。首先,我们需要随机生成一道口算加减法算式。用户回答后计算机判断正误并作出相应提示,用户单击“继续”后自动生成新的算式。(2)系统设计为了优化系统界面,我们运用了Label标签进行提示并判断计算的正误。同时运用了一些激励性话语进行评价。TextBox作为口算答案的输入框,但是TextBox的内容为文本类型,因此在判断答案正误时需要结合Val函数的使用才能比较。命令按钮CommandButton则是分别作为调用新算式生成过程以及判断正误过程的触发按钮。(3)程序编码a)Rnd函数和Int函数的使用。使用Rnd函数可以产生0~1之间的随机数。所以乘以100就变成了1~100之间的随机数。Int函数则可以把随机数的小数位裁掉,即取整函数。Leta1=Int(Rnd*100)

b)计算结果的判断Ifk=ValThen

="正确,你真行!单击“继续”做下一题。"

Else

="错了,要计算仔细哦!"

=""EndIfc)Randomize函数的使用。同一台计算机使用Rnd函数每次生成的随机数是一个相同的序列。Randomize语句可以改变这一情况,使随机函数每次生成的随机数都不同,从而让口算算式题目更为随机。d)如何实现加减法的随机出现。为了让算式中加减法随机交替出现,我们又一次巧妙的运用了Rnd函数。具体代码如下:Letd=Rnd

Ifd>Then

="+"

Letk=a+b

Else

="-"

Letk=a-b

EndIf(4)程序调试由于Val函数的使用,所以程序运行中没有出现数据类型不匹配的问题。在减法算式中偶尔会出现结果为负数的情况,如果小学生用到这个程序就可能无法解答的问题。为了解决这个小Bug又加入了以下代码:Ifa<bThenLetc=bLetb=aLeta=cEndIf这样就再也不会出现结果为负数的情况了。(5)汇报答辩由学生观众和汇报成员互动答疑(略)(6)教师点评:计算机辅助教学(ComputerAidedInstruction简称CAI)是计算机运用中的一个重要领域。学生计算能力的培养是数学教学中的基石。这个口算训练程序有着广泛的运用前景,可以让学生书包中的口算练习本全部“退休”!同时,也可以让辛苦的数学老师从批改口算本的繁重工作中解放出来,是一个非常不错的CAI程序。这个程序还可以进一步完善和优化:可以设定难度控制标志用于改变口算的难易程度,以覆盖更为广泛的学生群体。同时可以进一步加入乘数法的运算,让程序的功能更加完善。(三)教师总结VisualBasic面向对象程序设计选修课已经成功的开设了一学期了,同学们在课堂中取得了丰硕的成果。但我们开设这门选修课的目标不是为了把大家培养成为一名将来的程序员。感悟程序设计思想①抽象:从具体案例和实际问题中抽象出内在的数学模型。如:案例中老鼠的生长过程繁殖过程抽象为循环的过程;加减运算符号的随机转换为随机数大小的判断……

②算法:同一现象可能会演变为不同的程序模型,程序的算法实现也将衍生出不同的版本。我们需要对比不同算法的实现难度、简繁程度、执行效率等作出选择。

③角色转变:程序设计要求我们学会从计算机的角度思考问题。例如:从一系列数据中找出最大数,从人类的角度出发,这个问题十分简单。人运用了眼睛、大脑结合比较,具体思维过程一闪而过。而计算机就不同了它面对这些数据就像盲人摸象……所以这就要求程序设计者能够从截然不同的角度分析问题解决问题。体验程序设计过程现实需求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论