这是我试图解决的问题,2,3,10,15,26,35,50之后接下来会发生什么?实际上,顺序是这样的:1*1+1=22*2-1=33*3+1=104*4-1=155*5+1=266*6-1=357*7+1=50So next sequence will be-8*8-1=63我试图以pythonic的方式解决这个问题,但我没有得到任何预期的输出:n = int(input("enter a number: "))def solve_problem(n): for x in range(n): if x % 2 == 0: return (lambda x: x**2-1) else: return (lambda x: x**2+1)solve_problem(n)如果有人能弄清楚我做错了什么,那就太好了。提前感谢您!
1 回答
慕森卡
TA贡献1806条经验 获得超8个赞
首先,您的代码中没有 print() ...你可以从这个开始:
n = int(input("enter a number: "))
def solve_problem(n):
for x in range(1,n+1):
if x % 2 == 0:
print( x**2-1)
else:
print(x**2+1)
solve_problem(n)
正如另一位贡献者所问的,这里可能不需要lambda。
添加回答
举报
0/150
提交
取消