您当前的位置:教育资源>综合>信息>教育科研>阅览文章

算法

时间:2022/4/2 9:43:21 来源:罗志龙字体显示:大 中 小阅读:4385 次

【学科核心素养】

算法思维的培养属于计算思维的范畴,而计算思维又属于信息技术核心素养,通过对于算法思维的学习,可以增强学生对于计算机处理问题方式的认识,把学生探究问题的兴趣作为动力,培养学生理解算法、熟悉算法、最终使用算法来解决生活中的实际问题的能力。

【课程标准要求】

介绍算法的基本概念与描述算法的常用方法,为程序设计打下基础。

【学业要求】

学生面对实际问题,能发挥主观能动性,进行思考与规划,思考解决问题的多种算法,从中选取最优的算法,通过最优的算法来解决问题。

【教学内容分析】

本节内容是江苏凤凰科学技术出版社出版的《初中信息技术》八年级部分的第四章第1节“算法”,这部分内容是是一个全新的章节,是程序设计的起始章节,学生通过本章节初次认识程序设计的概念,通过实例的合理使用激发学生学习程序设计的兴趣,为以后章节的学习进行铺垫。

【课时】1课时

【学情分析】

此次选择授课的为七年级学生,虽然学生的认知能力有限,但是本节内容较为简单且不需要上一章节的内容作为铺垫,这是一个较为独立的章节,教学过程中将更多的使用游戏、视频的方式来讲述看似复杂的算法问题。在实践操作部分,使用“画程”来降低绘制流程图的难度,用模块拖动的方式即可形成流程图的创作,可谓所见即所得。希望通过本节内容的学习可以揭开程序设计的神秘面纱,为以后进一步程序设计课程铺平道路。

【学习目标】

1、了解算法的基本概念和算法在程序设计中的重要性

2、学会使用自然语言、流程图描述算法

3、学会使用“画程”软件绘制流程图

4、了解用计算机语言描述算法

【教学重难点】

重点:了解算法的含义及优劣,并能说出常见的三种算法描述方法

难点:通过流程图的方式掌握“顺序结构”、“分支结构”,了解“循环结构”

【教学环境】硬件环境:计算机网络教室。软件环境:极域广播系统,python,画程,c++,视频播放软件。

【教学过程设计】

环节

教师活动

学生活动

设计意图

创设情境

导入新课

【教师提问】给出3幅显示贫困地区学生学习的场景的照片,提问学生“他们在做什么?”

【教师讲授】

他们是贫困山区的同学,他们这就是他们上课的地方。后来这张“大眼睛”的照片引起了全国的关注。

于是在1989年,由团中央、中国青少年发展基金会于发起的以救助贫困地区失学少年儿童为目的的一项公益事业—“希望工程”,为这些孩子建造了学校,捐助了衣物,这是他们现在的样子(展示希望工程过后的学校)。

【教师讲授】

虽然希望小学建立了,但是他们的学习条件依然很不好,我希望我们可以帮助他们。

【教师提问】

假如你们的妈妈也知道你要帮助希望小学的孩子们的事情,决定给你一些钱,让你去买一些书给希望小学的孩子,你会分几步去做?大家分组讨论一下?(教师用预先准备好的磁性卡片贴在白板上,后期可以调整答案的顺序和增加、删除)

【实践学习一】分组讨论买书的流程

学生可能会出现的答案:

选择书店(网上书店、实体书店)

购买书的种类与数量

书店进行选购

预估总价格

结账

购买成功或等待收货

【教师讲授】

刚才同学们说出的解决买书问题的方法和步骤有一个专业的名称叫做“算法”,我们今天就来学习第4章,第1节,算法。

【学生回答】

他们难道是在上课?









【学生观看】

学生评论,这条件好像依然很差啊


【学生讨论】

讨论出买书的一系列过程




【学生展示】

请一个小组说出过程,其他小组补充这个过程

主题选择为希望工程捐款是为了让学生更加珍惜现有的学习环境,努力学习










