Ввести два натуральных числа через запятую: N и M. Вывести таблицу умножения от 1 до N включительно в формате, представленном ниже. Количество столбцов в выводе должно быть наибольшим, но общая ширина строки не должна превышать M (предполагается, что M достаточно велико, чтобы вместить один столбец). Ширина колонок под сомножители и произведения должна соответствовать максимальной ширине соответствующего значения (даже если в данной колонке данного столбца эта ширина не достигается, см. пример). Таким образом все столбцы должны быть одинаковой ширины, без учёта пробелов в конце строк, которых быть не должно. Разделители вида "===…===" должны быть ширины M.
11, 62
Обратите внимание на то, к какому краю «подтянуты» числа и сколько места отводится на одно число, а также, что стоит между столбцами (строка " | "). Да, это задача на .format(), на что же ещё ☺?
============================================================== 1 * 1 = 1 | 2 * 1 = 2 | 3 * 1 = 3 | 4 * 1 = 4 1 * 2 = 2 | 2 * 2 = 4 | 3 * 2 = 6 | 4 * 2 = 8 1 * 3 = 3 | 2 * 3 = 6 | 3 * 3 = 9 | 4 * 3 = 12 1 * 4 = 4 | 2 * 4 = 8 | 3 * 4 = 12 | 4 * 4 = 16 1 * 5 = 5 | 2 * 5 = 10 | 3 * 5 = 15 | 4 * 5 = 20 1 * 6 = 6 | 2 * 6 = 12 | 3 * 6 = 18 | 4 * 6 = 24 1 * 7 = 7 | 2 * 7 = 14 | 3 * 7 = 21 | 4 * 7 = 28 1 * 8 = 8 | 2 * 8 = 16 | 3 * 8 = 24 | 4 * 8 = 32 1 * 9 = 9 | 2 * 9 = 18 | 3 * 9 = 27 | 4 * 9 = 36 1 * 10 = 10 | 2 * 10 = 20 | 3 * 10 = 30 | 4 * 10 = 40 1 * 11 = 11 | 2 * 11 = 22 | 3 * 11 = 33 | 4 * 11 = 44 ============================================================== 5 * 1 = 5 | 6 * 1 = 6 | 7 * 1 = 7 | 8 * 1 = 8 5 * 2 = 10 | 6 * 2 = 12 | 7 * 2 = 14 | 8 * 2 = 16 5 * 3 = 15 | 6 * 3 = 18 | 7 * 3 = 21 | 8 * 3 = 24 5 * 4 = 20 | 6 * 4 = 24 | 7 * 4 = 28 | 8 * 4 = 32 5 * 5 = 25 | 6 * 5 = 30 | 7 * 5 = 35 | 8 * 5 = 40 5 * 6 = 30 | 6 * 6 = 36 | 7 * 6 = 42 | 8 * 6 = 48 5 * 7 = 35 | 6 * 7 = 42 | 7 * 7 = 49 | 8 * 7 = 56 5 * 8 = 40 | 6 * 8 = 48 | 7 * 8 = 56 | 8 * 8 = 64 5 * 9 = 45 | 6 * 9 = 54 | 7 * 9 = 63 | 8 * 9 = 72 5 * 10 = 50 | 6 * 10 = 60 | 7 * 10 = 70 | 8 * 10 = 80 5 * 11 = 55 | 6 * 11 = 66 | 7 * 11 = 77 | 8 * 11 = 88 ============================================================== 9 * 1 = 9 | 10 * 1 = 10 | 11 * 1 = 11 9 * 2 = 18 | 10 * 2 = 20 | 11 * 2 = 22 9 * 3 = 27 | 10 * 3 = 30 | 11 * 3 = 33 9 * 4 = 36 | 10 * 4 = 40 | 11 * 4 = 44 9 * 5 = 45 | 10 * 5 = 50 | 11 * 5 = 55 9 * 6 = 54 | 10 * 6 = 60 | 11 * 6 = 66 9 * 7 = 63 | 10 * 7 = 70 | 11 * 7 = 77 9 * 8 = 72 | 10 * 8 = 80 | 11 * 8 = 88 9 * 9 = 81 | 10 * 9 = 90 | 11 * 9 = 99 9 * 10 = 90 | 10 * 10 = 100 | 11 * 10 = 110 9 * 11 = 99 | 10 * 11 = 110 | 11 * 11 = 121 ==============================================================