刚学python 想请教一下这方面的专业人士这两道题该怎么编 害真的不会 不懂咋下手
n = int(input())
S = 0
for i in range(1,n+1):
S += (n-i+1)**i
print(S)
n = int(input())
Hailstone = [n]
while n!=1:
if n%2==1:
Hailstone.append(3*n+1)
else:
Hailstone.append(n//2)
n = Hailstone[-1]
print(Hailstone)
#Hailstone序列
def haistone(n):
hai_list = []
while n > 1:
hai_list.append(n)
if n%2: #奇数
n = 3*n + 1
else: #偶数
n = n//2
else:
hai_list.append(1)
return hai_list
试下:
res = hailstone(42)
print(res)
#[42, 21, 64, 32, 16, 8, 4, 2, 1]