通过主题,引导学生进行事前的规划和设计,使其养成规划的习惯



列出买书的过程可以引出本课的主题“算法”

算法的概念

【教师讲授】

虽然都叫算法,但是算法也是有优劣的,就好像刚才我们如果没有预先列出购买数目的清单,在书店里选择书籍就不能做到有的放矢,节约时间。

哪些是好的算法呢?

在数学中计算1+2+3。。。。+100你是如何计算的?


这种算法不需要一个个的累加,这就是一种优秀的数学算法


【教师演示】

你觉得要猜中1-1000之间的整数,最少需要多少次?

下面我们通过一个魔术来了解计算机算法

在10次以内猜出你心中所想的1000以内的数字,你相信吗?

我一个人做不了这些,我想请计算机来帮忙。

请同学把心中想的数字写在纸上,然后我提问,只要告诉我这个数比我猜的数字大了还是小了?

你写的数字是123,我猜是500,请告诉我太大了,相反太小了。

太大我会按下1,太小我会按下2,正确我会按下3,并且提示我猜的次数

【教师讲授】

常见计算机算法

二分算法:每次把猜测范围缩小一半

如果是猜测1-10000的整数也只需要15次

算法优劣:解决相同问题,优秀算法可极大的提高效率

【学生听讲】





【学生回答】

这就是数学中的常见算法

等差数列和的算法:(首项+末项)×项数÷2


【学生参与】

说出数字,给出判断,最后得到数字



通过数学中的等差数列和的计算,使学生理解数学中解决问题的算法。








通过游戏让学生理解计算机解决问题的方法,了解二分算法在解决问题时候的优势

算法的描述

【教师讲授】算法是解决问题的方法与步骤,那么我们如果来描述他呢?

例如我们刚才用了语言描述了购买书籍的过程是否很清楚。

因此我们同学已经掌握了第一种算法描述方法—自然语言描述算法

【教师提问】

游戏时间-我们来玩一个狼羊菜的游戏?请一边玩,一边用自然语言来描述游戏过程。

如何用自然语言来描述这个游戏呢?




大家觉得他描述的如何?


【教师讲授】

可见用自然语言描述有其直观的优点,但缺点是,对于复杂的问题可能描述的不清楚,那么如何来解决这个问题呢?

我们来看一张图,是不是可以帮助我们解决问题?教师展示流程图


这个叫流程图,可以图形符号来描述复杂的问题。

因此我们同学知道了第二种算法描述方法—用流程图描述算法

【教师演示】

为了让大家方便的使用流程图,老师给大家介绍一个软件 “画程”,它的流程可以直接拖动出来。

下面老师就以买一本语文书为例,来介绍画程的基本用法:

【教师演示】

1、输入钱包(qb)

2、输入语文书(yw)

3、计算价格:把钱(qb)减(-)去语文书(yw)的价格后,放入钱包(qb)

4、输出钱包(qb)中的钱

这种重上到下的结构我们称之为“顺序结构”

画程可以自动验证你的流程图,点击“编译”输入qb和yw,就可以由计算机计算出余下的金额,大家快来试试吧

【实践学习二】

必做:大家尝试能否用画程作出一张买语文书的顺序结构的流程图

选做:能否在语文书中添加过程,变成可以再买数学书的流程图


【教师讲授】选做部分已经有同学做好了,让我们一起来看看吧

请测试一下:qb=100,yw=60,sx=60,查看结果是否正确?出现-20?

书的价格高于钱包里钱的数量,该怎么办?





【教师讲授】

请同学们查看书本p96,认识分支结构

根据书本使用“画程”来实现以下功能:

画程中分支是哪个图标呢?和书上是否一样?



判断钱包(qb)是否够,如果是请输出(可以买),否则请输出(钱不够)

提示1:什么时候是够了?

提示2:不能输出中文如何处理?可以加英文的双引号表示引用

下面就请同学根据书本知识在原有流程图上添加分支结构。


