教科版 (2019)必修1 数据与计算2.4 可以复用的代码获奖ppt课件
展开★了解函数的作用。★学会函数的定义和调用方法,并能熟练使用函数解决问题。 ★学会发布共享代码的常见方法,并能熟练使用模块解决问题。
当我们面对一些复杂问题时, 可以采取 “自顶向下、逐步细化 ” 的方法, 即将一个完整的问题分成若干个小问题, 每个小问题实现一个 功能, 再将每个小问题逐步细化、
分解为一 系列具体可实现的步骤。本节我们将围绕 “解决火柴棒摆数字问题” 项目展开学习, 通过该项目活动, 体验复用和共享代码为编程带来的便利。
活动1 用自定义函数实现火柴棒摆数字问题
有6根火柴棒, 列出所有能摆出的自然数, 要求火柴棒正好用完。
思考,利用6根火柴棒能够列出的最大数字是多少呢?
如何计算一个数需要多少根火柴棒呢?
1.列出5个用6根火柴棒摆出的数字,分别是0 , 6 , 9 , 14 , 77 , 111
2.要摆出数字103需要多少根火柴棒?怎么计算?可以将这个数的每个数位上的数字所需要的火柴棒数加起来。
1.数字“1”需要的火柴棒最少,所以能摆出的自然数最大是1112.计算0和111之间的所有数字,统计需要的火柴棒3.只要是恰好需要6根火柴棒的直接输出。
让计算机找出这个数字中的所有个位数呢?
想一想,如果我们想得到“125”的个位上的“5”,哪种运算可以实现?除、整除还是取模?
我们定义一个变量digit来接受取模运算的结果,用tens来接受整除的结果;digit1 = 125%10tens1=125//10Digit2 = tens1%10tens2=tens1//10
如何设计算法,让计算机找出这个数字中的所有个位数呢?
1.将这个数除以10求余(取模),求得个位数;2.将这个数除以10取整数3.重复第1和第2步骤,直到这个数为0
算法的流程图描述及代码实现
list = [6,2,5,5,4,5,6,3,7,6]num = int(input(“请输入0-111之间的任意数字”))while(num>0):i = num%10s = s + list[i]num = num//10
设计函数——计算摆出一个数字需要的火柴棒数
def Match_num(num):list=[6,2,5,5,4,5,6,3,7,6]s = 0while (num>0):i = num%10s = s+list[i]num = num//10print(s)
sum = 6i = 0while(i<=111):if(Match_num(i)==sum):print(i)i = i + 1else:i=i+1
1.下列代码的输出结果是什么?()def sum(a,b):c = a + breturn cprint(sum(4,5))A.4B.5C.9D.1
1.火柴棒问题的算法分析过程2.掌握计算摆出一个数字需要多少根火柴棒的方法3.理解火柴棒问题的流程图描述4.函数的定义及调用(复用)
教科版 (2019)必修1 数据与计算2.4 可以复用的代码获奖课件ppt: 这是一份教科版 (2019)必修1 数据与计算2.4 可以复用的代码获奖课件ppt,共14页。PPT课件主要包含了学习目标,自定义函数,函数调用,代码实现,导入模块并使用,巩固提升,课堂小结等内容,欢迎下载使用。
教科版 (2019)必修1 数据与计算2.4 可以复用的代码课文ppt课件: 这是一份教科版 (2019)必修1 数据与计算2.4 可以复用的代码课文ppt课件,共16页。PPT课件主要包含了了解函数的作用,学习目标,课前复习,list,任务1阶乘,n+1,函数的概念,函数定义与使用,函数名,返回值等内容,欢迎下载使用。
教科版 (2019)必修1 数据与计算2.4 可以复用的代码优质ppt课件: 这是一份教科版 (2019)必修1 数据与计算2.4 可以复用的代码优质ppt课件,文件包含24可以复用的代码第2课时ppt、发布方法mp4等2份课件配套教学资源,其中PPT共20页, 欢迎下载使用。