在 Pyhon 中打印数字系列

问题描述 投票:0回答:3

帮我解决这道数列题:

输入:

5

输出:

2 
3 4 
4 5 6
5 6 7 8
6 7 8 9 10

我的节目:

rows = 6  # number of rows in the pattern
start_num = 2  # starting number for the first row

for i in range(1,rows):
    for j in range(i):
        print(start_num, end=' ')
        start_num += 1
    print()
python loops for-loop numbers series
3个回答
1
投票
rows = 5
for i in range(rows+1):
    for j in range(i):
        print(i + j + 1, end=" ")
    print()

你可以试试这个..


1
投票

你可以用一个循环和

range()
函数来做到这一点:

rows = 6  # number of rows in the pattern
start_num = 2  # starting number for the first row

for i in range(rows):
    print(*range(start_num+i, start_num+1+i+i))

*
函数前的
range()
会将
range()
函数的每次迭代展开成一个单独的参数给
print()
.


1
投票

认识到

  • i
    行的第一个数字是
    1 + i
    .
  • 每一行的第一个数字每行增加1(所以我们的外循环只需要
    for i in range(1, n_rows+1)
  • i
    行有
    i
    元素
  • 行的其余部分只是从第一个数字开始递增(所以内循环将是
    for j in range(first_num, first_num+i)
for i in range(1, n_rows+1):
    first_number = 1 + i
    for j in range(first_number, first_number + i):
        print(j, end=" ")

    print()

打印:

2 
3 4 
4 5 6 
5 6 7 8 
6 7 8 9 10
© www.soinside.com 2019 - 2024. All rights reserved.