内容正文:
教科版(2019版)信息技术
(高中 必修1 数据与计算)
第2单元 编程计算
2.4 可以复用的代码
复习
1. 了解循环的基本结构
2. 学会计数循环的使用方法
3. 学会条件循环的使用方法
4. 熟练使用循环解决实际问题
If 条件:
语句或语句组
双分支
If 条件:
语句或语句组A
else:
语句或语句组B
for 循环变量 in 列表:
语句或语句组
for语句的基本格式:
while 关系表达式:
语句或语句组
while语句的基本格式:
if语句单分支格式:
if语句双分支格式:
If 条件:
语句或语句组
双分支
If 条件:
语句或语句组A
else:
语句或语句组B
for 循环变量 in 列表:
语句或语句组
for语句的基本格式:
while 关系表达式:
语句或语句组
while语句的基本格式:
if语句单分支格式:
if语句双分支格式:
用火柴棒,列出0-9的自然数。
思考:有6根火柴棒,列出所有能摆出的自然数,要求火柴棒正好用完?
阿拉伯舒数:0,1 ,2,3,4,5,6,7,8,9
所需火柴数:6,2 ,5,5,4,5,6,3,7,6
1. 列出3个可以用6根火柴棒摆放的数字,分别是
、 、 、 、 、 、 。
2. 6根火柴棒能摆放的最大数是 。
0
6
9
14
41
77
111
111
设计构思:让计算机找出这些自然数?
1. 数字“1”需要的火柴棒最少,因此能摆出的自然数最大是111。
2. 对0-111之间的每一个数进行计算,统计需要的火柴棒根数。
3. 凡是恰好需要6根火柴棒的数直接输出。
思考:
开始
sum=6
输出“你可以拼出这些数字:”
i=0
i<=111
输出i
i=i+1
结束
match num(i)==snum
否
否
是
是
主程序
程序员甲
自定义函数
Match_num(num)
x=num%10
total=f(0)
total=total+f(x)
num=num//10
f=(6,2,5,5,4,5,6,3,7,6)
return total
自定义函数结束
num==0
num>0
total=0
是
否
否
def块
(自定义函数)
程序员乙
两程序员如何合作?
函数
参数是用来向函数传递值的,当有多个参数时,各个参数之间用逗号开。函数执行完后,由return语句将表达式值返回给调用者,结束函数。
一、函数:
系统函数(例如:print( )、input( ))
用户自定义函数
函数可分为系统函数和用户自定义函数。
前面使用过的print( )和input( )函数都是系统函数
自定义函数:一般包括函数名、参数、返回值和函数体等四部分。
def 函数名(参数):
#函数说明
语句或语句组
return 返回值
用自定义函数用来求阶乘n!
阶乘n!
=1×2×3×.....×(n-1)×n
什么是阶乘?
用自定义函数用来求阶乘n!
2.运行主程序时遇到
调用的函数,返回
运行自定义函数:
1.先运行(主程序):
#返回s的值
#自定义函数
开始
sum=6
输出“你可以拼出这些数字:”
i=0
i<=111
输出i
i=i+1
结束
match num(i)==snum
否
否
是
是
snum=6
print("你可以拼出这些数字:")
for i in range(112):
if match_num(i)==snum:
print(i)
input("运行完毕,请按回车键退出")
P43
snum=6
print("你可以拼出这些数字:")
for i in range(112):
if match_num(i)==snum:
print(i)
input("运行完毕,请按回车键退出")
def match_num(num)
f=[6,2,5,5,4,5,6,3,7,6] #0至9分别需要多少根火柴棒
if num==0: #将火柴棒总数变量赋初值
total=f[0]
else:
total=[0]
while (num>0):
x=num % 10 #取num除以10的余数,即num的个