Как вывеcти построчно целые числа от 1 до N не более C чисел в строке?

n = int(input())
i = 1
while i <= n:
    if i != 0:
        print(i)
    i += 1

Это выводит просто в ряд. А что применить, чтобы результат был:

1, 2, 3,
4, 5, 6

То есть, по три / четыре / пять чисел в строке.


Ответы (5 шт):

Автор решения: Даниил Ермошин

Попробуйте так

n=int(input())
z = int(input('Введите количество цифр в строке:')
i = 1
while i <= n:
    if i != 0:
        if i%z == 0:
            print(i, end=', \n')
        else:
            print(i, end=', ')
    i += 1
→ Ссылка
Автор решения: Kuchizu
n, c, i = int(input()), int(input()), 1
while n >= c:
    print(', '.join([str(i) for i in list(range(i, i + c))]), end = ',\n' if n - c != 0 else '')
    n -= c
    i += c
print(', '.join([str(i) for i in list(range(i, i + n))]))
→ Ссылка
Автор решения: Кирилл Малышев
print(*[', '.join(map(str, range(start, min(n + 1, start + c)))) for start in range(1, n, c)], sep=',\n')
→ Ссылка
Автор решения: KatSmi

N – Количество чисел, которое необходимо разбить на строки

C – Количество чисел в строке

def line_break(N, C):
s = [i for i in range(1, (N+1))]
y = 0

while y <= len(s):
    print(*s[0:C], end="\n")
    y += 1
    del s[0:C]
→ Ссылка
Автор решения: CrazyElf

Ну или вот так - обычный цикл, плюс два раза тернарный оператор чтобы понять, что печатать в конце строки:

n = int(input())
c = 3
for i in range(1, n+1):
    print(i, end='\n' if i == n else ', ' if (i % c) else ',\n')
→ Ссылка