Сделал 14 задание (исправил)
This commit is contained in:
parent
c10ec574ca
commit
3bae7b04c6
42
lesson.14.py
42
lesson.14.py
|
|
@ -1,19 +1,21 @@
|
||||||
''' ****** Задание 14 из 20 Параграф 2.4 *********
|
''' ****** Задание 14 из 20 Параграф 2.4 *********
|
||||||
* Давайте ещё немного поможем воспитательнице — на этот раз с новым вариантом числового прямоугольника.
|
* Обычные прямоугольники — это, конечно, хорошо… но дети быстро теряют к ним интерес.
|
||||||
|
Поэтому воспитательница просит вас придумать что-нибудь поинтереснее. Например — числовую змейку!
|
||||||
|
|
||||||
На первый взгляд он похож на предыдущий…
|
В этой змейке строки чередуются: одна идёт слева направо, следующая — справа налево, потом снова слева направо… и так далее.
|
||||||
Но здесь числа идут по столбцам, а не по строкам. И это меняет всё!
|
Настоящее приключение для тех, кто учит числа!
|
||||||
|
|
||||||
Напишите программу, которая заполняет прямоугольник числами от 1 до N × M, по столбцам, а не по строкам и форматирует их так, чтобы все столбцы были одинаковой ширины.
|
Напишите программу, которая строит числовую змейку из чисел от 1 до N × M.
|
||||||
|
|
||||||
Формат ввода
|
Формат ввода
|
||||||
В первой строке записано число N — высота числового прямоугольника.
|
В первой строке записано число
|
||||||
Во второй строке указано число M — ширина числового прямоугольника.
|
N — высота числового прямоугольника.
|
||||||
|
Во второй строке указано число
|
||||||
|
M — ширина числового прямоугольника.
|
||||||
|
|
||||||
Формат вывода
|
Формат вывода
|
||||||
Нужно вывести сформированный числовой прямоугольник требуемого размера.
|
Нужно вывести сформированную числовую змейку требуемого размера.
|
||||||
Чтобы прямоугольник был красивым, каждый его столбец должен обладать одинаковой шириной.
|
Чтобы прямоугольник был красивым, каждый его столбец следует сделать одинаковой ширины.
|
||||||
|
|
||||||
|
|
||||||
Пример 1
|
Пример 1
|
||||||
Ввод
|
Ввод
|
||||||
|
|
@ -22,8 +24,8 @@
|
||||||
3
|
3
|
||||||
Вывод
|
Вывод
|
||||||
|
|
||||||
1 3 5
|
1 2 3
|
||||||
2 4 6
|
6 5 4
|
||||||
'''
|
'''
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -31,12 +33,14 @@ if __name__ == "__main__":
|
||||||
n = int(input())
|
n = int(input())
|
||||||
m = int(input())
|
m = int(input())
|
||||||
|
|
||||||
max_number = n * m
|
max_width = len(str(n * m))
|
||||||
width = len(str(max_number))
|
|
||||||
|
|
||||||
for row in range(n):
|
|
||||||
for col in range(m):
|
|
||||||
number = col * n + row + 1
|
|
||||||
print(f'{number:>{width}}', end=' ')
|
|
||||||
print()
|
|
||||||
|
|
||||||
|
for i in range(n):
|
||||||
|
row = []
|
||||||
|
for j in range(m):
|
||||||
|
if i % 2 == 0:
|
||||||
|
number = i * m + j + 1
|
||||||
|
else:
|
||||||
|
number = i * m + m - j
|
||||||
|
row.append(str(number).rjust(max_width))
|
||||||
|
print(' '.join(row))
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue