内容正文:
2.4可以复用的代码
莒县文心高级中学 信息技术组 吴帅
1
1
三种基本程序结构
2
分支结构的特点
3
计数循环的特点
4
条件循环的特点
温故知新
2
同学们,我们前面几节内容所学习的知识,都是解决单一的一个问题,但是有些问题是有共性的,我们完全可以通过一次编程解决一类问题。也就是完成代码的‘复用。
使用“函数”和“模块”是代码复用的常见方法。
3
项目:实现火柴棒摆数字问题
有6根火柴棒,列出所有能摆出的自然数,要求火柴棒正好用完。
思考
摆出数字1,需要2根火柴棒,6根火柴棒摆出最大数为111。
4
项目:实现火柴棒摆数字问题
活动1 用流程图表述问题解决的思路
【分析】要找出这些自然数,可以从0到111,依次判断这些数是不是恰巧需要6根火柴棒。因为摆1需要2根火柴棒,是需要火柴棒最少的数字,因此6根火柴棒能摆出的最大自然数就是111。
将以上想法用流程图表示出来。
5
项目:实现火柴棒摆数字问题
活动1 用流程图表述问题解决的思路
如何计算一个数需要多少根火柴棒呢?
【分析】可以将这个数的每个数位上的数字所需要的火柴棒数加起来。
将这个数除以10取余,求得个位数;然后将这个个位数需要的火柴棒数累加;接着将这个数除以10取整,去掉个位数;重复以上步骤直到这个数为0.用流程图描述出来。
6
知识点1
函数
知识点
系统函数:
如input(),print()
用户自定义函数
7
知识点2
自定义函数
知识点
def 函数名(参数)
#函数说明
语句或语句组 #函数体
return 返回值
函数名
参数
返回值
函数体
8
n!= n*(n-1)*(n-2)*……3*2*1
举例:用函数的方式求n!
def fac(n):
#求n!
s=1
for i in range(2,n+1):
s=s*i
return s
#调用fac函数
total=fac(4)
print(total)
input("暂停...")
主程序
自定义函数部分
9
项目:实现火柴棒摆数字问题
def match_num(num):
f=[6,2,5,5,4,5,6,3,7,6]#0~9分别需要多少根火柴棒
#将火柴棒总数变量