基于计算思维的趣味任务教学实践研究

2020-08-25 07:50
魅力中国 2020年18期
关键词:整数程序设计解决问题

(山东省潍坊第一中学,山东 潍坊 261051)

高中信息技术课程中,算法与程序设计的内容相对来说难度较大,但却非常适合培养学生的计算思维。因为作为以计算机理论和概念方法为指导思想的计算思维,是学生在解决各种问题的过程中锻炼培养出来的,而程序设计恰恰是一种易于理解和表达最为直观的方式。此外,在程序设计学习中,不仅有利于学生计算思维的培养,对学生思维和心理的发展及完善也有帮助。

在讲授程序设计内容时,我们应选取真实案例,且尽可能是学生熟悉的、有趣的,理论联系实际,从而引导学生关注和发现身边的问题。从具体问题着手,找出解决问题的方法,形成算法并利用程序语言将算法思想转变为代码,进而解决问题。这种以问题为出发点的教学思想,贯穿于程序设计的整个教学过程中,从而达到了培养计算思维的目的。,进而设计出算法和计算机程序去解决这些问题,如在讲解随机函数这部分内容时,就选取了日常生活中既有代表性的又有趣的“红包”案例进行教学。

随机函数的应用——红包程序的设计

一、教材分析

本课程是属于必修课程《数据与计算》中《算法与程序实现》单元内容。通过本单元学习,能认识到数据在信息社会中的价值,合理处理与应用数据,掌握算法与程序设计的基本知识,根据实际需要运用到生活中,成为信息社会的参与者。

二、学情分析

本节是新授课,学生已经学习掌握了VB 中文本框、标签、按钮控件的添加和属性修改,对界面的设计有了初步认识,并对计算机解决问题的过程有了初步的认识,本课程继续体验计算机解决问题的过程并要求学生掌握VB 图像控件及其属性的修改。

三、教学目标

(一)复习计算机解决问题的一般过程,掌握VB 标签、文本框、按钮、图像控件的添加和属性修改;掌握随机函数rnd 和取整函数int(x)知识。能运用两个函数解决日常生活中的问题,并编写随机小程序。

(二)下发红包小程序引入随机函数,调动学生学习的积极性和主动性。通过师生互动,自主学习、精讲点拨、小组合作等方式探究函数的转化,并能根据需要通过计算对rnd 随机函数作出合理的转化。

(三)通过对随机函数rnd 和取整函数int(x)的学习,创设程序设计的情景,完成生活中的实际问题,让理论知识应用化,并具有一定的使用价值。通过应用小程序的设计激发学生后继的学习兴趣。

四、教学策略

(一)创设情景

分发红包小程序,比手气,提兴趣。点出计算机解决问题的一般过程。

(二)任务设置渐进式

任务设置由易到难,易于消化理解。特别是两个函数的学习,渐进式地计算,易于学生理解,提升计算思维。

(三)设计程序,合作探究

根据函数设计小程序,分组比赛,积极参与。

(四)任务分层

根据学情作业分层,学有余力的学生做拓展作业。

五、教学重点与难点

随机函数rnd 和取整函数int(x)的转化应用

六、教学过程

【导入】:体验抢红包小程序。

提问:同学们,请大家先想一想生活中有哪些常用的随机数?(用随机函数点数提问)

引导复习计算机解决问题的一般过程:

【自主学习】

rnd:【随机函数】随机生成一个[0.1)之间的实数,在调用Rnd 之前,先使用Randomize 语句初始化随机数生成器。大家可以先试一下,rnd 随机函数,取值范围是[0,1)

【精讲点拨】

思考:如何表示[0,10)之间的实数?如何表示[0,9]之间的整数?综合示例:

1.随机生成0,1,2……9 其中的一个整数:a=Int(10 * Rnd)

2.生成1 到6 之间的随机整数x:x=Int((6 * Rnd)+1) 。

由于Rnd 是[0,1),(6*Rnd)+1 为[1,7)。int 是求不大于number的最大整数,所以得出1 到6 的随机整数。

【实践练习】

基础任务 1、随机出现[0,10)之间的随机数;2、随机出现[1,10]之间的随机整数

提升任务 3、随机生成的10 以内红包金额

程序界面设计

体验rnd 随机函数和int 取整函数:

任务一:单击【rnd】按钮时,显示[0,10)之间的随机数。

任务二:单击【int】按钮时,显示[1,10]之间的随机整数。

【任务提升】

任务三:揭开红包奥秘:

单击红包图像,红包图像打开,同时显示随机生成的10 以内红包金额。

提示:image2 的visible 属性设为false,设为不可见。

【拓展任务】

任务四、制作随机计算器

【提交作业及作业评价展示】

分组评价作业。

1.界面美观大方 2.任务三个及以上 3.调试运行无误

【本节小结】

程序设计一般步骤:界面设计——属性设置——编写代码——调试运行——保存。

猜你喜欢
整数程序设计解决问题
联系实际 解决问题
助农解决问题增收致富
医学专业“Python程序设计”课程教学改革总结与思考
基于Visual Studio Code的C语言程序设计实践教学探索
解决问题的设计
面对面沟通交流 实打实解决问题
从细节入手,谈PLC程序设计技巧
一类整数递推数列的周期性
高职高专院校C语言程序设计教学改革探索
答案