生成具有重复模式的序列的代码
Code to produce a sequence with repeating pattern
我需要一个代码来执行以下给出数字 x 的序列:
- x=1 : 1,3,5,7
- x=2 : 1,3,5,7,5,7,9,11,13
- x=3 : 1,3,5,7,5,7,9,11,13,11,13,15,17,19,21
- x=4 : 1,3,5,7,5,7,9,11,13,11,13,15,17,19,21,19,21,23,25,27,29
- x=5 : 1,3,5,7,5,7,9,11,13,11,13,15,17,19,21,19,21,23,25,27,29 ,27,29,31,33,35,37,39
在继续 +2 之前,我在模式重复旧模式的部分遇到了问题。
这是我的代码,它以一种奇怪的方式执行 +2 操作,因为我一直在尝试重复操作:
def sequence(number):
result = 1
minus = 2
for i in range(1,number+1):
for j in range(1, i+4):
print(result)
result += 2
if i%2==0:
minus += 1
result -= minus
为什么不在外循环结束时显式减少结果?
def sequence(number):
result = 1
for i in range(1, number+1):
for j in range(1, i+4):
print(result, end=' ')
result += 2
result -= 4
print()
如果您使用数字 1 到 5 调用它,则会产生以下结果。也就是说,但是,假设您希望在每次迭代中将序列增加一个项目。您的代码表明了这一点,但后两种情况下的示例有所不同。如果示例正确,您必须从第三步开始保持 i 范围不变。
1 3 5 7
1 3 5 7 5 7 9 11 13
1 3 5 7 5 7 9 11 13 11 13 15 17 19 21
1 3 5 7 5 7 9 11 13 11 13 15 17 19 21 19 21 23 25 27 29 31
1 3 5 7 5 7 9 11 13 11 13 15 17 19 21 19 21 23 25 27 29 31 29 31 33 35 37 39 41 43
我需要一个代码来执行以下给出数字 x 的序列:
- x=1 : 1,3,5,7
- x=2 : 1,3,5,7,5,7,9,11,13
- x=3 : 1,3,5,7,5,7,9,11,13,11,13,15,17,19,21
- x=4 : 1,3,5,7,5,7,9,11,13,11,13,15,17,19,21,19,21,23,25,27,29
- x=5 : 1,3,5,7,5,7,9,11,13,11,13,15,17,19,21,19,21,23,25,27,29 ,27,29,31,33,35,37,39
在继续 +2 之前,我在模式重复旧模式的部分遇到了问题。
这是我的代码,它以一种奇怪的方式执行 +2 操作,因为我一直在尝试重复操作:
def sequence(number):
result = 1
minus = 2
for i in range(1,number+1):
for j in range(1, i+4):
print(result)
result += 2
if i%2==0:
minus += 1
result -= minus
为什么不在外循环结束时显式减少结果?
def sequence(number):
result = 1
for i in range(1, number+1):
for j in range(1, i+4):
print(result, end=' ')
result += 2
result -= 4
print()
如果您使用数字 1 到 5 调用它,则会产生以下结果。也就是说,但是,假设您希望在每次迭代中将序列增加一个项目。您的代码表明了这一点,但后两种情况下的示例有所不同。如果示例正确,您必须从第三步开始保持 i 范围不变。
1 3 5 7
1 3 5 7 5 7 9 11 13
1 3 5 7 5 7 9 11 13 11 13 15 17 19 21
1 3 5 7 5 7 9 11 13 11 13 15 17 19 21 19 21 23 25 27 29 31
1 3 5 7 5 7 9 11 13 11 13 15 17 19 21 19 21 23 25 27 29 31 29 31 33 35 37 39 41 43