用户:秋葵查看:6 回复:3 评论:6 创建时间:2018-12-18T20:50:55
Hello!
通天塔S2再次开发了!
大家听了我的教程
是不是感觉茅塞顿开呢!



题目1 完美数判断
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。
6的因数为1,2,3,6
我们可以发现1+2+3=6
所以6是一个完美数
分析:
1.获取一个整形输入
2.遍历从1~这个数本身-1
3.设置一个变量number=0 将所有的因数加到这个number里头
4.判断number是否等于输入
5.打印结果
代码解析:
#获取输入,设置number=0
n=int(input())
number=0
#遍历1~n-1
for i in range(1,n):
#判断是否为因数
if n%i==0:
number+=i
#如果相等
if number==n:
#打印结果
print("Yes")
else:
print("No")



题目2 快乐走路
分析:
根据输入来判断
当输入等于1时:打印3
当输入等于2时:打印7
当输入等于3时:打印15
当输入等于4时:打印31
(枚举下....)
我们会惊奇的发现:3,7,15,31的关系为*2+1的关系
我们可以猜想输入等于5时 打印62
以此类推
代码解析:
#获取数值
a=int(input())
#定义递归函数
def f(a):
#如果等于1时
if a==1:
#返回3
return 3
elif a==2:
return 7
elif a==3:
return 15
#放回上一个数的两倍+1
return f(a-1)*2+1
#打印
print(f(a))



题目3 欢乐的跳
分析:
1.获取整形整理后的列表
2.生成需要的数的列表
3.遍历所生成的列表
4.如果不在打印Not jolly 否则最后打印jolly
代码解析:
#获取整形整理后的列表
n=sorted(list(map(int,input().split())))
#找出jump数的范围
jump=abs(len(n)-1)
#生成jump数列表
jump_list=[i for i in range(1,jump+1)]
#遍历jump_list
for i in jump_list:
#如果遍历的值不在n里头
if i not in n:
#打印
print("Not jolly")
#中断
break
#否则
else:
#打印
print("Jolly")



曾经遥不可及的80层
现已经岌岌可危了


