复习课自定义函数_第1页
复习课自定义函数_第2页
复习课自定义函数_第3页
复习课自定义函数_第4页
复习课自定义函数_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

——复习内容:分支、循环、自定义函数疯狂的兔子Snow传说有一种不死神兔出生后2个月就开始生小兔子,且每个月都可以生一对小兔子。

问:一对兔子一年内能繁殖成多少对?从图中,你发现了什么规律?规律:从第3个月起,1.每个月小兔子的对数=上个月大兔子的对数2.每个月大兔子的对数=上个月大兔子+上个月小兔子的对数3.每个月兔子的总数

=每个月小兔+大兔的对数月份小兔大兔总数110120113456活动一:用WPS求解数列使用电子表格求解为:一对兔子一年内能繁殖成多少对?10年呢?当进行到74月时,由于数据范围及表示精度的问题,导致结果出错:活动二:用Python求解数列一对兔子74个月时能繁殖成多少对?规律:从第3个月起,1.每个月小兔子的对数=上个月大兔子的对数2.每个月大兔子的对数=上个月大兔子+上个月小兔子的对数3.每个月兔子的总数

=每个月小兔+大兔的对数斐波那契数列:1,1,2,3,5,8,13……这个数列从第3项开始,每一项都等于前两项之和在数学上,以递推的方法定义:F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n>2,n∈N*)F(n)=F(n-1)+F(n-2)

(n>2,n∈N*)1(

n=1,2)1函数我们编写的程序代码中有许多功能是相似甚至完全相同的,用代码复用的方法提高程序的效率函数是代码复用的常见方法:能完成某一独立功能的子程序、程序模块。函数系统函数内置函数模块函数用户自定义函数

2内置函数是Python自带的函数,可以直接使用输入输出:input() print()类型转换:int() float() str()range()round(x,d):返回浮点数x的四舍五入值,d是小数截取位数输入内置函数时,函数名称的颜色会变为紫色,非内置函数则不会。

3模块函数是不能直接使用,使用前要导入模块导入模块使用import语句import模块名称

模块名.函数importrandoma=random.randint(10,100)print(a)math模块:数学库random模块:提供了生成随机数的工具pygame模块:专门用来开发游戏的模块。numpy模块:科学计数包,包括很多数学函数matplotlib模块:绘图库

4自定义函数用户自己编写的一段程序包含:函数名、参数(多个用逗号隔开)、函数体、返回值基本格式:def函数名(参数):#函数说明

函数体return<返回值>必不可少:函数名、函数体

5自定义函数的调用函数的调用:指函数定义以后,在代码的其他地方使用函数的动作函数的调用形式:函数名(参数)程序执行时,由于def块中的代码不是主程序的一部分,因此会跳过该段代码,从主程序的第一行开始运行。defjia(a,b):c=a+breturnch=jia(3,4)print(h)主程序例:用自定义函数编写求正方形面积defs(a):#求正方形面积s=a*areturnst=s(5)print("该正方形面积为:",t)主程序完成课堂实践任务活动1、2想一想:函数功能是?deffactorial(n): s=1 foriinrange(2,n+1): s=s*i returnstotal=factorial(4)print(total)主程序n=4s=1foriinrange(2,n+1): s=s*ireturns5填空:

《最高考》P242

第34题用Python实现递推公式:#递归求Fibonacci数列deffib(n):ifn=1orn=2:return1else:returnfib(n-1)+fib(n-2)n=int(input('输入需要计算的月份数:'))print('第‘,str(n)+‘项的值为:',fib(n)) input("运行完毕,请按回车键退出...")试试:《最高考》P242

第33题迭代计算可以用下列关系图来表示:月份12345小兔10112大兔01123总数11235f1f2f1+f2f1,f2=f2,f1+f2参考教材P29页理解:a,b=b,a迭代法的实现#迭代求Fibonacci数列deffib(n):f2=f1=1

#第1个月、第2个月初始值的设定foriinrange(3,n+1): #从第3个月至第n个月依次计算f1,f2=f2,f1+f2returnf2n=int(input('输入需要计算的月份数:'))print('兔子总对数为:',fib(n)) #输出最终值input("运行完毕,请按回车键退出...")迭代程序可以转换成等价的递归程序。以计算斐波那契数列第N项的值为例,程序间的转换如表所示:递归与迭代的关系递归和迭代的区别一、含义不同递归法,直接或间接地调用自身的方法,重复调用函数自身实现循环,递归循环中,遇到满足终止条件的情况时逐层返回来结束。迭代法,每一次对过程的重复称为一次迭代,而每一次迭代得

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论