八年级信息技术教案

2023-07-23

八年级信息技术教案 篇1

  一、教学目标

  (1)通过学习能够识别计算机内部中的CPU、硬盘、音像设备、内存、光驱等硬件设备的主要功能。

  (2)能根据不同的任务选用不同的外部多媒体设备。

  (3)掌握常见外部设备的安装。

  二、教学重点

  把握计算机硬件的主要特点和性能,学会根据应用需求适当地选择或升级硬件。

  三、教学难点

  (1)计算机硬件型号与特性。

  (2)掌握“赫兹”与“字节”等单位。

  四、教学方法

  (1)交流、讨论的学习方法。

  (2)观察调查学习方法,将获取的资料归纳和,形成表格。

  五、教学时间

  1课时。

  六、教学环境

  计算机络实验室。

  七、教学过程

  教学环节 教学活动 设计意图

  (一)讨论交流

  1. 情境导入:

  A. 李鸣要求升级电脑。

  B. 如何看软件运行环境说明?

  2. 教师提出学习问题、学生分析讨论问题:

  A. 如何查看计算机的硬件配置?

  B. 多媒体计算机需要哪些配件?

  C. 如何帮助李鸣安装新打印机 从情境导入,激发起学生的学习兴趣与动力

  (二)教师讲授

  3. 教师讲解、分组(4人/组)学习:

  A. 教师演示如何查看硬件的配置表。

  B. 教师出示CPU、内存、硬盘、光驱的图片,向学生介绍各配置的性能和特点。

  C. 让学生说一说那些设备是计算机的音像设备。 通过教师的`讲解,解决学习中的重难点

  (三)分组活动

  4. 小组活动:出示windows vista操作系统运行环境说明,根据现在学生所使用的计算机分析能否满足使用要求,并提出硬件升级建议。

  A. 学生查看自己的计算机的硬件配置。

  B. 利用“我的电脑”和“资源管理器”了解硬盘分区容量的大小和各个分区中已使用的容量及剩余容量。

  C. 根据软件运行环境使用要求和计算机的实际配置,提己的升级建议并说己的理由。

  5. 教师:随着信息技术的快速发展,硬件设备的性能在不断提高,新的应用软件对硬件环境的要求也随之升级,计算机的升级换代也就不可避免。但要知道许多计算机部件都有可能成为整个系统性能的瓶颈,不应该盲目的进行升级换代。如果我们没有找出真正的瓶颈,简单的更换CPU不会从根本上解决问题,简单的购买新机器更是不可取,也不符合建设节约型社会的要求 以学生的活动促进学生的自主学习,理解掌握知识

  (四)小组自主学习

  6. 学生自主学习:

  A. 教师根据李鸣要用多媒体汇报学习的实际,让学生分析可能使用到的多媒体外部设备。

  B. 学生分组分析,结合课文,提出本组选用的多媒体外部设备。

  C. 小组学习汇报。 让学生自主学习,培养学生学习能力和分析思考问题的能力

  (五)教师讲解演示

  7. 教师演示安装新设备。

  A. 教师演示如何安装摄像头,对于一些安装的细节借助视频进行演示。

  B. 教师演示如何安装驱动程序

  (六)归纳概括

  8. 教师归纳概括,帮助学生计算机的各种配件、外部设备和安装软件的方法 教师对知识进行归纳,点拨方法要点

  (七)课后练习

  9. 布置课后练习:

  A. 指导学生到电脑商场实地了解各种硬件配置。

  B. 通过上搜索了解最新计算机配件情况。 鼓励学生积极利用现实资源和络开展学习,拓展学习的时空,加强与他人的沟通与交流。

八年级信息技术教案 篇2

  一、教学设计

  (一)教学目标

  知识与能力

  1、掌握两种工作表的插入和删除方法及工作表的重命名。

  2、熟练掌握行和列的插入、删除方法。

  3、熟练掌握两种行高和列宽的调整方法,并理解两种方法的优缺点。

  4、掌握两种单元格的合并和拆分方法

  过程与方法、

  1、任务驱动及课件展示,引导学生边看书边进行操作。

  2、老师通过巡回指导、积极鼓励,张扬学生的个性,提高学生的学习兴趣。

  3、通过学生的交流,相互之间取长补短,共同进步。

  4、通过教学评价,使学生本节课所掌握的知识点得以固巩和强化。

  情感态度与价值观

  1、培养学生独立思考及相互合作的意识。

  2、逐渐培养学生动手操作的能力及发现问题、解决问题的能力。

  (二)内容分析

  《数据表的操作》是在学生掌握了Excel的启动、退出、窗口的组成、文件的打开和保存,认识了工作表、单元格,学会了数据表格的选择之后,进一步深入学习对工作表、单元格进行操作的一节内容,主要分为三部分:一是对工作表的操作;二是对行、列的操作;三是对单元格的操作。

  结合自己多年的教学实际和八年级学生的认知水平,经常遇到的问题有以下几方面:一是重命名工作表时,一部分学生选择重命名操作后,不是直接输入新的工作表名称,而是先删除原先的工作表名,使之为空,但却没有及时输入新的工作表名称,而是进行下一个操作,就会出现问题提示,有些学生不注意观察,操作就没有办法继续进行;二是在插入行和列时,有些学生不清楚到底应该插在指定行的上下或者指定列的的左右;三是在进行单元格的合并和拆分时,有些学生不能根据内容进行操作,以致于内容丢失或者合并或拆分后的单元格不规范。

  只要本节课能突破以上三个问题,就为以后深入学习Excel扫清障碍,做好了铺店,用电子表格处理数据就能做到得心应手,方便快捷的解决学生现实生活中的相关问题,从而激发学生的学习兴趣。

  根据以上内容,确定本节课的教学重点、难点如下:

  重点

  1、重命名工作表

  2、行和列的操作

  3、单元格的合并和拆分

  难点

  1、行和列的插入

  2、根据内容对单元格进行合理的合并或拆分

  (三)学生分析

  八年级学生经过七年级一年计算机基础知识的学习,对计算机的简单操作已基本掌握,特别是对第一节《初识Excel》的学习,已经具备了Excel方面的基础知识,特别是对Excel的强大功能有了进一步的了解,这就更加激发了他们的学习兴趣。

  八年级是学生身体发育的旺盛、思维活跃的阶级,他们的好奇心强,学习、探索运用知识的欲望高。因此,我在教学过程中充分抓住学生这些特点,设置任务,积极引导,激发兴趣,启发思维,巡回指导,积极鼓励,张扬人性,增强自信,培养学生自主、合作、探究学习的能力。

  (四)教学策略设计

  1.教学方法设计

  这节课依据“面向全体学生,提高信息科学素养,倡导探索性学习”的新课改理念,充分体现学生在课堂上的主体作用,在多媒体教学课件的引导下,以任务驱动贯穿始终,培养学生自主、合作、探究的学习能力,让课堂成为知识产生和建构的阵地,让学生作为学习的主体,积极主动的去学习,提高课堂教学质量。

  在这节课的教学时,当学生按照课本上的方法,掌握了工作表的的插入和删除后,为了培养学生探究学习的能力,再提问谁能找到工作表插入的第二种方法,有些同学就会通过删除工作表的方法找到答案(右键单击相应工作表,就会出现快捷菜单,单击“插入”即可)。

  为了激发学生学习兴趣,提出问题:那一位同学能把一个工作薄中的所有工作表删除完(其实删不完,至少要有一个工作表)。为了能完成教学内容,增大课堂容量,将“学生情况表”提前通过电子教室发到每台电脑指定的位置中,这样节省了大量的输入数据的时间,顺利的完成教学。

  这样授课内容灵活机动,遇到问题解决问题,并不严格依照课本教学内容行事。另外,每节课适当安排游戏上网的时间,提高学生的学习兴趣,扩展知识面。

  2.学生上机操作安排和教师应用信息技术的情况

  (1)学生在任务的驱动和课件的引导下,通过自学、探究、合作掌握对工作表、行和列、单元格的熟练操作。在对行和列、单元格进行操作时学生得到的数据是八年级学生情况始数据,通过对此表的操作,掌握对行、列的删除及调整和单元格的合并与拆分。

  教师在巡回指导时,应注意提倡学生自主、合作学习,开展学生间的互助。鼓励做得快的学生帮助做得慢的学生,相互学习,共同进步,张扬他们的个性;鼓励学生在探究过程中进行的不断的尝试操作,即使是错误的方法,最后明白为什么错;注意观察学生在操作中出现的具有普遍性的不良操作习惯和错误操作方法,及时给予纠正,对有新意的,进行表扬。

  (2) 在微机室进行教学,单人单机,并配有大屏幕;教学软件采用传奇电子教室,该软件可以实现广播教学、信息发布、单独辅导、学生演示等功能;软件资源:excel,还需要一个excel文件,将文件通过电子教室传到每台电脑;课件。

八年级信息技术教案 篇3

  第四章 择路而行---选择结构程序设计

  第一节 路口诀择----条件语句

  一、教学目标

  1、 掌握选择结构程序中常用的qbasic语句。

  2、 掌握选择结构程序设计方法。

  3、 能利用选择结构程序设计解决简单的实际问题。

  二、教学重点:

  1.选择结构的语句及功能

  2.选择结构中程序设计方法。

  三、教学方法:讲授法,对比法,分组讨论法。

  四、教学时间:2课时

  五、教学教程:

  (一)引入新课:前面我们学习了顺序结构程序设计,利用顺序结构只能设计一些较简单的程序,如果要处理复杂的问题,就需要采用另外两种基本结构:选择结构和循环结构。选择结构,是一种常用的主要基本结构,是计算机科学用来描述自然界和社会生活中分支现象的重要手段。其特性是:无论分支多寡,必择其一;纵然分支众多,仅选其一。

  (二)讲述新课

  l  单行条件选择语句if

  1、单行结构条件语句if…then…else

  格式:if <条件> then <语句1> [else  <语句2>]

  功能:最简单的条件选择语句,用来进行条件判断,使语句有条件的执行。

  说明:

  1)当<条件>为真(非零数)时,则执行<语句1>。

  2)else语句可以省略。

  3)当<条件>为假(零)时,而且语句中有else语句则执行<语句2>。

  4)if、then、else必须在同一行上。

  2、示例     a、 输入x的值,计算y的值。

  rem  程序名为:eg1.bas

  input “请输入x的值:”,x

  if x>=0 then y=1+x else y=1-2

  print "y=";y

  end

  例:  求一元二次方程ax2+bx+c=0(a<>0)的实数根。

  分析:写写出程序的流程图,参考流程图来写程序。

  程序清单如下:

  input a,b,c

  d=b*b-4*a*c

  if d<0 then then

  x1=(-b+sqr(d))/(2*a)

  x2=(-b-sqr(d))/(2*a)

  print “x1=”;x1, “x2=”;x2

  else

  print “此方程无实根”

  end

  练习:

  1、 当x>=5时,输入x的值并计算表达式y=2x-5的值。

  input x

  if x>=5 then y=2-5

  print y

  end

  2、 输入a、b、c三个数,要求将绝对值最大者打印出来。

  input a,b,c

  if abs(a)>abs(b) and abs(a)>abs(c) then print “绝对值最大的为”;a

  if abs(b)>abs(a) and abs(b)>abs(c) then print “绝对值最大的为”;b

  if abs(c)>abs(a) and abs(c)>abs(b) then print “绝对值最大的为”;c

  end

  l  块结构条件语句if…then…else…end if

  1、格式:if<条件1>then

  [<语句组1>]

  [elseif<条件2> then

  [<语句组2>]]

  [elseif<条件3> then

  [<语句组3>]]

  ……

  [else

  [<语句组n+1>]]

  end if

  2、说明

  then必须放在if或elseif语句的尾部。

  3、举例

  1)程序名为:eg2.bas

  input "请输入x的值:",x

  if x>=0 then

  y=1+x

  else

  y=1-2

  end if

  print "y=";y

  end

  2)编写程序,任意输入一个整数,判定该整数的奇偶性。

  讲解其中的一种方法,让学生想第二种方法。

  input “enter a number:”;n

  if n mod 2=0 then print n:“is even”else print n:“is odd”

  end

  或者用块if语句:

  input “enter a number:”;n

  if n mod 2=0 then

  print n;“is even”

  else

  print n;“is odd”

  endif

  end

  *4、练习

  任给定一年,判断该年是否闰年(闰年的条件:109页练习题8  year mod 4=0 and year mod 100<>0 or year mod 400<>0)

  input “请输入年份”;year

  if year mod 4=0 and year mod 100<>0 or year mod 400<>0   then 

  print year ;“是闰年”

  else 

  print year ;“是平年”

  endif

  六、小结(学生总结分支结构的程序设计)

  七、作业:课后练习1-4题。

  教学后记:

  第二节 指点迷津----select case语句

  一、学习目标

  了解select case的特点。

  二、教学重点

  掌握select case的使用方法。

  三、教学难点

  select case的应用。

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  用嵌套的if语句可实现多分支选择   

  1、基本格式 

  select case <变量>

  case <值1>  

  <语句组1>

  case <值2>  

  <语句组2>

  …

  case <值n>  

  <语句组n>

  case else  

  <语句组n+1>

  end select   

  每一个case句中指定一个值条件,当case变量的值符合条件时,执行该子句下面的语名组,在执行完该语句组后,跳过其它case子句,从end select转出。    

  c=int(s/250)    

  2、在case子句中使用to 

  case <值1> to <值2>   

  3、在case子句中使用is   

  case is <关系运算符> <表达式>  

  4、在case子句中使用多个条件   

  允许在一个case子句中指定多个条件,各条件   之间用逗号分开。  

  条件=单值、值范围、单条件

  5、select case语句的一般格式  

  select case <测试表达式>

  case <条件11>,<条件12>,…

  <语句组1>

  case <条件21>,<条件22>,…

  <语句组2>

  …

  case <条件n1>,<条件n2>,…

  <语句组n>

  case else  

  <语句组n+1>

  end select   

  六、多分支转移语句 

  格式:on <算术表达式> goto <标号1>,<标号2>,…

  七、多分支选择结构小结  

  1、if-then-else(用if的嵌套) 

  分支(条件)较少时使用。  

  2、select case 

  分支(条件)较多时使用。 

  3、on goto 

  非结构化程序设计,不宜使用。 

  教学后记:

八年级信息技术教案 篇4

  第一章 精打细算当管家

  第一节  建立“我家的收支统计表”

  一、教学目标

  知识方面:

  1.使学生掌握启动、退出excel的方法。

  2.使学生了解excel窗口的组成。

  3.使学生掌握单元格、工作表、工作簿等概念。

  4.使学生掌握如何建立一张简单的工作表。

  5.使学生掌握保存工作簿的方法。

  技能方面:

  1.使学生建立数据处理的概念。

  2.培养学生的操作能力。

  3.培养学生获取信息和解决实际问题的能力。

  情感方面:

  1.培养学生对知识进行迁移、运用的能力。

  2.培养学生主动查找和获取信息的意识。

  二、教学重点

  1.单元格、工作表、工作簿的概念。

  2.工作表、工作簿的建立和保存。

  三、教学难点

  建立工作表。

  四、教学方法

  1.演示法。

  2.观察法。

  3.自学法。

  4.启发式。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  八、板书

  教学内容、步骤与方法

  一、导入课题

  教师展示如图1-1所示的成绩统计表。要求学生讨论在word中怎样绘制这个表格。

  教师小结:如果需要对表格中的数据进行大量的计算,应用word就不方便了。由此引出学习新的软件——excel电子表格软件。

  二、新课

  1.启动excel

  教师介绍:excel和word一样,是microsoftoffice家族的成员,启动方法与word相同。

  教师要求学生自己尝试启动excel。

  2.认识excel窗口

  教师提出要求:观察excel窗口与word窗口有哪些相同之处和不同之处。

  结合excel窗口,教师介绍单元格、行号、列号、名称栏、编辑栏以及工作表标签等。

  3.几个概念

  教师展示含有多张工作表的工作簿。结合此工作簿介绍单元格、工作表、工作簿等概念。

  教师提问:单元格、工作表、工作簿三者是什么关系?

  教师介绍:按下ctrl键,再按四个方向键,可以快速到达工作表各个边界。

  教师要求学生找出表中共有多少行多少列。

  4.建立简单的工作表教师演示在单元格中输入数据的方法。

  教师布置任务:在excel中制作一张初一(2)班成绩统计表(第3页例1中的表格)。

  5.保存文件

  教师讲解:在excel中保存文件的方法与word中保存文件的方法相同,excel系统自动为文件添加的扩展名为“xls”。

  教师要求学生把新建的表格以“成绩表”为文件名保存。

  三、课堂练习

  完成书中第5页课后练习1、2。

  四、课堂小结

  教师与学生一起小结本节课的内容,强调①单元格是工作表的基本组成单位,在单元格中可以输入各种数据。②工作表是由单元格组成的,一个工作簿中可以有多张工作表。③excel以工作簿为文档文件,文件的扩展名为“xls”。

  五、布置作业

  通过查阅报纸、期刊等方法制订一张组装电脑的报价表,要求写清 各种配件的名称以及价格,最好给出多种方案。

  教学后记:

  第二节 设计“我家的收支统计表”格式

  一、教学目标

  知识方面:

  1.使学生掌握改变表格列宽和行高的操作方法。

  2.使学生掌握在表格中插入行或列的操作方法。

  3.使学生初步掌握隐藏行或列的操作方法。

  技能方面:

  1.使学生掌握表格的编辑方法。

  2.培养学生运用所学知识解决实际问题的能力。

  情感方面:

  培养学生通过实践学习计算机知识的意识和能力。

  二、教学重点

  1.改变表格的行高和列宽。

  2.插入行或列。

  三、教学难点

  改变表格的行高和列宽。

  四、教学方法

  1.演示法。

  2.观察法。

  3.自学法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  一、导入课题

  教师打开学生制作的“装机指南”表(见图5-1),要求学生利用求和函数求出总计。

  教师提问:“装机指南”表中有什么问题?需要怎样改正?

  由需要增加新项目等问题导入课题。

  二、新课

  1.改变表格的列宽和行高

  (1)改变表格的列宽

  教师介绍并演示改变表格列宽的三种方法:

  ①拖动鼠标调整一列表格的右边界(可调整到任意大小)。②直接双击一列表格的右边界(调整至最合适的列宽)。③选定某几列,双击右边界,可以使选定的列的列宽相同。

  教师布置任务:打开“成绩表”,按书中第26页例1要求,完成表格列宽的调整。

  (2)改变表格的行高

  教师布置任务:自学掌握改变表格行高的操作方法。

  2.插入行或列

  (1)插入行

  教师讲解并演示插入行的操作,在“装机指南”表中添加显示器的型号、价格,提示学生注意观察插入行后“总计”一项的变化。

  教师布置任务:插入书中第26页例2给出的数据。

  (2)插入列

  教师要求学生自学在表中插入列的方法,并按书中第28页例3的要求,插入一列数据,注意观察“总分”、“平均分”数据的变化。 

  3.隐藏行或列

  教师介绍:利用隐藏行或列的功能可以将暂时不用的数据隐藏起来。 

  教师演示隐藏一列数据和将数据恢复显示的操作。 

  教师要求学生练习隐藏行列的操作。 

  三、课堂练习

  完成书中第31页习题1、习题2、习题3。 

  四、课堂小结

  教师与学生共同小结本课所学知识强调使用函数计算的特点。 

  五、布置作业

  为学校秋季运动会设计一张“运动成绩统计表”。   

  教学后记:

  第三节 在“我家的收支统计表”中输入数据

  一、教学目标

  知识方面:

  1.使学生掌握改变表格列宽和行高的操作方法。

  2.使学生掌握在表格中插入行或列的操作方法。

  3.使学生初步掌握隐藏行或列的操作方法。

  技能方面:

  1.使学生掌握表格的编辑方法。

  2.培养学生运用所学知识解决实际问题的能力。

  情感方面:

  培养学生通过实践学习计算机知识的意识和能力。

  二、教学重点

  1.改变表格的行高和列宽。

  2.插入行或列。

  三、教学难点

  改变表格的行高和列宽。

  四、教学方法

  1.演示法。

  2.观察法。

  3.自学法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  一、导入课题

  教师打开学生制作的“装机指南”表(见图5-1),要求学生利用求和函数求出总计。

  教师提问:“装机指南”表中有什么问题?需要怎样改正?

  由需要增加新项目等问题导入课题。

  二、新课

  1.改变表格的列宽和行高

  (1)改变表格的列宽

  教师介绍并演示改变表格列宽的三种方法:

  ①拖动鼠标调整一列表格的右边界(可调整到任意大小)。②直接双击一列表格的右边界(调整至最合适的列宽)。③选定某几列,双击右边界,可以使选定的列的列宽相同。

  教师布置任务:打开“成绩表”,按书中第26页例1要求,完成表格列宽的调整。

  (2)改变表格的行高

  教师布置任务:自学掌握改变表格行高的操作方法。

  2.插入行或列

  (1)插入行

  教师讲解并演示插入行的操作,在“装机指南”表中添加显示器的型号、价格,提示学生注意观察插入行后“总计”一项的变化。

  教师布置任务:插入书中第26页例2给出的数据。

  (2)插入列

  教师要求学生自学在表中插入列的方法,并按书中第28页例3的要求,插入一列数据,注意观察“总分”、“平均分”数据的变化。 

  3.隐藏行或列

  教师介绍:利用隐藏行或列的功能可以将暂时不用的数据隐藏起来。 

  教师演示隐藏一列数据和将数据恢复显示的操作。 

  教师要求学生练习隐藏行列的操作。 

  三、课堂练习

  完成书中第31页习题1、习题2、习题3。 

  四、课堂小结

  教师与学生共同小结本课所学知识,再次强调使用函数计算的特点。 

  五、布置作业

  为学校秋季运动会设计一张“运动成绩统计表”。   

  八、板书

  教学后记:

  第四节 使用公式计算数据

  一、教学目标

  知识方面:

  1.使学生掌握输入数值、文本、日期和时间的方法。

  2.使学生掌握修改数据的方法。

  3.使学生学会利用公式进行数据计算。

  技能方面:

  使学生学会处理数据的基本方法。

  情感方面:

  1.培养学生使用计算机进行数据处理的意识。

  2.培养学生耐心、细致的工作态度。

  二、教学重点

  1.输入数值、文本、日期和时间的方法。

  2.修改数据的方法。

  3.利用公式进行数据计算。

  三、教学难点

  利用公式进行数据计算。

  四、教学方法

  1.演示法。

  2.观察法。

  3.自学法。

  4.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程(见下表)

  八、板书

  一、导入课题

  教师打开上节课课堂练习完成的“账目表”,让学生观察单元格中文字和数字的对齐方式有什么不同,引出计算机处理数值型数据和文本型数据的方式不同。由此导入课题。

  二、新课

  1.数据的输入

  (1)输入数据的两种方法

  教师讲解并演示:

  方法一:单击要输入数据的单元格,直接输入数据。方法二:先单击单元格,再单击编辑栏,可以在编辑栏中编辑或添加单元格中的数据。

  (2)输入数值

  教师演示输入整数、小数、分数、百分数的方法,并要求学生上机练习。

  教师强调:

  ①输入纯分数时,要先输入0和空格,否则系统会按日期处理。

  ②单元格中可显示的数值长度为11位,超过11位时,以科学记数形式表示。

  ③在单元格中,系统默认的数值显示方式是右对齐。

  (3)输入文本教师演示输入字母、数字和符号的方法,要求学生观察屏幕显示内容并上机练习。

  教师强调:

  ①系统默认的文本显示方式是左对齐。

  ②如果需要将数字作为文本处理,需要在开始时先输入一个单引号“’”。

  (4)输入日期和时间

  教师布置任务:按书中第9页例3的要求,输入日期和时间。

  2.修改数据

  教师一边讲解一边演示修改数据的方法:

  (1)输入过程中出错:用backspace键删除错误的字符,然后输入正确的内容。

  (2)输入完毕后发现错误:

  ①按delete键,删除数据,再重新输入。

  ②输入新的数据将原来的内容覆盖。

  ③修改单元格中的部分数据,可双击需要修改的单元格,然后移动光标进行修改。

  3.利用公式计算

  (1)公式的组成教师讲解公式的组成,强调:

  ①首先必须输入“=”,表示将要输入的是一个公式。

  ②所有参与公式运算的数值和符号都必须是西文半角字符。

  ③运算符与数学上的表示不同。

  (2)输入公式

  教师一边讲解一边演示:输入“=(9*2)^2”,按回车键确认,由学生观察并回答单元格与编辑栏显示内容有什么不同。

  教师布置任务:自学完成书中第11页例4、例5。

  三、课堂练习

  完成课后练习4。

  四、课堂小结

  教师与学生共同小结所学内容,强调:①excel数据分为字符和数值两类,字符型数据不能参加运算。②输入数据要认真细致。

  五、布置作业

  利用输入公式计算的方法,完成组装电脑报价表的计算。

  八、板书

  教学后记:

  第五节 使用函数计算数据

  一、教学目标

  知识方面:

  1.使学生掌握求和函数、求平均值函数的使用方法。

  2.使学生掌握求最大值函数、求最小值函数的使用方法。

  技能方面:

  1.使学生掌握分析数据、处理数据的能力。

  2.培养学生管理数据的能力。

  3.培养学生综合运用所学知识,解决实际问题的能力。

  情感方面:

  1.培养学生主动思考,积极探索的精神。

  2.培养学生耐心、细致的工作作风。

  二、教学重点

  1.求和函数、求平均值函数的使用。

  2.求最大值、最小值函数的使用。

  三、教学难点

  求和函数、求平均值函数的使用。

  四、教学方法

  1.演示法。

  2.观察法。

  3.实践法。

  五、教学手段与教学媒体

  1.多媒体网络教室。

  2.教师准备的表格素材。

  六、课时安排

  1课时。

  七、教学过程

  一、导入课题

  教师展示学生制作的“家庭水、电、煤气费用支出表”,同时提出问题:如果在表格中增加一个月的数据或增加一个新项目(如,电话费),利用原来输入公式的方法,会不会出现错误?

  教师介绍:利用excel提供的函数完成计算,可以避免这样的麻烦。由此引出课题——函数的使用。

  二、新课

  1.求和函数

  (1)使用sum函数

  教师打开“成绩表”文件,讲解并演示使用sum函数求出王一明同学总分的方法。

  教师布置任务:按书中第20页例1的要求,添加数据,并利用sum函数计算总分。

  教师提出问题:能不能利用自动填充功能简化重复求和的操作?

  (2)使用自动求和工具按钮

  教师介绍,excel提供了自动求和工具按钮,使用按钮也可以完成自动求和操作。

  教学内容、步骤与方法

  教师布置任务:试一试利用自动求和按钮求出张建同学的总分,然后在“成绩表”下面添加“科目总分”一项,利用自动求和按钮计算“科目总分”。

  2.求平均值函数

  教师介绍求平均值函数是average,它的使用方法与sum函数相同。

  教师布置任务;利用求平均值函数计算平均分。提醒学生注意选择数据区域的问题。

  教师要求学生演示利用求平均值函数计算平均分的操作方法。

  教师布置任务:在“成绩表”下面添加“科目平均分”一项,计算科目平均分。

  3.求最大值函数和求最小值函数

  教师介绍最大值和最小值函数分别是max和min后,布置任务:在“成绩表”下面添加“科目最高分”、“科目最低分”,然后利用两个函数求出最高分和最低分。

  4.其他函数

  教师参照书中第24页表一,简单介绍其他几个函数的用途。

  三、课堂练习

  完成课后习题1、2。

  四、课堂小结

  师生共同小结本节课所学的内容,强调使用函数完成计算的特点。

  五、布置作业

  用函数计算“家庭费用支出表”中的数据。

  八、板书

  教学后记:

  第六节 数据处理

  一、教学目标

  知识方面:

  1.使学生掌握排序的操作方法。

  2.使学生了解排序的几种类型。

  技能方面:

  1.培养学生处理数据的能力。

  2.培养学生运用所学知识解决实际问题的能力。

  情感方面:

  1.培养学生认真、细致的学习态度。

  2.培养学生运用所学知识解决实际问题的意识。

  二、教学重点

  排序的操作方法。

  三、教学难点

  设置主要关键字和次要关键字排序。

  四、教学方法

  1.讨论法。

  2.演示法。

  3.实践法。

  五、教学手段与教学媒体

  1.多媒体网络教室。

  2.教师准备的表格。

  六、课时安排

  1课时。

  七、教学过程

  一、导入课题

  教师展示几个学生设计的“运动成绩统计表”,让大家评价。

  教师小结:由大家的评价中我们可以看到,一些表格缺少“名次”一项。由此引出课题——排序。

  教师打开“成绩表”文件,介绍按“总分”(关键字)进行升序排序的方法。

  教师要求学生打开“成绩表”文件,然后以“总分”为关键字,将“成绩表”按降序排序。

  针对学生提出的问题:排序中出现了“总分”相同的情况,excel怎样进行的处理?教师引出次关键字和使用菜单进行排序。

  2.使用菜单排序

  教师演示利用菜单中的排序命令设定主要关键字、次要关键字完成排序的操作方法。

  教师布置任务:将“成绩表”中的平均分按降序排序,分数相同时,按语文成绩降序排序。

  教学内容、步骤与方法

  教师布置任务:在“成绩表”最后添加“名次”一栏,填入名次,再按学号升序排序(还原为最初的排列顺序)。

  3.排序种类教师介绍:一般情况下,总是按照数值大小排序,excel还提供了按字母顺序、按姓氏笔画排序等方式。

  教师演示按照姓氏笔画排序的操作方法。

  教师布置任务:将“成绩表”按照姓氏笔画排序。

  三、课堂练习

  打开自己设计的“运动会成绩统计表”,增加缺少的项目,然后按自己设置的主关键字、次关键字进行排序。

  四、课堂小结

  教师和学生共同小结本课所学的内容,强调:在学习、生活、工作中用到排序的地方很多。

  经过排序后的数据,便于观察,易于从中发现规律。

  五、布置作业

  设计一张“班级同学情况调查表”,包括同学的姓名、出生年月、血型、爱好、联系电话等,并按姓名的姓氏笔画排序。 

  教学后记:

  第七节 创建数据图表

  一、教学目标

  知识方面:

  1.使学生掌握在excel中插入统计图表的操作方法。

  2.使学生初步掌握调整统计图表坐标系的操作方法。

  技能方面:

  1.培养学生用统计图表分析数据的能力。

  2.培养学生管理数据的能力。

  情感方面:

  培养学生认真、细致的学习态度。

  二、教学重点

  1.插入统计图表。

  2.调整统计图表的坐标系。

  三、教学难点

  1.插入统计图表。

  2.调整统计图表的坐标系。

  四、教学方法

  1.观察法。

  2.演示法。

  3.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  教学内容、步骤与方法

  一、导入课题

  教师展示“人口普查”图表,引导学生观察表格中的统计图表,并得出人口增长数逐年递减的结论,由此导入课题。

  二、新课

  1.插入统计图表

  教师介绍统计图表的用途:可以直观地分析数据,尤其是数据比较多时更显出方便之处。

  教师一边讲解一边演示插入统计图表的操作方法:“插入”→“图表”→选择图表类型(折线图)→选择数据区域(自然增长人数)→输入图表标题、x轴、y轴标题,然后按照提示窗口的要求操作即可完成图表的插入。

  教师布置任务:

  (1)打开学生目录下的“人口普查”表格,在其中插入统计图表。

  (2)改变图表中的数据,观察图表的变化。

  2.调整坐标系

  (1)调整字体

  教师演示修改坐标轴字体对齐方式的操作:双击坐标轴处的文字,打开坐标轴格式窗口,选择“对齐”标签,选择文本的显示方式。

  教师要求学生:调整坐标轴字体的角度。

  (2)调整刻度

  教师演示调整坐标轴刻度的操作:双击坐标轴文字,在坐标轴格式窗口中选择“刻度”标签进行修改。

  教师要求学生:将主要刻度单位调整为100。

  三、课堂练习

  1.打开“成绩统计”表格,添加统计图表。

  2.完成课后练习1、2。

  四、课堂小结

  教师和学生共同小结所学内容,强调:①生成图表首先要选择图表所需要的数据。②当工作表中的数据发生变化时,由这些数据生成的图表会自动进行调整,以反映数据的变化。

  八、板书

  教学后记:

八年级信息技术教案 篇5

  第八章 程式序设计个性化----函数和子程序

  一、学习目标

  1.掌握模块化程序设计思想

  2.掌握函数与子程序的定义及使用

  3.理解全局变量与局部变量

  4.了解参数的传送过程

  二、教学重点

  掌握模块化程序设计

  三、教学难点

  掌握函数与子程序的定义及使用

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  “模块化程序设计”中的“模块”是指:完成程序全部或部分任务的独立源程序文件。 

  程序的每一个模块可以是子程序或函数,它是通过执行一系列语句来完成一个特定的操作过程,常称为“过程”。   

  “执行一个过程”——调用一个子程序或函数;   

  一、自定义函数   

  qbasic函数:   

  ①标准函数   

  ②自定义函数   

  ③外部函数

  1、单行自定义(def)函数   

  语句函数——用一个语句定义一个函数

  (1). 一般格式;

  def fn<名字>(<参数>)=<表达式>   

  例1. 已知圆的半径r,求圆的面积:s=πr2   

  def fns(r)=3.14159*r*r

  print fns(3)

  end

  例2.def fns$=”this is a string”   

  print fns$

  例3.  求以下公式:   

  def fnc(a,b)=sqr(a*a+b*b)

  print fnc(3,4)

  (2).说明

  • 函数名由两部分组成

  fn s   

  自定义函数标志(fn),用户定义名(一个字母s);   

  • 参数可有多个,但调用时的参数(实参)与定义时的

  参数(形参)要一致。

  2、多行自定义(def)函数   

  用多行语句来定义一个函数。   

  (1)、一般格式   

  def fn<名字>(<参数>) 

  ......   

  fn<名字>=<表达式>

  end def

  例4、定义函数f(n)=1+2+...+n

  def fns(n)

  s=0

  for i=1 to n

  s=s+i

  next i

  fns=s

  end def

  for n=1 to 100  

  print fns(n)  

  next n  

  end

  (2)、说明

  (i)形式参数——定义函数的自变量   

  实际参数——调用函数时的参数。

  (ii)函数先定义后使用,即习惯把def语句   

  放在程序的开头。

  二、块内子程序   

  1、gosub-return 语句

  子程序定义:   

  <标号或行号>:  

  ......   

  return

  子程序调用:   

  gosub <标号或行号>

  例5:求4!+5!+6!   

  s=0  

  n=4: gosub f:s=s+p  

  n=5: gosub f:s=s+p  

  n=6: gosub f:s=s+p  

  print “4!+5!+6!=”;s  

  end  

  f: p=1  

  for i=1 to n  

  p=p*i  

  next i  

  return

  2、on gosub-return 语句

  (1).一般格式   

  子程序定义:   

  <标号>: 

  ......   

  return

  子程序调用:

  on <表达式> gosub <子程1>,<子程2>,…,<子程n>   

  例:“小学生算术练习”——轮流出一个二位数和一个一位数的加法、减法和乘法的题目,共出十题,每题 10分。   

  randomize  

  for i=1 to 10  

  a=int(90*rnd)+10  

  b=int(9*rnd)+1  

  p=i mod 3 + 1  

  on p gosob a1,a2,a3

  next i  

  print "n=";n*10  

  end

  a1: print a;"+";b;"=";

  input c  

  if c=a+b then n=n+1  

  return 

  a2: print a;"-";b;"=";

  input c

  if c=a-b then n=n+1  

  return

  a3: print a;"*";b;"="   

  input c  

  if c=a*b then n=n+1  

  return.

  (2)、说明:

  <表达式>的值不是整数时,按四舍五入处理,值为0或大于n则不起作用,值为负时系统给出错误信息——“不正确的函数调用”。   

  3、on key(n) gosub-return 语句

  (1)、调用格式

  on key(n) gosub <标号>

  其中n是数值表达式,代表一个“陷阱键”。n的值与  设定键的对应关系如下:   

  n值 键名

  1~10    功能键f1~f10

  11 方向键↑

  12 方向键←

  13 方向键→

  14 方向键↓

  例: 求和式:s=12+22+...+n2   n=100000

  on key(2) gosub pri  

  key(2) on  

  s=0  

  for i=1 to 100000  

  s=s+i*i  

  next i  

  pring “s=”;s  

  end

  pri:print “now swm is”;s,”i=”;i  

  return

  (2).说明   

  设置陷阱:on key(n) gosub <标号>  

  打开陷阱:key (n) on  

  关闭陷阱:key (n) off

  三、独立模块的子程序   

  1、建立子程序   

  格式:sub <子程序名>[(<参数表>)]

  ………

  end sub

  2、子程序的调用   

  (1).格式   

  declare sub <子程序名>[(<参数表>)]  

  ………  

  call <子程序名>[(<参数表>)]

  或 <子程序名> <参数表>

  例:sub stars(n)   

  for i=1 to n  

  print “*”;  

  next i  

  print  

  end sub  

  _________________________

  declare sub stars(n)  

  call stars(30)  

  call stars(18)  

  end

  (2). 说明   

  i)declare 为外部子程序说明语句,主程序调用多少个子程序,就有多少个declare语句;  

  ii)call语句的“call”可以省写,参数的括弧也   

  可不写;   

  如: call stars(30)

  可写成: stars 30

  3、参数传递   

  (1).值传递方式   

  call stars (30)  

  ......   

  sub stars (n)

  (2).地址传递方式   

  a=30  

  call stars(a)  

  ......  

  sub stars(n)

  例:求4!+5!+6!+7!   

  子程序:sub fact(n,f)  

  f=1   

  for i=1 to n

  f=f*i   

  next i  

  end sub

  主程序:declare sub fact(n,f)

  for i=4 to 7  

  call fact(i,f)  

  s=s+f  

  next i  

  print “s=”;s  

  end

  注:地址传递方式是当实际参数为变量时发生,它将可能会改变原变量的值,若实际参数是变量时,又不想用地址传递(即用值传递方式)则可把变量用括号括起来。   

  例:求两个整数的最大公约数和最小公倍数。(p208)  最小公倍数=(m*n)/最大公约数   

  求最大公约数子程序:   

  sub hcf(m,n,h)  

  if m<n then swap m,n  

  r=m mod n  

  do while r<>0  

  m=n   

  n=r  

  r=m mod n  

  loop  

  h=n  

  end sub

  求最小公倍数子程序:   

  sub lcm(m,n,h)  

  h=m*n/h  

  end sub

  主程序:   

  declare sub hcf(m!,n!,h!)  

  declare sub lcm(m!,n!,h!)  

  input "m,n=";m,n  

  call hcf(m,n,h)  

  print "最大公约数为:";h  

  call lcm(m,n,h)  

  print "最小公倍数为:";h  

  end

  说明:程序在执行时,结果不正确;其原因是call hcf语句调用时修改了m和n的值,以至使call lcm运行不  

  正确。因此,call hcf语句应为:  

  call hcf((m),(n),h)    

  例:验证哥德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和。(p209)   

  算法: n=10  

  n1    n2   

  2(t)   8(f)   

  3(t)   7(t)   

  n=16   

  n1    n2   

  2(t)   14(f)   

  3(t)   13(t)

  四、模块化的函数   

  1、建立一个函数   

  function <函数名>(<形参表>)  

  ......   

  let <函数名>=<表达式>  

  end fuwstion 

  2、函数的调用   

  与标准函数相同,只是在主程序开头加上 declare function <函数名>(<参数表>),无参数函数也要写上两个括号( );   

  例:求4到7的阶乘之和   

  function fact(n)

  f=1  

  for i=1 to n  

  f=f*i  

  next i  

  fact=f  

  end function  

  __________   

  declare function fact(n)  

  s=0  

  for i=4 to 7  

  s=s+fact(i)  

  next i  

  print "s=";s  

  end

  注意函数的参数传递   

  3、static选项(静态)

  外部函数中使用的变量,在函数调用结束后将全部被释放,其值不再保留。如要保留函数中的变量,可在建立函数时加写“static”即   funtion 函数名(<参数>) static  

  五、全局变量与局部变量   

  1、局部变量   

  每一个模块(子程序、主程序、函数)中的变量都只在本模块中有效,即是它们的作用域只限于模块,这种变量称为局部变量。   

  2、全局变量   

  在程序所有模块中都有效的变量,即作用域为整个程序变量称为全局变量。其定义格式为:   

  common shared <变量表>

  六、过程的嵌套调用   

  在一个过程里又调用另一个过程。

  七、过程的递归调用   

  在一个过程里又调用该过程本身;

  例如直接调用:   

  function f(x)

  c=f(x)

  f=2*c

  end function

  又如交叉调用:     

  function f1(x)

  ……

  c=f2(y)

  ……

  f1=2*c

  …… 

  end function  function f2(t)

  ……

  d=f1(a)

  ……

  f2=4/d

  …… 

  end function

  执行的结果造成无终止的自身调用,显然,程序中不应出现这种无终止的调用,而只应是有限次数的、有终止的递归调用。   

  fonction age(n)

  if n=1 then age=10 else age=age(n-1)+2

  end fonction

  主程序: declare function age(n) 

  print age(5) 

  end

  fonction fact(n)

  if n<=1 then fact=1 else fact=n*fact(n-1)

  end fonction

  教学后记:  

八年级信息技术教案 篇6

  第六章 各就各位---数组

  一、学习目标

  1. 掌握数组的声明和数组元素的引用

  2. 掌握动态数组与数组重定义以及与静态数组的差别

  3. 掌握利用数组进行排序、查找等操作

  4. 掌握控件数组的概念以及应用

  二、教学重点

  声明数组、初始化数组以及引用各个数组元素

  三、教学难点

  数组的概念以及应用

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  教学内容、步骤与方法

  第一节 整装待发----认识数组

  一、概念

  例如要求一个班50名学生的平均成绩:

  下标变量si 用数组表示为:s(i)

  1、有关说明:

  (1).数组与普通变量一样,用来存放数据;

  (2).数组中的数据必须是同一类型;

  2、数组与循环结合

  for i=1 to 50

  input s(i)

  next i

  s=0

  for i=1 to 50

  s=s+s(i)

  next i

  print s/50

  end

  二、数组的建立和引用

  1、数组的建立

  (1).dim <数组名>(下标上界)

  或dim <数组名>(上界1,上界2)

  说明:

   一般情况下,下标值从0开始

  如:dim a(5) 即定义了a(0)、a(1)、…、a(5);

  若要修改下标起始值,可用下面语句:

  option base n

  如:option base 1

  dim a(5)

  则定义了5个变量a(1)、a(2)、a(3)、a(4)、a(5);

  若数组下标上界不超过10则可不必用dim定义数组。

  (2)dim <数组名>(n1 to n2)

  下标值的范围:-32768~32767

   数组名与变量名的定义相同;

   允许在同一模块中,数组名与变量名同名,它们不代表同一对象;

  dim a(100)

  a=3

   dim语句中的上界可是常数或变量、表达式;

  如: dim a(10)

  dim a(n)

  dim a(n+2)

  但变量值一定先赋值

   定义全局数组

  dim shared a(50)

   用dim 语句可定义变量类型

  dim <变量> as <类型>

  其中<类型>是:integer(整型)、long(长整型)、single(单精度型)、double(双精度型)、string(字符串型);

  但<变量>不能加类型定义符,如下写法是错误的:

  dim a& as long

  在用dim语句定义了一个变量类型后,该变量名后面加上类型定义符或不加类型定义符都是合法的,且代表同一个对象。例如:

  dim a as long

  a=123456

  a&=77777

  print a , a&

  end

  运行结果如下:

  77777 77777

  但程序中不能再用a作其它类型的变量名。

  2、数组的引用

   引用数组元素(下标变量),即在括弧中指定下标;

   在程序中,数组与其它变量的使用相同,即可参与运算,可以被赋值;

   在引用数组时,数组名、类型、维数以及下标的范围,应与定义时一致;

   同一模块中,数组和变量可同名,但数组与数组不能同名;

  下列情况是不允许的:

  dim a(10,10)   或  dim a(50,50)

  dim a(15)  dim a%(15)

  3、静态数组和动态数组

  静态数组——建立数组后,其维数和大小不能改变;

  动态数组——在程序执行教程中,可改变大小或者被释放;

  qbasic规定:在dim 语句中用常数指定下、上界的数组为静态数组,如果用变量(或表达式)指定上下界的数组为动态数组。

  (1).重定义语句

  redim <数组名>(上界)

  如:dim s(20),x(20,30)

  ……

  √redim s(50)

  ×redim x(30)

  只改变同名数组的大小,但不能改变维数;

  (2).释放数组语句

  erase <数组名>

  释放数组所占据的空间;

  例1:释放和重定义数组:

  n=10

  dim a(n)

  for i=1 to n

  a(i)=i

  print a(i);

  next i

  print

  erase a

  redim a(16)

  for i=1 to 16

  a(i)=i

  print a(i);

  next i

  print

  end

  说明:

  .如果不使用erase语句释放数组,不能用dim语句对同一个数组两次定义;

  .用redim可改变数组的大小,而不必先用erase语句释放数组;

  .无论用dim或redim定义一个与原来数组同名的数组,可以改变数组中各维的上下界,而不能改变数组的维数。

  (3).数组上、下界函数

  lbound(<数组名>,<维数>)——下界函数

  ubound(<数组名>,<维数>)——上界函数

  例:

  input n,m

  dim a(n to m)

  for i=lbound(a,1) to ubound(a,1)

  a(i)=i

  print a(i);

  next i

  print

  dim b(10,15)

  for i=1 to ubound(b,1)

  for j=1 to ubound(b,2)

  b(i,j)=10*i+j

  print b(i,j);

  next j

  next i

  print

  end

  三、数组的应用

  第二节 一字排开-----一维数组

  1、一维数组

  只有一个下标的数组。

  (1).数据统计

  例: 输入n个学生的成绩,求平均成绩。

  option base 1

  input "number of students is:";n

  dim s(n)

  for i=1 to n

  input s(i)

  sum=sum+s(i)

  next i

  aver=sum/n

  print "aver=";aver

  end

  例: 输入n个学生的学号和成绩,要求输出平均成绩和高于平均分的学生学号及成绩。

  option base 1

  input "number of students is:";n

  dim num(n),score(n)

  for i=1 to n

  input num(i),score(n)

  sum=sum+score(i)

  next i

  aver=sum/n

  print

  print "平均分是:";aver

  print

  print "高于平均分的学生有:"

  print "学号","成绩"

  for i=1 to n

  if score(i)>aver then print num(i),score(i)

  next i

  end

  (2)、数据排序

  例:从键盘输入10个数。要求按由小到大的顺序将它们打印出来;

  •  比较交换法

  a1、a2、a3、a4、a5、a6、a7、a8、a9、a10

  第一次:a1与a2、a3、a4、a5、a6、a7、a8、a9、a10比较

  第二次:a2与a3、a4、a5、a6、a7、a8、a9、a10比较

  第三次:a3与a4、a5、a6、a7、a8、a9、a10比较

  第四次:a4与a5、a6、a7、a8、a9、a10比较

  第五次:a5与a6、a7、a8、a9、a10比较

  第六次:a6与a7、a8、a9、a10比较

  第七次:a7与a8、a9、a10比较

  第八次:a8与a9、a10比较

  第九次:a9与a10比较

  option base 1

  dim a(10)

  for i=1 to 10

  input a(i)

  next i

  for i=1 to 9

  for j=i+1 to 10

  if a(i)>a(j) then swap a(i),a(j)

  next j

  next i

  for i=1 to 10

  print a(i);

  next i

  end

  6. 选择法

  option base 1

  dim a(10)

  for i=1 to 10

  input a(i)

  next i

  for i=1 to 9

  k=i

  for j=i+1 to 10

  if a(k)>a(j) then k=j

  next j

  if k<>i then swap a(k),a(i)

  next i

  for i=1 to 10

  print a(i);

  next i

  end   (3).数据查找(检索) 例: 设有n个学生,每个学生的数据包括:学号、姓名、性别、年龄、平均分等;要求输入一个学号,程序输出该学生的所有数据。

  • 顺序查找法

  假设:num(i)为学生学号,nam$(i)为姓名,num为查找对象。 sub search

  for i=1 to n

  if num=num(i) then

  print "num";num(i)

  print "name";nam$(i)

  exit for

  end if

  next i

  if i>n then num ;"not found"

  end sub

  • 折半查找法(二分查找法);

  对按一定规律(由小到大或由大到小)排列好的数据进行检索;假设:num(i)为按从小到大排列的学生学号,nam$(i)为姓名,num为查找对象。

  sub search

  top=1

  bot=n

  find=0

  do

  mid=int((top+bot)/2)

  if num=num(mid) then

  print "num";num(i)

  print "name";nam$(i)

  find=1

  elseif num<num(mid) then

  bot=mid-1

  elseif num>num(mid) then

  top=mid+1

  end if

  loop until ((bot<top) or (find=1))

  if find=0 then num ;"not found"

  end sub

  2、二维数组

  矩阵的表示: 

  aij——双下标变量 a(i,j)→二维数组

  数组定义:dim a(m,n)

  a(i,j)→b(j,i)

  例: 输出魔阵——每行、每列和对角线之和均相等。

  排列规律:

  (1)、先将“1”放在第一行当中;

  (2)、从“2”开始到n*n止,各数中每一个数存放的行比前一个数的行数减1,列数加1;

  (3)、如果上一个数的行数为1,则下一个数的行数为n(最后一行);

  (4)、当上一个数的列数为n时,下一个数的列数为1,行数减1;

  (5)、如下一个数应放的位置已被其它数占据,则下一个数放在上一个数的下面。

  四、过程中的数组参数

  1、作为下标变量

  子程序定义:sub a(x,y)

  ……

  end sub

  调用:dim t(10)

  ……

  call a(t(1),t(2))

  2、作为数组:

  定义 :

  调用 call b(p,g)

  将主程序中的p、g传给子程序中的a,b 数组传递采取“地地传递”方式。即子程序中对形象参值的修改,将会改变实参值

  教学后记:

八年级信息技术教案 篇7

  第三章 顺藤摸瓜----顺序结构程序设计

  第一节 有备而来---程序设计准备

  一、学习目标

  1.掌握进入basic环境的方法和输入、编辑、运行程序的方法。

  2.初步掌握basic中的基本概念:常量、变量、函数、表达式。

  3.初步掌握输出、赋值、输入语句的格式和功能。

  4.初步掌握简单顺序结构程序的设计方法。

  5.理解程序的顺序结构的概念。二、教学重点掌握输出、赋值、输入语句的格式和功能。三、教学难点掌握简单顺序结构程序的设计方法。四、教学方法1.演示法。2.实践法。五、教学手段与教学媒体 六、课时安排1课时。七、教学过程

  二、学习指导

  1.basic中的科学记数法类似数学中的科学记数法

  例如:-3.14156e+3 —— -3.14156×103

  2.56e-2 一 2.56×10-2

  其中e表示幂底数10,e后跟的整数为幂指数。

  2.常见标准函数

  abs(x)    求x的绝对值,即|x|

  sqr(x)    求x的算术平方根,即 。

  sin(x)    求x的正弦值c角x的单位必须是弧度,l°≈3.14159/180)。

  cos(x)    求x的余弦值(规定同上)。

  int(x)    求不大于x的最大整数。

  注意:x为负数时,其值不是去掉小数,例int(一5.99)≠一5。

  int(x)用处很多:

  (1)对正数x四舍五入保留n位小数的表达式:

  int(x*10^n+0.5)/1o^n

  例如:对正数x四舍五入保留两位小数的表达式:

  int(x*100+0.5)/100

  (2)判断整数a能被整数b整除的条件关系式:

  int(a/b)=a/b

  (3)求整数a除以b的余数的表达式:

  a—int(a/b)*b.

  rnd(x)  产生一个o到1之间的随机小数

  生成(a,b)内的随机整数的表达式:int(rnd(1)*(b—a)+a)

  例如:二位随机整数的表达式:

  int(rnd(1)*90+10)

  3.数学式和basic表达式的对应表示

  应根据运算顺序,正确使用圆括号,且将所有符号写在同一行上。注意乘、除、乘方运算和绝对值、算术平方根等函数在数学上与basic上表示的区别。

  例如:

  一(-b+sqr(b*b一4*a*c))/(2*a)

  4.输出语句和输入语句

  (1)输出语句。

  格式:print(输出内容)

  功能:

  当输出内容是数时,直接输出该数;

  当输出内容是数值表达式时,先计算表达式的值,然后输出该数值;

  当输出内容是字符串时,直接输出该字符串。

  (2)赋值语句。

  格式:let变量=表达式

  功能:把“=”右边表达式的值赋给左边的变量。

  (3)键盘输入语句

  格式:input变量,变量,…,变量。

  功能:程序运行到该句时,屏幕出现一个“?”号,等待用键盘输入数据input后面的变量或变量组。

  5.赋值(let)语句功能强大,用处很多,常用于构造以下

  计数器  例如:let i=i+1(一般变量初值为0,即let i=0)

  累加器  例如:let s=s+x(一般变量初值为o,即let i=0)

  累乘器  例如:let t=t(一般变量初值为l,即let t=1)

  交换器  例如:a、b存储的内容交换

  let c=a

  let a=b

  let b=c

  6.两种提供数据的语句对比表

  表5—2—1两种提供数据的语句对比表

  语句

  let语句

  input语句 

  变量数

  一个let语句只能给一个变量赋值

  一个input语句可以给一个或一组变量赋值 

  赋值方式

  在程序中赋值

  在程序执行过程中,从键盘输入赋值 

  赋值内容

  数据,变量和表达式

  只有具体数据 

  运算功能

  有运算功能

  无运算功能

  占机时间

  运行后,立即出结果,占机时间少

  运行后,等待从键盘输入数据,占机时间多

  适合类型

  ①需要赋值变量少

  ②需要运算

  参数灵活变化

  7.程序的顺序结构

  程序各语句的执行顺序是从前到后依次执行的,程序执行过程中没有分又,也没有

  重复,这种结构的程序就叫顺序结构程序。

  图形方式表示如下图5—2一l:

  图5—2—1

  图中s1、s2、…、sn分别表示一段具体的操作内容,用一个语句或一段程序完成。

  8.顺序结构的程序设计关键是把握好解决问题步骤的先后顺序,不要把依赖于上一步完成后才能进行的后一步操作前移

  例如:求半径为15的圆周长和面积。

  程序1 let l=2*3.14*r

  let s=3.14*r*r

  let r=15     print r,l,s

  end

  运行结果:15    o    0

  程序2 let r=15

  let l=2*3.14*r

  let s=3.14*r*r

  print r,l,s

  end

  运行结果:15    94.2    706.5

  程序2和程序l语句条数和内容相同,但顺序不同,结果不同,程序2正确。

  三、应用实例

  1.写出下列程序的运行结果

  let x=1 

  let y=2

  let x=x+y

  let y=x+y

  print “x”,“y”

  print x,y

  end

  解:可列变量值的变化表来确定结果。

  x           y

  l           2

  3(1+2)    5(3+2)

  由上分析,可得运行结果:

  x    y

  3    5

  2.鸡兔同笼问题

  已知鸡兔总头数为h,总脚数为f,问鸡兔各有多少只?

  解:设鸡兔各有x、y只,则有

  x+y=h    (1)

  2x+4y=f  (2)

  由(1)、(2)可得:

  x=(4h—f)/2

  y=(f一2h)/2

  算法:1.输入h,f

  2.x←(4*h—f)/2

  3.y←(4—2h)/2

  4.输出x,y

  5.结束

  程序:input h,f

  let x=(4*h—f)/2

  let y=(f一2*h)/2

  print“x=”;x,“y=”;y

  end

  运行结果如下:

  ?60,176

  x=32    y=28

  四、练习实践

  1.填空题

  (1)2.745e-3化为日常计数法的数是     

  (2)sqr(49)+abs(一5)的值是     

  (3)int(rnd(50)+20)的值是     

  (4)数学式 对应的basic表达式是        

  (5)数学式x7+ 对应的basic表达式是      

  2.判断题

  (1)x3y、x(1)、sinx、7c都是正确的basic变量。(    )

  (2)语句input a;b;c是正确的。(    )

  (3)语句let m=3,n=5是正确的。(    )

  (4)语句input a=5是正确的。(    )

  (5)语句let x=x+l是错误的。(    )

  (6)let语句是basic中惟一能进行计算的语句。(    )

  (7)下面程序运行后,显示结果是a=7,说明此时变量a的值是7。(    )

  let a=4

  print  “a=”;7

  end

  3.单选题 (1)basic中100000表示为(  )。

  a.1e+5    b.e+5    c.5e    d.1e一5

  (2)print int(10*rnd(1)+1)结果是(    )。

  a.[1,11]范围内的随机整数    b.[1,10)范围内的随机整数

  c.[0,10]范围内的随机整数    d.[1,11]范围内的随机整数

  (3)表达式a—b/3^c的运算顺序是(  )。

  a.①一②+③/    b.①一②^③/

  c.①一②/③^     d.①^②/③一

  (4)print int(3.236*100+0.5)/100的结果是

  a.3.23    b.3.236     c.3.24    d.324

  (5)程序运行的结果是(  )。

  let m=3

  let n=0

  let  s=m*n

  let n=2

  print  s

  end

  a.0    b.3    c.6      d.2

  (6)程序运行的结果是(  )。

  let a=5

  print “a=”;a+1,a

  end

  a.a=6  6       b.a=6   5

  c.a=a+l  a     d.a=6   a

  4.写出下列程序的运行的结果

  (1)let x=5

  let y=3

  let s=(x+y)/2

  print  “s=”;s

  let s=x+y/2

  print “s=”;s      

  end

  (2)let x=999

  let  x=abs(x—1000)

  print  “sqr(x)=”;sqr(x)

  end

  (3)let a=1

  let b=7

  let  a=a+b

  let b=a+b

  print  a,b

  end

  (4)input  a,b,x

  let  a=a+x

  let  b=x—b

  let  s=a+b+x

  print s

  end

  ①输入1,2,3    ②输入3,2,1

  5.编程解一元一次方程ax+b=c(a≠0)

  (提示:a,b,c为已知量,用input a,b,c输入,x为待求量,应用已知量表示即:x=(c-b)/a)

  6.编写一个计算年息、年终节余的程序

  要求输入存款数、年利率,输出存款数、年息和年终节余(保留二位小数)。

  解:设存款数为x、年利率为a,年息为y,年终节余为z.

  程序如下:

  input x,a

  let y=a

  let z=x+y     let  z=int(z*100+0.5)/100

  print  x,y,z

  end教学后记:

  第二节 与电脑沟通----输入、输出语句

  一、学习目标

  1、 掌握程序中常用的输入、输出语句。

  2、 掌握输入、输出设计方法。

  3、 能利用输入、输出语句解决简单的实际问题。  二、教学重点掌握输入、输出设计方法。三、教学难点用输入、输出语句解决简单的实际问题。四、教学方法1.演示法。2.实践法。五、教学手段与教学媒体多媒体网络教室。六、课时安排1课时。七、教学过程:程序的执行次序,从上到下,由一些非控制转移语句组成  一、输出语句    输出用户所需的信息   1、一般格式  print [<表达式>]  表达式—常量、变量、函数 如: print  2,4,6         print "x=";x        显示:      x= ...   2、作用    (1)输出数值计算的结果(p92)     (2)输出字符串(p93)       (3)输出系统信息(p94)        3、输出格式      (1)标准格式—输出项以逗号分隔  五区—每区14列    (2)紧凑格式—输出项以分号相隔    (3)tab(x)—第x列       定位输出,但在同一行中、tab(x)中的x应从左到右逐渐增大。还可利用space(x)插入空格        (4)print <....>, 不换行(光标到下一区)      print <....>; 不换行(光标在输出项后)     print <....>  换行    print      空行    4、打印输出   lprint      其使用方法与print相同二、赋值语句   1、一般格式 [let]<变量名>=<表达式>let  a=100     let  a$="book"   2、作用    计算右边的表达式,将其值赋给左边变量;          主要作用:运算。  “=”的作用于是赋值,与等于的差别     如:x=y 与 y=x 不同(例p100)    3、对变量的赋值操作    (1)变量的初值为0   未赋值的变量     (2)一个变量只有一个值 变量的当前值由最后一次赋值决定      n=n+1         (3)变量值的传递  a=b  b的值不变  b=a  a的值不变     (4)关于赋值类型    以左边变量的类型为准    (5)两个变量交换值  a=b     c=a     a=b  c为中间结果为?/font>    b=c 三、键盘输入语句    1、一般格式:   input[“提示信息”;]< 变量表> 说明:(1)执行该语句从键盘输入数据的数目应与语句中的变量个数相同       (2)从键盘输入的数据只能是常量      (3)输入时数据间用逗号分隔 例:求学生三门课的平均成绩       input "a,b,c=";a,b,c     v=(a+b+c)/3            print "average="; v   end   四、读入语句   1、格式: read <变量表>   data <数据表 例:read a,b,c,     data 75,60,90 v=(a+b+c)/3 end     2、说明:     (1)<数据表>中的数据个数不能少于<变量表>中的变量个数。     (2)data语句可放在程序的任何位置,可使用多个data语句来存放数据,这时将按data 语句的先后顺序,把数据放数据区。  (3)关于“数据指针”当指针移到数据区之外 时,屏幕给出错误信息: out of data   (例p109)    (4)data语句中的数据只能是常量         五、恢复数据指针语句 restore   将数据指针移至首位或指定的data语句标号。六、结束语句和暂停语句    1、end语句  结束程序运行。一个程序可有多个end语句,但运行程序时,只有一个起作用,即执行其中一个end语句都会使程序结束。  2、stop语句   使程序暂停,选择run-continue继续运行。   七、程序调试    1、分步执行  f9—单步执行,step  f6—窗口转换,windows   f5—运行或继续运行。   2、设置断点  f9—设置断点     f5—运行或继续运行 教学后记:

八年级信息技术教案 篇8

  第九章 磨刀不误砍柴工-----算法基础知识

  一、教学目标

  1.理解算法的概念;

  2.知道两种算法的描述方法—语言描述法和流程图的区别

  3.能初步利用算法解决简单的问题。

  4.培养学生的理论联系实际能力和动手操作能力。

  二、教学重难点

  1.重点:算法的描述

  2.难点:算法的描述

  四、教学方法

  讨论、讲解、操作相结合。

  五、教具:多媒体电脑配合课件

  六、教学过程

  (一)算法的概念

  【教师】请同学们将下面问题的解决步骤写出来

  【问题1】两个大人和两个小孩一起渡河,渡口只有一条小船,一次只能渡过一个大人或两个小孩,他们四人都会划船,但都不会游泳。请写一写你的渡河方案。

  〖学生〗学生讨论回答。

  【问题2】展示课件:写出求一元二次方程ax2+bx+c=0的实数根的解题步骤。

  〖学生〗学生讨论回答。

  【答案展示】

  【问题3】如果让计算机来解决这个问题应该怎么做呢?

  〖学生〗学生讨论回答。

  【答案展示】

  1、让计算机根据a、b、c的值,求出△(delta);

  2、让计算机判断△(delta)的值;

  3、让计算机求出x1;

  4、让计算机求出x2 。

  5、让计算机输出x1、x2的值

  【教师】由此可以知道,计算机解决问题和人解决问题一样需要有清晰的解题步骤。而对于计算机而言,这种解题步骤就称为算法。

  【课件展示】算法的概念:

  我们解决问题都需要遵循一定的方法和思路并正确的列出各个求解步骤。计算机解决问题的求解步骤叫做算法。

  或:

  计算机处理程序的过程与我们平时解决问题的过程是十分相似的,也就是在规定的条件下完成一定的操作序列。而这样的操作序列对于计算机而言就是算法。

  美国著名计算机科学家克努特教授(d.e.knuth)提出了“计算机科学就是研究算法的科学”的著名论断

  二、算法的描述

  1、语言描述

  【算法描述1】描述交换两个杯中液体的算法

  〖学生〗学生讨论

  【课件展示】动态显示交换过程。并展示文字描述。

  【算法描述2】交换两个变量中的数据。

  【教师】讲解计算机内部对于数据存储的原理。即按地址保存。

  〖学生〗学生讨论

  【课件展示】展示文字描述。并配以教师的讲解分析。

  已知变量x和y中分别存放了数据,现在要交换其中的数据。为了达到交换的目的,需要引进一个中间变量m,其算法如下:

  ① 将x中的数据送给变量m,即x→m;

  ② 将y中的数据送给变量x,即y→x;

  ③ 将m中的数据送给变量y,即m→y。

  【算法描述3】输入三个不相同的数,求出其中的最小数。

  〖学生〗学生讨论 【教师】引导学生讨论解题思路:

  先设置一个变量min,用于存放最小数。当输入a、b、c三个不相同的数后,先将a与b进行比较,把小者送给变量min,再把c与min 进行比较,若c<min,则将c的数值送给min,最后min中就是三个数中的最小数,< p>

  【课件展示】展示文字描述。

  【教师】引导学生讨论语言描述的特点:易于理解和接受。但对于复杂的问题描述太麻烦。

  【教师】请说出下面这句话的含义:“这个人连老张也不认识”

  〖学生〗学生讨论回答

  【教师】由此可以看出语言描述有时有岐义,但计算机解决问题时每一步必须有清楚的定义,不能有二义性或模棱两可的解释,我们可以用另外一种方法来描述算法

  2、流程图

  【课件展示】算法2、3的描述流程图:

  【课件展示】

  流程图的概念:流程图是用一组几何图形表示各种类型的操作,在图形上用简明扼要的文字和符号表示具体的操作,并用带有箭头的流线表示操作的先后次序。

  图形符号

  名   称

  含    义

  起止框

  表示算法的开始或结束

  输入、输出框

  表示输入输出操作

  处理框

  表示处理或运算的功能

  判断框

  用来根据给定的条件是否满足决定执行两条路径中的某一路径

  流线

  表示程序执行的路径,箭头代表方向

  连接符

  表示算法流向的出口连接点或入口连接点,同一对出口与入口的连接符内必须标以相同的数字或字母

  【课件展示】算法描述方法的比较:

  (1)第一个算法描述方法的比较(语言描述法、流程图、程序) 

  【教师】引导学生讨论出算法的特点,并初步理解。 算法的特点

  有限性:算法中的运算次数是有限的

  确定性:算法中的每一步必须有清楚的定义,不能有二义性或模棱两可的解释。

  输入输出:可以没有输入量,但必须有输出

  可行性:每一个操作都是可执行的,都能得到正确的结果。

  (2)第二个算法描述方法的比较(语言描述法、流程图、程序)

  【教师】请同学们利用qb将这两种算法实现。

  【思考题】输入三个不相同的数,求出其中的最大数。请分别用语言、流程图、程序进行算法描述。

  〖学生〗学生上机操作实践

  【教师】教师辅导

  【教师】总结、下课。 

  上的过程中,发现虽然讲得内容少了,学生也掌握了,但时间太少了,可能是我想刚开始讲编程,想让学生学一点,懂一点,记得一点,可能再上时应先让学生了解计算机语言为好。

  变量相对于常量来说有点难度,学生只要掌握数值型变量,而字符串变量只要尾部加上$,学生掌握的情况还不错。

八年级信息技术教案 篇9

  第七章   特殊成员----字符串

  第一节 两种身份-----字符串常量和字符串变量

  一、学习目标

  让学生记住数值型常量、变量和字符串型常量变量

  二、教学重点

  使学生理解basic编程中的常量、变量

  三、教学难点

  常量、变量是组成编程语句的一部分

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  1、我们上节课已经简单了解了一些basic的菜单,同是也知道了basic的一些简单操作,同学们在以后的操作中会不断提高。

  2、学习好编程必须掌握好basic的编程语句,因为计算机只听从语句的步骤

  3、语句就相当于我们的汉字,那么学汉字之前先学什么?

  对,我们就先学习编程的“汉语拼音”,因为它们是组成语句的基础

  4、在黑板上写出1

  提问:同学们认识吗?对1,一眼就看出来了,我们编程中把一眼看出来的数字,称为常量,你还能说一些常量吗?这一类常量可以进行加减乘除吗?所以我们把这一类常量称为数值常量。

  5、下面你们再看这是什么?中国

  提问:这能一眼看出来吗?对也能,所以这也是常量,但这类常量可以进行加减乘除吗?所以这类常量跟数值常量不同,我们称为字符串常量,为了区别1和1米,规定字符串常量用“   ”表示

  6、比较1 和“1”的区别

  7、常量是计算机编程中较常用的一个量,basic编程中只有数值型和字符串两种类型。  

  8、我们上节课已经简单了解了一些basic的常量,同是也知道了basic的一些简单操作,同学们在以后的操作中会不断提高。

  9、常量是计算机编程中较常用的一个量,basic编程中只有数值型和字符串两种类型。

  10、学习变量

  所谓变量指在程序中可以变化的量,举一个例子 x+1=6,可知这时的x是5,若x+1=9,这是x就是8,这样我们就把x称为变量。

  1、变量类型

  根据数据类型可知,变量有两种,一是数值型变量,要求变量名必须以字母开头,后面可跟字母、数学和下划线(turbo basic,其他版本的basic可能不一样),

  12、另一类就是字符串型变量,要求和数值型变量相同,只不过尾部要加上一个$,比如x$

  作业

  教学后记

  第二节 字符串变量全接触-----字符串变量的各种运算

  一、学习目标

  1.学生入门basic编程。

  2.理解let语句

  二、教学重点

  理解数值型的let语句

  三、教学难点

  学生了解let的赋值

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  程序是由语句组成,一般情况下每一个语句要占一行(多个语句也可用帽号分开在一行),我们先来看一个简单的小程序,求3+5的和

  let a=5

  let  b=3

  let  c=a+b

  print c

  这就是一个小程序,用了两个语句 let和print ,每个语句占一行,可能有人会用print语句作为小学生编程的入门语句,我选择let,如何才能学好语句呢?1、要理解 2、要记住它的格式

  先看let语句的格式

  let  变量=常量、变量或表达式

  看到全是熟悉的“拼音”,如何理解呢?意思就是把等于号右边的值赋给左边的变量,像上边let a=5 ,就是把5赋给a,但是有一点要注意,就是=号左右数据类型要一致。根据数据类型及常、变量及表达式可以分为以下六种情况

  一、“=”两边是数值型

  1、  变量赋给变量

  let a=b  (把b的值赋给a)

  2、  常量赋给变量

  let a=5 (把5赋给a)

  3、  表达式的值赋给变量

  let a=3+2  (把3+2的值5赋给a)

  二、“=”两边是字符串型

  1、变量赋给变量

  let a$=b$  (把b$的值赋给a$)

  2、常量赋给变量

  let a$=”5” (把5赋给a$)

  3、表达式的值赋给变量

  let a$=”3”+”2”  (把”3”+”2”的值”32”赋给a$)

  这就是最简单的basic编程语句了。再强调两小点,1、let语句是赋值语句,不等同于小学数学里的两边相等,如let a=a+1,是将a本身加上再赋给a,永远是不相等的 2、变量值的最终结果是最后一个给它赋值的let语句决定的,如:

  let a=1000

  let a=23

  let a=1

  最后a的值是1 

  1、导入上一节课,我们学习了第一个编程语句

  let

  2、你能记得let语句的格式吗?

  let  变量=常量、变量或表达式

  强调两点:1、等于号两边的数据类型要相同

  2、是将等于号左边的值赋值给左边变量

  3、左边的变量是数值型

  let a=3

  let a=5

  let a=8

  print a

  a的结果是几呢?对,是8,

  是最后一个给它赋值的let语句决定的

  4、看例题

  let a=3+2

  let a=a+1

  print a

  a的结果是几呢?是6,

  第一个let语句是将3+2的结果5赋值给a

  第二个let语句是将a本身加1 

  1、导入上一节课,我们学习了第一个编程语句

  let

  2、你能记得let语句的格式吗?

  let  变量=常量、变量或表达式

  强调两点:1、等于号两边的数据类型要相同

  2、是将等于号左边的值赋值给左边变量

  3、左边的变量是字符串型

  let a$=”3”

  let a$=”5”

  let a$=”8”

  print a

  a的结果是几呢?对,是8,

  是最后一个给它赋值的let语句决定的

  4、字符串型与数值型不同,变量要注意有“$”,常量要加上

  看例题

  let a$=”3”+“2”

  let a$=a$+“1”

  a$的结果是几呢?对,是”321”

  上一节,我们学了let语句,我将let语句作为basic编程的入门语句,为什么呢?这一节,我们来见识let语句的魅力。先看一个小程序,已知a是5,b是8,最后显示a,b,但a的值是8了,b的值是5了,也就是两个变量的值互换了。

  有聪明的学生编出了如下的程序,

  let a=5

  let b=8

  let a=8

  let b=5

  print a,b

  根据上一节的变量值的最终结果是最后一个给它赋值的let语句决定的,这样编好像也是对的,但这样编有两个地方不太好,1、没有体现a,b交换的过程,2、如果只是通过给a,b进行常量赋值,那前2个let语句可以不要,所以我要求除了前两个let可以有常量5,8处,其余的下面的语句不要出现常量,怎么办?目前我们所学过的语句只有let,print只会运用,如何解决呢?想一想我们生活中是如何两杯水的交换的,有聪明的学生肯定想到用空杯子,那么这道题中如何出现空杯子,生活交换空杯子的顺序又是什么呢?第一步,一杯水倒向空杯子,第二步,第二杯水倒过刚刚倒向空杯子的第一杯水中,第三步,用有水的空杯子倒向原来的第二杯水中,于是出现了以下的正确的解法。

  let a=5

  let b=8

  let c=a或c=b

  let a=b或b=a

  let  b=c或a=c

  print a,b 

  作业

  教学后记

八年级信息技术教案 篇10

  第五章 循环结构程序设计

  第一节 循序渐进

  一、学习目的

  1.初步掌握计数循环、条件循环两种语句的格式和功能。

  2.初步掌握简单循环结构程序的设计方法。

  3.理解程序的循环结构的概念。

  二、教学重点

  掌握计数循环、条件循环两种语句的格式和功能。

  三、教学难点

  掌握简单循环结构程序的设计方法。

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  教学内容、步骤与方法

  二、学习指导

  1.计数循环语句

  (1)格式:for 循环变量=初值 to 终值 step 步长

  语句组(循环体)

  next循环变量

  for语句为循环说明语句,next语句为循环终端语句。

  for和next后面的循环变量必须相同。

  初值、终值和步长都是数值表达式。

  步长为1时,step可省略不写。

  (2)功能:根据for语句说明设定的循环次数重复执行循环体。其具体执行过程可用图5-4-l表示。

  图 5—4—1

  其中循环变量超过终值的规则是:

  步长为正,大于终值;步长为负,小于终值。

  一般地循环次数可用下列公式计算:

  循环次数=int((终值一初值)/步长)+1

  2.条件循环语句

  (1)格式:do while条件

  语句组(循环体)

  loop

  (2)功能:当条件成立(即为真)时,执行do和loop之间的语句组(循环体),否则终止循环,转到loop语句的下一句执行。

  3.计数循环程序设计关键是确定循环的次数和重复循环的操作;条件循环程序设计的关键是确定循环的条件和重复循环的操作

  三、应用实例

  1.编程求1+2+4+8+16+……+2n(n<64)的值

  解:

  (1)此题的计算公式是一个和式,加数为2的乘方,可考虑用累加求和的方法来计算。设累加变量为s,加数为2k,k=o…n。构造一个关于k的循环,重复执行s←s+2^k,即可算出和式的值。

  根据分析,可编程序如下:

  input n

  let s=0

  for k=o to n

  let s=s+2^k

  next k

  print“s=”:s

  end

  运行结果如下:

  ?63

  s=1.844674e19

  (2)数列各项为2的0、l、2……n次乘方,即乘数始终为2的累乘积,可构造一个n次循环,用卜t*2累乘(t的初值为1)依次生成数列各项,用s←s+t依次累加各项。循环结束,其累加和s的值即所求和式的值。

  根据分析,可编程序如下:

  input n

  let t=1

  let s=t

  for k=l to n

  let t=t*2

  let s=s+t

  next k

  print“s=”;s

  end

  运行结果如下:

  ?63

  s=1.844674e19

  四、练习实践

  1.写出下列程序的运行结果

  (1)for a=1 t0 5

  print a,a*a,2^a

  next a

  end

  (2)let m=1

  input a,b,c

  for i=a to b step c

  let m=m*i

  next i

  print m

  end

  ①输入l,5,1        ②输入50,-l,-1

  结果为:             结果为:       

  (3)let t=1

  let a=0

  for k=l t0 5

  let a=a+t*k

  t=-t

  next k

  print a

  end

  结果为:          

  (4)let m=0 

  for x=1 to 10

  if  int(x/2)=x/2 then

  let m=m+x

  end if

  next x

  print m

  end

  结果为:       

  (5)let s=o

  let x=2

  do while s<30

  let s=s+

  loop

  print s

  end

  (6)let a=l

  let b=l

  d0 while b<20

  print  a,b

  let a=a+b

  let b=a+b

  loop

  end

  2.根据题意,把程序填写完整

  (1)求1/2+2/3+3/4+…+99/100的值。

  let s=0

  for i=l to      

  let s=      

  next i

  print s

  end

  (2)把输入的6个数中绝对值大于5的数打印出来,并统计这样的数的个数。

  let t=0

  for j=1 t0 6

  input x

  if         then

  print x,

  end if

  next j

  print “t=”;t

  end

  教学后记:

  第二节 小小统计员-----while—wend语句

  一、学习目标

  了解while—wend语句的特点。

  二、教学重点

  while—wend语句的使用方法。

  三、教学难点

  while—wend语句的应用。

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  教学内容、步骤与方法

  二、while循环结构 while  <条件>   

  <循环体>wend    

  注: <条件>是终止循环的逻辑表达式,<条件>应随循环的执行而变化,最终退出循环。    

  如: s=0   

  i=1   

  while  i<=100

  s=s+i   

  wend    

  构成“死循环”——无终止的循环。这时可用ctrl+break终止其程序运行。    

  例1(p152例7.5): 如果我国工农业生产每年以12%速度增长,问多少年后产值翻一番:基值设为100。

  (逐年计算产值,看是否达到200)

  p=100

  r=.12

  n=0   

  while p<200

  p=p*(1+r)

  n=n+1

  wend

  print n; "years","p=";p

  end    

  例2 (p152例7.6) : 给出两个正整数,求它们的最大公约数。    

  算法:(辗转相除法) 

  (1)、以大数m作被除数,小的数n作为除数,相除后余数为r。    

  (2)、如果r=0,则n就是最大公约数。否则将n=>m, r=>n, 重复(1)。 

  程序及框图 :   

  input "m,n=";m,n

  r=m mod n 

  while  r < >0 

  m=n 

  n=r

  r= m mod n  

  wend

  print "最大公约数为:",n 

  end    

  例3 (p153例7.7):给一个整数n(>2),判别它是否素数(质数)。    

  算法:判别n是否素数,只要将n被1~(n-1)各数轮流作除数除,若都不被整除,则为素数。 

  若n不是素数,则n=n1*n2,而n1和n2中必然有一个大于或等于n的开方根,另一个小于或等于n的开方根。

  即若n是非素数,则必然有一个因子小于或等于n开方根。

  程序及框图: 

  input  "n="; n

  k=int(sqr(n))

  i=2   

  flag=0  

  while i<=k and flag=0 

  if n mod i=0 then flag=1 else i=i+1

  wend  

  if flag=0 then

  print n;"是素数!"

  else   

  print n;"不是素数!" 

  end if   

  end 

  教学后记:

  第三节 大浪淘沙----do---loop语句

  教学目标:

  知识目标:

  1.了解条件循环语句的结构

  2.掌握条件循环语句执行过程

  3. 知道条件循环语句编程过程

  4.掌握条件循环的格式及执行过程。

  能力目标:能够能读懂条件循环程序并编写简单的条件循环程序。

  情感目标:让学生了解要想做成一件事,应具备一定的条件。

  教学重点:条件循环的格式,执行过程。

  教学难点:循环执行的条件,重复循环的操作。

  教学方法:

  提问法

  学生讨论交流法

  训练反馈法

  练习巩固法

  教学过程:

  一、复习旧课

  求1+2+3+……+100的方法(计数循环)

  二、引入新课

  求1+2+3+……到和大于1000为止,怎样求?叫学生思考,讨论。通过前面已学习的知识解决这个问题较为困难,于是引出新知——条件循环,它就可完成此题。

  格式:

  do    while     条件

  语句组(循环体)

  loop

  功能 :

  当条件成立(即为真)时,执行do和loop之间的语句组(即循环体);否则终止循环,转到loop语句的下一句执行。

  流程图

  例题一

  统计某班某科考试成绩平均分

  s=0

  r=0                      

  input x

  do while x>=0

  s=s+x

  r=r+1

  input x

  loop

  print  s/r

  例题二

  求从1开始的自然数相加直到和大于1000为止。

  s=0

  x=1

  do while s<=1000

  s=s+x

  x=x+1

  loop

  print “s=”;s

  end

  练习一

  求在等式3□x8256=□3x6528里□中的最小值。

  x=1

  do while                    

  x=x+1

  loop

  print                    

  end

  练习二

  年产值为1000万,若年增长率为8%,几年后产值翻上两番。

  t=1000

  n=0

  do while                    

  n=n+1

  t=                  

  loop

  rpint                  

  end

  总结

  介于do while和loop之间的语句是循环体。

  确定循环的条件和重复循环的操作。

  在循环体中要有能使条件改变的语句。

  作业

  第一题

  s=0

  x=2

  do while s<30

  s=s+

  loop

  print s

  end

  第二题

  a=1

  b=1

  do while b<20

  print a,b

  a=a+b

  b=a+b

  loop

  end

  板书设计(把主要和重要的容放在黑板的醒目位置——中间)

  例题一    格式       习题

  流程图    总结

  例题二    功能       作业

  时间分配

  复习旧课,引入新课(3分钟)

  格式,功能,流程图(12分钟)

  例题(11分钟)

  习题(11分钟)

  总结,作业(8分钟)

  教学后记:

  第四节 环环相扣---循环嵌套

  一、学习目标

  了解循环嵌套的特点。

  二、教学重点

  循环嵌套的使用方法。

  三、教学难点

  循环嵌套的应用。

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  教学内容、步骤与方法

  一个循环体内包含另一个循环  

  找出100-200间的全部素数。for n=101 to 200 step 2 k=int(sqr(n))   i=2   f=0   while i<=k and f = 0if n mod i=0 then f=1 else i=i+1   

  wend  if f=0 then print n,next n end 

  例打印乘法九九表  

  for i=1 to 9for j=1 to 9   

  p = i*j   

  print p,   

  next j   

  print

  next i   

  end   打印表格(p175)  

  print tab(5);"|"   

  for j=1to 9   

  print tab(j*8);j;   

  next j   

  print   

  for n=1 to 75   

  print "-";   

  next n print tab(5);"|";

  print   

  for i=1 to 9   

  print i;"|";   

  for j=1 to 9   

  p=i*j   

  print tab(j*8); p;   

  next j   

  print   

  next i   

  for n=1 to 75   

  print "-";   

  next n   

  end   

  教学后记:

八年级信息技术教案 篇11

  第二章 程序新天地----初识qbasic

  一、学习目标

  1.了解机器语言和高级语言各自的特点。

  2.了解什么是计算机程序。

  3.了解程序设计的基本步骤。

  二、教学重点

  程序设计的基本步骤。

  三、教学难点

  程序设计的应用。

  四、教学方法

  1.演示法。

  2.实践法。

  五、教学手段与教学媒体

  多媒体网络教室。

  六、课时安排

  1课时。

  七、教学过程

  教学内容、步骤与方法

  1.机器语言和高级语言各自的主要特点

  机器语言:与计算机内部结构有关,不通用,其程序不需“翻译”可直接执行。

  高级语言:与计算机内部结构无关,通用,其程序需要“翻译”后才可执行。

  2.计算机程序

  用计算机语言描述的解决问题的程序。

  3.程序设计的基本步骤

  (1)问题分析:对问题详细分析,弄清输入(已知)条件和要求输出的结果,明确解决问题的关键和途径。 

  (2)算法设计:根据分析结果,确定解决问题的方法和步骤,并描述出来。

  (3)程序实现:根据描述的算法编写程序并上机通过。

  三、应用实例

  1.判断下列说法的正误

  (1)机器语言是硬件而高级语言是软件。

  (2)各种计算机语言编写的程序计算机都可直接执行。

  解:

  (1)说法错误。

  分析:计算机语言都属软件,故机器语言和高级语言都是软件。

  (2)说法错误。

  分析:只有机器语言编写的程序计算机可直接执行,而各种高级语言和汇编语言编写的程序都要先“翻译”成机器语言程序后执行。

  2.房租收费标准为,住房面积在40m2及其以下的0.8元/m2;超过40m2的部分为2元/m2。写出收房租的算法

  解:设住房面积为x,房租为y,那么  

  据上分析,收房租的算法为:

  (1)输入x

  (2)判断是否x<=40?

  是则)y←0.8x,否则y←0.8 ×40+2(x一40)

  (3)输出x,y

  (4)结束

  四、练习实践

  1.单项选择题

  (1)无须了解计算机内部结构就可以使用的计算机语言是(    )。

  a.机器语言    b.汇编语言    c.高级语言

  (2)(  )是计算机硬件。

  a.机器语言程序  b.cpu    c.操作系统

  (3)basic语言是属于(  )。

  a.机器语言    b.高级语言    c.汇编语言

  2.写出解决下列问题的算法

  (1)输入底半径r、高h,求圆锥体的底面积s和体积v。

  (2)解一元二次方程ax2+bx+c=0(设d=b2—4ac,二实根为x1、x2;要求如果d<0,那么输出“n”,表示无实根,否则求出二实根并输出)。

  教学后记: