小学课后服务 Python少儿编程 基础篇:10-多样数列 课件 (23张PPT)

资源下载
  1. 二一教育资源

小学课后服务 Python少儿编程 基础篇:10-多样数列 课件 (23张PPT)

资源简介

(共23张PPT)
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
少儿编程课
多样数列
字符串的遍历
for x in 字符串:

字符串[下标]
字符串1 + 字符串2
字符串 * 数字
print('hello'+'world') #helloworld
print('xyz'*3) #xyzxyzxyz
for x in 'python':
print(x) #p y t h o n
s='python'
print(s[0]) #p
print(s[1]) #y
print(s[-1]) #n
字符串的切片
切片:
[起点:终点:步长]
s='python'
print(s[1:3:1])
print(s[1:3])
print(s[:3:])
print(s[1::])
print(s[::-1])
数列
按一定次序排列的一列数称为数列(sequence of number)
数列中的每一个数都叫做这个数列的项,排在第一位的数列称为这个数列的第1项(通常也叫做首项)排在第二位的数称为这个数列的第2项……排在第n位的数称为这个数列的第n项
项数有限的数列为“有限数列”,项数无限的数列为“无限数列”
数列各项呈周期性变化的数列叫做周期数列
从第2项起,每一项都大于它的前一项的数列叫做递增数列;从第2项起,每一项都小于它的前一项的数列叫做递减数列;各项相等的数列叫做常数数列
等差数列
如果一个数列从第2项起,每一项与它的前一项的差等于同一个常数,这个数列就叫做等差数列(arithmetic sequence)
这个常数叫做公差,通常用字母d表示
例如:1, 3, 5, 7, 9,11…就是一个无限递增的等差数列,公差为2
请计算该数列第2018项数字是几?
等差数列
使用循环进行计算
利用数列中公差和数列项的变化规律,计算出指定项的数值
等差数列
使用for循环
使用while循环
n=0 #项数
x=-1 #数列中项的值
while n!=2018:
x+=2 #增加公差改变数值
n+=1 #改变项数
print(x)
n=-1 #数列中项的值
for x in range(2018):
n+=2 #增加公差改变数值
print(n)
奥运会
第一届奥运会于1896年举行,2020年东京奥运会是第几届?
使用循环进行计算:
这里每一个奥运年实际是数列中每一项的值,而届数实际是项数
所以,我们要计算的是从1896到2020这个公差为4的有限递增数列中,
2020是数列的第几项
奥运会
n=1
for x in range(1896,2020,4):
n+=1
print(n)
n=1
x=1896
while x!=2020:
n+=1
x+=4
print(n)
递增数列
观察下列数列变化规律:
9,20,33,48,…
求出该数列的第100个数字是几?
递增数列
与等差数列不同的是,这一次数列在增大的时候,第n项和第n+1项之间的差呈有规律的增大。第一项和第二项之间差11,第二项和第三项之间差13,第三项和第四项之间差15,依次类推。
利用循环和利用公差的变化规律计算第100项的数值
递增数列
使用for循环
使用while循环
n=0
x=0
while x!=100:
n+=9+2*x
x+=1
print(n)
n=0
for x in range(100):
n+=9+2*x
print(n)
斐波那契数列
在众多数列中,最有名的一个数列当属斐波那契数列。斐波那契数列的发明者,是意大利数学家列昂纳多·斐波那契(Leonardo Fibonacci)
斐波那契数列指的是这样一个数列“ 1, 1, 2, 3, 5, 8, 13, 21, 34, 55...”这个数列从第3项开始,每一项都等于前两项之和
如果用曲线连接数列中的数字,则图形如图所示:
斐波那契数列
计算斐波那契数列数列的第20项数字是多少?
前20项中,有多少个奇数?多少个偶数?
第10个奇数是几?
斐波那契数列
用数字a代表数列当前项数字,用b代表数列当前项后一项数字
1, 1, 2, 3
a b
斐波那契数列
每次计算时,都要先计算出当前项后二项的数字
例如:当前项是数列的第3项(a=2,b=3),则第5项的值为5(即a+b)
1, 1, 2, 3, 5
a b
斐波那契数列
为了让数列延续,当前项向后移动一位,也就是当前项变为第4项,
a = 3,b = 5
1, 1, 2, 3, 5
a b
斐波那契数列
整个计算过程就是不断的重复上面几个步骤,计算当前项数字的后两项,向后移动当前项。直到当前项是第20项时停止
1, 1, 2, 3, 5, 8, 13, 21, 34, ……, 6765, 10946
a b
斐波那契数列
可以看到此时数列中有奇数也有偶数。所以可以使用两个列表,一个用来存放奇数,另一个用来存放偶数
es = [ ] 存放偶数 2,8,34…
os = [ ] 存放奇数 1,1,3,5,13…
1, 1, 2, 3, 5, 8, 13, 21, 34, ……, 6765, 10946
a b
斐波那契数列
es=[] #存放偶数
os=[] #存放奇数
a=0 #用来记录当前项
b=1 #用来记录当前项的后一项
for x in range(20):
a,b=b,a+b #计算后一项,并让当前项后移一位
if a%2==0:
es.append(a) #若当前项a为偶数
else:
os.append(a) #若当前项是奇数
print(a) #打印当前项数字,也就是数列中第20项数字
print(len(es)) #有多少个偶数
print(len(os)) #有多少个奇数
print(os[9]) #第10个奇数
递归
def f(n):
if n==1:return 1
if n==2:return 2
return f(n-2)+f(n-1)
print(f(20))
递归实现

展开更多......

收起↑

资源预览