Python实现斐波那契数列,九九乘法表,金字塔方法。
斐波那契数列
普通函数实现
#普通函数
def fb(max):
a,b=0,1
while a<max:
print(a)
a,b=b,a+b fb(100)
递归实现方法1
def fb1(max,a=1,b=1):
if a<max:
print(a)
fb1(max,b,a+b)
fb1(1000,77,88)
递归实现方法2,写法最简洁,但是效率最低,会出现大量的重复计算
def function(n):
assert n >= 0, 'n > 0'
if n<= 1:
return n
return function(n-1) + function(n-2)
print(function(4))
for i in range(0,20):
print(function(i),end=',')
递推法,递推法,就是递增法,呈线性增长,如果数据量巨大,速度会越拖越慢
def function(n):
a,b = 0,1
for i in range(n):
a,b = b,a+b
return a
print(function(3))
生成器实现
def fib(max):
a,b = 0,1
while a<max:
yield a
a,b = b,a+b
fib_gt=fib(100)
#调用生成器,生成数列
print(next(fib_gt))
print(next(fib_gt))
金字塔
n = int(input('请输入你需要打印星星的层数:'))
for i in range(1, n + 1):
print(' ' * (n - (i - 1)) + '*' * (2 * i - 1))
乘法表 方向1
for i in range(1,10):
for j in range(1,i+1):
d = i * j
print('%d*%d=%-2d'%(i,j,d),end = ' ' )
print()
方向二
def hanshu(n):
m = n
sums = 0
for j in range(1,n+1):
sums = m*j
print("%d*%d=%-2d"%(m,j,sums),end = " ")
print("")
def hanshu1():
for i in range(9,0,-1):
hanshu(i)
hanshu1()
方向三
def hanshu(n):
m = n
sums = 0
for k in range(0,10-n):
print(" ",end = "")
for j in range(1,n+1):
sums = m*j
print("%d*%d=%-2d"%(m,j,sums),end = " ")
print("") def hanshu1():
for i in range(1,10):
hanshu(i) hanshu1()
方向四
def hanshu(n):
for dix in range(10-n,0,-1):
print(" ",end = "")
sums = 0
m = n
for j in range(1,n+1):
sums = m*j
print("%d*%d=%-2d"%(m,j,sums),end = " ")
print("")
def hanshu1():
for i in range(9,0,-1):
hanshu(i)
hanshu1()
done。
Python实现斐波那契数列,九九乘法表,金字塔方法。的更多相关文章
- python实现斐波那契数列(Fibonacci sequence)
使用Python实现斐波那契数列(Fibonacci sequence) 斐波那契数列形如 1,1,2,3,5,8,13,等等.也就是说,下一个值是序列中前两个值之和.写一个函数,给定N,返回第N个斐 ...
- Python中斐波那契数列的四种写法
在这些时候,我可以附和着笑,项目经理是决不责备的.而且项目经理见了孔乙己,也每每这样问他,引人发笑.孔乙己自己知道不能和他们谈天,便只好向新人说话.有一回对我说道,“你学过数据结构吗?”我略略点一点头 ...
- python基础----斐波那契数列
python实现斐波那契数列的三种方法 """ 斐波那契数列 0,1,1,2,3,5,8,13,21,... """ # 方法一:while ...
- 斐波那契数列 矩阵乘法优化DP
斐波那契数列 矩阵乘法优化DP 求\(f(n) \%1000000007\),\(n\le 10^{18}\) 矩阵乘法:\(i\times k\)的矩阵\(A\)乘\(k\times j\)的矩 ...
- Python中斐波那契数列的赋值逻辑
斐波那契数列 斐波那契数列又称费氏数列,是数学家Leonardoda Fibonacci发现的.指的是0.1.1.2.3.5.8.13.21.34.······这样的数列.即从0和1开始,第n项等于第 ...
- python实现斐波那契数列
https://www.cnblogs.com/wolfshining/p/7662453.html 斐波那契数列即著名的兔子数列:1.1.2.3.5.8.13.21.34.…… 数列特点:该数列从第 ...
- python实现斐波那契数列笔记
斐波那契数列即著名的兔子数列:1.1.2.3.5.8.13.21.34.…… 数列特点:该数列从第三项开始,每个数的值为其前两个数之和,用python实现起来很简单: a=0 b=1 while b ...
- [Python3.X]python 实现斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一 ...
- Python——通过斐波那契数列来理解生成器
一.生成器(generator) 先来看看一个简单的菲波那切数列,出第一个和第二个外,任意一个数都是由前两个数相加得到的.如:0,1,1,2,3,5,8,13...... 输入斐波那契数列前N个数: ...
随机推荐
- [Python] Python 模拟登录,并请求
Python 模拟登录,并请求 # encoding: utf- import requests import socket import time socket.setdefaulttimeout( ...
- linux在目录下查字符串, 查文件数目
在目录下所有文件中查找某个字符串(递归查) grep -rnl '字符串' 目录名 统计一个文件夹下目录数或文件数, 如下分步讲解: 1. 显示目录下内容: ls -l ...
- uniApp上传图片
项目中用到了上传图片的功能,记录一下.增强记忆. 要上传图片首先就要先选择图片,或者是先拍照,此时先调用的是 chooseImage 接口,此接口可选择拍照也可以从相册中选择. 它有几个参数,具体可以 ...
- GreenPlum 大数据平台--增加segment
01,增加机器的配置 需要增加的机器安装greenplum 软件(操作见greenplum安装部署章节) 02,分配机器存储区域 03,配置互信 使用gpssh-exkeys确保Segment主机能通 ...
- centos7.5安装java JDK、tomcat、mysql
参考资料: https://www.cnblogs.com/sxdcgaq8080/p/7492426.html https://blog.csdn.net/ds986619036/article/d ...
- ES6模版字符串
传统的 JavaScript 语言,输出模板通常是这样写的(下面使用了 jQuery 的方法). $('#result').append( 'There are <b>' + basket ...
- pytorch_01_基础_一维线性回归
pytorch基础 pytorch官方文档:https://pytorch.org/docs/master/nn.html#linear-layers import torchfrom torch i ...
- python 进程数据通信
进程通信的第一种方式from multiprocessing import Process,Queue def f(q): q.put([42,2,'hello']) print('zi q id:' ...
- vertica内存不足的解决方案
执行以下语句: alter resource pool general MAXMEMORYSIZE '80%'; 当内存达到80%时,新的任务进去等待状态,直到前面任务执行完毕.
- ng使用bootstrap
1.在项目中使用命令 npm i bootstrap -s来创建bootstrap 2.创建完成之后在 angular.json中引入进去 "styles": [ ...