用户:秋葵查看:0 回复:1 评论:0 创建时间:2018-12-22T15:48:00
这里是通天塔77层
这里是通天塔77层
这里是通天塔77层
收到请回复!



题目1 国王和骑士
分析:
1.获取整数k
2.进行无限循环
3.在循环内进行每次在列表末尾加上值
4.每次while循环前都使得自变量+1,便遍历自变量
5.判断列表长度和k值的大小
6.迭代列表
代码解析:
#获取数据k
k = int(input())
#c为自变量
c = 0
#设置空列表为l
l = []
#设置b为True
b = True
#无限循环
while b:
#c不断+1
c += 1
#遍历c的次数
for i in range(c):
#让l末尾加上c
l.append(c)
#判断列表长度是否大于k
if (len(l) >= k):
#设置b为False
b = False
#中断
break
#打印迭代的数值
print(sum(l))



题目2:花里胡哨方程组pell
分析:
1.导入math库
2.获取整数D
3.开始无限遍历自然数
4.利用开方来判断是否相等
5.打印结果,结束循环
代码解析:
#导入math库,毕竟计算量大
import math
#获取整数输入D
D=int(input())
#设置y值为5
y=5
#设置ok为0
ok=True
#设置number值为0
number=0
#开始无尽之旅
while ok:
#每次y+1
y+=1
#设置number=y的平方
number=y*y
#判断二者是否相等(一个是浮点形和整形,如果相等就是开方为整数)
if math.sqrt(number*D+1)==int(math.sqrt(number*D+1)):
#打印这两个数停止循环
print(int(math.sqrt(number*D+1)),int(math.sqrt(number)))
ok=False



题目3:递推2.0
分析:
n=1时 返回3
n=2时 返回7
n=3时 返回17
n=4时 返回41
n=5时 返回99
.....
n=m时 返回(n-1)时*2+(n-2)时
代码解析:
#获取数值
n=int(input())
#定义递归函数
def f(n):
#如果等于1时
if n==1:
#返回3
return 3
elif n==2:
return 7
elif n==3:
return 17
#放回上一个数的两倍+上上个数
return f(n-1)*2+f(n-2)
#打印
print(f(n))


