2.4 可以复用的代码 课件-2023—-2024学年高中信息技术教科版(2019)必修1

2023-12-13
| 22页
| 1223人阅读
| 248人下载
普通

内容正文:

2.4 可以复用的代码(第1课时) 第2单元 编程计算 教科版(2019版) 信息技术(高中) 必修1 数据与计算 1求1!+2!+3!+4!+5! 2求1!+2!+3!+…+100! 阶乘的概念:3!=3*2*1 求1的式子很容易计算,但是随着规模增大,求到100!就比较困难 分治的思想:把一个大的问题分割成很多小的问题,把小的问题解决了,小的问题之和就是大的问题。分治思想有两步,分与合 在这个问题中发现小的问题具有相似性,用函数解决,函数的代码可以重复使用。 定义函数: 函数的代码可以重复使用 函数的组成:函数名、参数、返回值、函数体 函数的分类: 系统函数:函数库中的标准函数,程序设计语言或操作系统中提供的,如print()函数、input()函数 用户自定义函数:用户自己编写的一段程序 def 函数名(参数): #函数说明 语句或语句组 return 返回值 def factorial(n): #求n! s=1 for i in range(2,n+1): s=s* i return s #调用factorial函数 total=factorial(4) print(total) 同学们试试用这个函数求5!和6! 1!+2!+…+100! for i in range(1,101): total+total+factorial(i) print(i) #求1!+2!+3!+4!+5!阶乘题目学生作业 ? fact(n):#求n!,阶乘factorial,填写定义阶乘的语句 s=? #前面学习了雷加变量初始值0,填写累乘变量初始值 for i in range(?,?):#末尾数字20的求解阶乘范围从1到20,填写起始值和末尾值 s=s*? #每次循环对哪个变量进行累乘 return ? #函数的功能是什么,返回哪个变量的值 #python主程序 total=fact(1)+?+?+?+? #求前5个数的阶乘 print(“求1!+2!+3!+4!+5!=”,?) #输出前5个数的阶乘的和 有6根火柴棒,列出所有能摆出的自然数,要求火柴棒正好用完。 火柴棒问题 f=[6,2,5,5,4,5,6,3,7,6] 0数字用6根火柴棒,用f[0]表示 1. 列出3个可以用6根火柴棒摆放的数字,分别是 、 、 、 、 、 、 。 2. 6根火柴棒能摆放的最大数是 。 0 6 111 111 学生活动 思考1: 思想:数字1用的火柴棒数字最少,尽可能摆出更多个数字, 6根可以摆出3个数字 如何设计算法,让计算机找出这些自然数? 算法分析: 1. 对0-111之间的每一个数进行计算,统计需要的火柴棒根数。 2. 求每个数需要的火柴棒的数,如果满足6根的条件,则输出这个数 第二个步骤的内容是需要重复进行的问题,可以用可重复的代码块函数来表示 思考2: 学生活动 开始 i=0 结束 i需要火 柴棒6根 输出i i<=111 i=i+1 否 否 是 是 流程图 i是穷举范围的变量 如何计算一个数需要多少根火柴棒呢? 实现方法 1. 将这个数除以10求余,求得个位数; 2. 将这个数除以10取整,去掉个位数; 3. 重复1和2以上步骤直到这个数为0。这样每个位置上的数字都找到了,f=[6,2,5,5,4,5,6,3,7,6],f是一个列表,f[0]=6,表示数字0需要6根火柴棒,每个数字需要的火柴棒数相加,得到这个数需要的总火柴棒数。 思考3: 学生活动 整体思路 这个问题实际就是求0-111这112个数字分别需要用多少根火柴棒摆出来,然后再逐个求比较是不是用6根,如果用6根, 那么把这个数字输出 求112个数字问题,可以分解成112个子问题,112个子问题求出来,这个大的问题就求出来了 这11个问题又是相似的,可以用一个函数求解 先解决这个函数问题 函数的关键功能是是把一个数的每个位置上的数字分离出来 While (n>0): x=n%10 n=n//10 循环的过程 N x 53 ~ 5 3 0 5 这个问题实际就是求0-111这112个数字分别需要用多少根火柴棒摆出来,然后再逐个求比较是不是用6根,如果用6根,那么把这个数字输出 求112个数字问题,可以分解成112个子问题,112个子问题求出来,这个大的问题就求出来了 这11个问题又是相似的,可以用一个函数求解 先解决这个函数问题 函数的关键功能是是把一个数的每

资源预览图

2.4 可以复用的代码  课件-2023—-2024学年高中信息技术教科版(2019)必修1
1
2.4 可以复用的代码  课件-2023—-2024学年高中信息技术教科版(2019)必修1
2
2.4 可以复用的代码  课件-2023—-2024学年高中信息技术教科版(2019)必修1
3
2.4 可以复用的代码  课件-2023—-2024学年高中信息技术教科版(2019)必修1
4
2.4 可以复用的代码  课件-2023—-2024学年高中信息技术教科版(2019)必修1
5
2.4 可以复用的代码  课件-2023—-2024学年高中信息技术教科版(2019)必修1
6
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。