day09 小练习 斐波那契数列 文件
#2.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,
# 并将其作为新列表返回。
# def get_odd_list(info):
# ul=info[1::2]
# return ul
# print(get_odd_list([2,3,4,5,6]))
#3.写函数,判断用户传入的一个对象(字符串或列表或元组任意)
# 长度是否大于5,并返回真假。
# def get_len(obj):
# if len(obj)>5:
# return True
# else:
# return False
# print(get_len("sjsjsjsj"))
#4.写函数,接收两个数字参数,返回比较大的那个数字。
# def get_big(a1,a2):
# val=a1 if a1>a2 else a2
# return val
# print(get_big(22,11))
#5.写函数,函数接收四个参数分别是:姓名,性别,年龄,学历。
# 用户通过输入这四个内容,然后将这四个内容传入到函数中,此函数接收到这四个内容,
# 将内容根据"*"拼接起来并追加到一个student_msg文件中。
def get_info(name,sex,age,degree):
temp=[name,sex,age,degree]
info="*".join(temp)
with open("student_msg.txt",mode="a",encoding="utf-8") as stu_msg:
stu_msg.write(info+"\n")
while True:
name=input("请输入名字:")
if name.upper()=="N":
break
sex=input("请输入性别:")
age=input("请输入年龄:")
degree=input("请输入学位:")
get_info(name,sex,age,degree)
#6.写函数,在函数内部生成如下规则的列表 [1,1,2,3,5,8,13,21,34,55…](斐波那契数列),
# 并返回。 注意:函数可接收一个参数用于指定列表中元素最大不可以超过的范围。
# def get_list(max):
# sum=[1,1]
# for i in range(2,888):
# temp=sum[i-2] + sum[i-1]
# if temp>max:
# break
# sum.append(temp)
# return sum
#
# print(get_list(99))
#[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
#优化
def get_list(max):
sum=[1,1]
f1 = 1
f2 = 1
while True:
f3=f1+f2#
if f3>max:
break
f1=f2#替换暂存值 f2和f1一直往前移动变换值
f2=f3#替换暂存值 计算的值永远放在f3中
sum.append(f3)
return sum
print(get_list(99))
#[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]
#再优化
def fun(max):
info_list=[1,1]
#计算列表中的第三个数,利用-index
while True:
v3=info_list[-1]+info_list[-2]
if v3>max:
break
info_list.append(v3)
return info_list
print(func(1000))
#7.写函数,验证用户名在文件 data.txt 中是否存在,如果存在则返回True,否则返回False。
# (函数有一个参数,用于接收用户输入的用户名)
# data.txt文件格式如下:
#
# 1|alex|123123
# 2|eric|rwerwe
# 3|wupeiqi|pppp
# def get_judge(val):
# with open("data.txt",mode="r",encoding="utf-8") as f:
# data=f.read().split("\n")
# ul=[]
# for ele in data:
# ele=ele.split("|")
# ul.append(ele[1])
# if val in ul:
# return True
# else:
# return False
#
#
#
# val = input("请输入用户名:")
# print(get_judge(val))
#方法二 flag
#flag=False
#def get_judge(val):
# with open("data.txt",mode="r",encoding="utf-8") as f:
# data=f.read().split("\n")
# ul=[]
# for ele in data:
# ele=ele.split("|")
# if ele[1]==val:
# flag=True
# return flag
#
#
#
# val = input("请输入用户名:")
# print(get_judge(val))
#
#
#方法三:利用函数的默认返回值None
#flag=False
#def get_judge(val):
# with open("data.txt",mode="r",encoding="utf-8") as f:
# data=f.read().split("\n")
# ul=[]
# for ele in data:
# ele=ele.split("|")
# if ele[1]==val:
# return True
#
#val =get_judge(val)
#if val:
# print("存在")
#else:
# print("不存在")
#
# val = input("请输入用户名:")
# print(get_judge(val))
#
#
day09 小练习 斐波那契数列 文件的更多相关文章
- P2626 斐波那契数列(升级版)(合数的质数分解, 大数为素数的概率十分小的利用)
题目背景 大家都知道,斐波那契数列是满足如下性质的一个数列: f(1)=1f(1) = 1 f(1)=1 f(2)=1f(2) = 1f(2)=1 f(n)=f(n−1)+f(n−2)f(n) = f ...
- M斐波那契数列(矩阵快速幂+费马小定理)
M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Sub ...
- HDU 4549 M斐波那契数列(矩阵快速幂+费马小定理)
M斐波那契数列 Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Submi ...
- HDOJ 4549 M斐波那契数列 费马小定理+矩阵高速幂
MF( i ) = a ^ fib( i-1 ) * b ^ fib ( i ) ( i>=3) mod 1000000007 是质数 , 依据费马小定理 a^phi( p ) = 1 ( ...
- HDU4549 M斐波那契数列 —— 斐波那契、费马小定理、矩阵快速幂
题目链接:https://vjudge.net/problem/HDU-4549 M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Li ...
- hdu 4549 M斐波那契数列(快速幂 矩阵快速幂 费马小定理)
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=4549: 题目是中文的很容易理解吧.可一开始我把题目看错了,这毛病哈哈. 一开始我看错题时,就用了一个快速 ...
- 【费马小定理+矩阵快速幂】HDU4549——M斐波那契数列
[题目大意] M斐波那契数列F[n]是一种整数数列,它的定义如下:F[0] = aF[1] = bF[n] = F[n-1] * F[n-2] ( n > 1 )现在给出a, b, n,求出F[ ...
- HDU——4549M斐波那契数列(矩阵快速幂+快速幂+费马小定理)
M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Su ...
- [NOIP1997] P2626 斐波那契数列(升级版)
题目背景 大家都知道,斐波那契数列是满足如下性质的一个数列: • f(1) = 1 • f(2) = 1 • f(n) = f(n-1) + f(n-2) (n ≥ 2 且 n 为整数). 题目描述 ...
随机推荐
- NullPointerException空指针异常——没有事先加载布局文件到acitivy——缺少:setContentView(R.layout.activity_setup_over);
空指针异常: 04-27 01:13:57.270: E/AndroidRuntime(4942): FATAL EXCEPTION: main04-27 01:13:57.270: E/Androi ...
- 利用IIS部署WEB网站以及解决CSS/JS不能显示问题
利用IIS部署WEB网站以及解决CSS/JS不能显示问题 转载声明:http://blog.sina.com.cn/s/blog_a001e5980101b4kt.html vs中正常IIS发布网站后 ...
- Windows操作系统下搭建Git服务器和客户端。
本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...
- 字符串的顺序倒置。(Reverse)
实际遇到的问题:在串口获取码表数据的时候,有的码表传到电脑上的数字顺序是颠倒的,即:123.45,会显示为54.321.需要重新处理数据.方法很多,也不难实现,现在列举其中5个. public str ...
- h265文件分析(纯c解析代码)
参考链接: 1. HEVC码流解析 https://blog.csdn.net/CrystalShaw/article/details/80624804 2. HEVC编码结构:序列参数集SPS. ...
- h264文件分析(纯c解析代码)
参考链接:1. 解析H264的SPS信息 https://blog.csdn.net/lizhijian21/article/details/80982403 2. h.2 ...
- 最近工作再弄基于bootstrap的定制sass
封装各种组件如 button table 当然..我只才做完两个. 比如table 抽出很多类以后可以配置的值 还有button 目录结构大致是 scss主要css文件 base和components ...
- jsp页面传中文到后台乱码怎么办?
一般从前台传值到后腰如果传的值是中文的话,又不用post传值方式,到后台显示会显示成乱码的形式.所以以下方法亲测有效防止乱码. 前台jsp页面: var taskTitle = $('#taskTit ...
- 机器学习笔记(四)Logistic回归模型实现
一.Logistic回归实现 (一)特征值较少的情况 1. 实验数据 吴恩达<机器学习>第二课时作业提供数据1.判断一个学生能否被一个大学录取,给出的数据集为学生两门课的成绩和是否被录取 ...
- 前端特效demo | 值得收藏的6个 HTML5 Canvas 实用案例
HTML5 动画在Canvas 上得到了充分的发挥,我们 VIP 视频也分享过很多相关的动画特效制作视频,这次给大家带来 6 款超炫酷的HTML5 canvas 动画的 demo,一起来看看吧~ 文内 ...