Вывести таблицу умножения
В задание указано, сделать таблицу в 2 ряда, с 1 до 5 и 6 до 10. Код работает, но преподаватель дал задание, чтобы я оптимизировал без 2ой части кода. Благодарю Вас.
for i in range(1, 11):
for j in range(1, 6):
print(f'{j} * {i:>2} = {i * j:>2}', end=' '*3)
print()
print()
for i in range(1, 11):
for j in range(6, 11):
print(f'{j} * {i:>2} = {i * j:>2}', end=' '*3)
print()
Ответы (2 шт):
Автор решения: MBo
→ Ссылка
Что-нибудь такое требуется?
for i in range(1, 22):
if i==11:
print()
else:
k = 5 * (i // 12)
l = i % 11
for j in range(1, 6):
print(f'{j + k} * {l:>2} = {l * (j + k):>2}', end=' '*3)
print()
Автор решения: GrAnd
→ Ссылка
Можно просто организовать ещё один цикл сверху, чтобы не повторять код.
step = 5
for row in range(1, 11, step):
for i in range(1, 11):
for j in range(row, row + step):
print(f'{j} * {i:>2} = {i * j:>2}', end=' '*3)
print()
print()