【教师讲授】有同学已经做出来了,老师想请他给大家演示一下,从新输入100/60/60测试“钱不够”

如果可以买了该如何?可以计算qb内的钱,并输出钱包内钱的数量



【教师讲授】

我们除了要买语文书,还可能要买数学、英语、生物、地理。。。。。

当钱不够的时候我们就不再买书了

难道我们要画很多相类似的流程吗?

书本p97

有一种结构叫做循环结构,在条件成立的时候一直做

【教师演示】演示使用循环结构完成操作


【教师讲授】至此三种常见的流程图算法结构描述就结束了,我们一起来连连看


【教师讲授】轻松一刻,让我们通过视频了解一条叫”spot”的机器狗

可以看到它其实是一条被赋予AI(人工智能)的狗,而现阶段大范围用于人工智能的语言叫做python语言,大家见过吗?


真的没见过吗?你们今天可是一直在和它打交道啊。看看画程最右侧的顶端的英文单词是什么?

是的,之所以我们可以计算出钱包的钱数原来都是python语言在帮助我们。

Python语言是一种计算机能读懂的语言,也称之为“计算机语言”

通过计算机语言描述的算法才能让计算机更“懂你”。

这就是我们今天要认识的最后一种描述方法:计算机语言描述法

【教师操作】在画程展示python代码

【学生听讲】







【学生操作】

一名学生操作游戏并用自然语言描述游戏过程



【学生回答】

不清楚


【学生听讲】



【学生回答】

确实比自然语言要清楚




















【学生实践】

根据提示画出流程图,也可以自己创造出新的内容




【学生示范】学生示范选做内容



【学生回答】可以判断,然后告诉我们钱不够






【学生回答】

一样的形状




qb>=yw



【学生实践】完成实践学习三


【学生演示】演示分支结构


【学生操作】请同学继续修改分支结构



【学生听讲】









【学生操作】连接流程图


【学生听讲】




【学生回答】没见过

引入算法的描述方法:自然语言描述算法





通过游戏让学生明白自然语言在描述算法中的不足






引入用流程图来描述算法的概念








介绍使用“画程”买书过程,了解画程的基本使用方法。













鼓励学生在此基础上添加上数学书的价格计算



学生通过尝试熟悉流程图的使用

学生模仿画出语文书的流程图,用相似的方法可以画出数学书的流程图


培养学生使用书本学习的能力












学生演示可以更好激发其余学生学习的热情





循环结构较为复杂,且课堂时间不够,所以由教师演示,学生了解循环结构





复习三种流程图的结构






通过人工智能来认识人工智能的主要编辑语言python,让学生了解“计算机语言描述算法”

总结

【教师提问】今天我们学到什么?







【教师总结】算法是解决问题的方法与步骤,如果你来描述算法,你会用哪种算法描述方式呢?

我们现阶段可以选择用流程图描述算法,当我们熟悉了python语言的基本语法规则后,我相信我们同学就可以用程序语言描述算法了。


最后,课后如果我们同学有能力,你可以登录“中国青少年发展基金会”的网站,为“希望工程”出一份力。

【学生总结】

认识了算法,了解了自然语言描述算法,流程图描述算法,顺序、分支、循环结构,程序语言描述算法


学生根据板书来总结今天的内容,回顾知识。




根据初中学生的特点,教师总结,为以后通过流程图来学习python语言作准备

点题希望工程帮助需要上学的贫困山区的孩子

板书

第1节   算法

1、 算法的概念:算法的优劣

2、 算法的描述

(网址已过期)自然语言描述

(网址已过期)流程图描述

顺序结构、分支结构、循环结构

(网址已过期)计算机语言描述:python



反思





分享到:

新闻总数:3137 今日访问量:1460 本月访问量:1308255 总访问量: 56411092

主办单位:溧阳市教师发展中心 - 地址:燕湖路1号 - 邮编:210012 - 联系电话:87215175

技术维护:南京裕后网络科技有限公司 - 备案号:苏ICP备17025136号-1