高中信息技术教科版 (2019)必修1 数据与计算2.4 可以复用的代码公开课第2课时教学设计
展开课题
2.4 可以复用的代码(第2课时)
单元
2
学科
信息技术
年级
高一
学习
目标
通过火柴棒摆数字问题,了解函数的作用;掌握函数的定义和调用方法;掌握发布共享代码、导入和使用模块的方法。
通过解决复杂问题,形成“自顶向下、逐步细化”的思想,提高数字化分享的意识,能在虚拟社会中与其他成员安全、负责任的交流。
重难点
函数的定义
发布共享代码
导入模块并使用
教学过程
教学环节
教师活动
学生活动
设计意图
导入新课
函数可分为系统函数和用户自定义函数。
前面使用过的print( )和input( )函数都是系统函数
讲授新课
自定义函数:一般包括函数名、参数、返回值和函数体等四部分。
定义函数的基本格式是:
def 函数名(参数):
#函数说明
语句或语句组
return 返回值
参数是用来向函数传递值的,当有多个参数时,各个参数之间用逗号开。函数执行完后,由return语句将表达式值返回给调用者,结束函数。
【活动1】
下面来看一个简单的例子,这个函数用来求n!
def factrial(n):
#求n!
s=1
fr i in range(2,n+1):
s=s*i
return s
# 调用factrial 函数
ttal=factrial(4)
print(ttal)
【发布共享代码】
请将“计算一个数字需要多少根火柴棒”的函数match-num转换为模块,然后发布。
首先做好发布前的准备工作。在D:\创建一个文件夹mymdule,
其中包含mymdule.py和setup.py两个文件。
mymdule.py是一个模块文件,其内容就是match-num函数。
def match_num(num)
f=[6,2,5,5,4,5,6,3,7,6] #0至9分别需要多少根火柴棒
if num==0: #将火柴棒总数变量赋初值
ttal=f(0)
else:
ttal=0
while (num>0):
x=num % 10 #取num除以10的余数,即num的个位数
ttal=ttal+f(x) #所需火柴棒数累加
num=num//10 # num整除10,即去掉num的个位数
return ttal #返回需要多少根火柴棒
frm distutils.cre imprt setup
setup(
name='mymdule',
versin='1.0.0',
py_mdules=['mymdule'],
authr='yd',
authr_email='yd@mail.cm',
descriptin='计算一个数字需要多少根火柴棒',
【导入模块并使用】
已经构建发布的模块必须先导入程序,然后才能使用。
可使用语句“imprt mymdule”导入。
imprt mymdule #导入模块
snum=6
print(‘你可以拼出这些数字:’)
fr i in range(112):
if mymdule.match_num()==sum:
print(i)
学习自定义函数
课堂小结
1、函数的作用
2、函数的定义和调用、共享代码的发布
巩固练习
利用randm模块可以生产随机数,程序如下
imprt randm
num=randm.randint(0,1) #产生一个[0,1]之间的随机整数
print(num)
高中信息技术教科版 (2019)必修1 数据与计算3.1 数据编码第2课时教案及反思: 这是一份高中信息技术教科版 (2019)必修1 数据与计算3.1 数据编码第2课时教案及反思,共8页。教案主要包含了导入,新知新授,文本数据的编码,课堂小结等内容,欢迎下载使用。
高中教科版 (2019)3.2 数据与结构第二课时教案设计: 这是一份高中教科版 (2019)3.2 数据与结构第二课时教案设计,共5页。教案主要包含了导入,新知新授,课堂小结等内容,欢迎下载使用。
高中信息技术教科版 (2019)必修1 数据与计算2.4 可以复用的代码优秀第1课时教案设计: 这是一份高中信息技术教科版 (2019)必修1 数据与计算2.4 可以复用的代码优秀第1课时教案设计,文件包含24可以复用的代码学案doc、24可以复用的代码第1课时教案docx等2份教案配套教学资源,其中教案共8页, 欢迎下载使用。