Короче. Вот код.
def matrix_gen(gen, n, m): Matrix = []; for i in range(n): a = []; for j in range(m): a.append(gen[j]); Matrix.append(a); return Matrix;Объяснение
Сначало ты инициализируешь функицю с названием "matrix_gen", которая принимает 3 параметра, 'gen' -- это генератор которые ты будешь использовать. 'n' & 'm' это размер матрицы.
Второй строчкой ты инициалихируешь пустой массив, которые похже заполнишь. Третей строчкой ты в for цикле обходишь все строки матрицы, они же подмассивы массива Matrix, просто 'a'. Делаем мы это 'n' раз.
Четвётрой строчкой ты инициализируешь массив(ы, мы в цикле) 'a', и следующей строчкой заполняешь уже его. Так же в for цикле. Всего в нём будет 'm' элементов.
Надеюсь решение правильное. Честно говоря у тебя вопрос очень странно поставлен.
Вот несколько разных формул, которые для каждого указанного в вашей таблице диапазона значений среднего чека выдают указанное в вашей таблице число (форма оплаты), а для чисел вне диапазонов таблицы- дают на выходе -1 (ниже диапазона) и +1 (выше диапазона), либо просто 0 (выше или ниже диапазона).
1) куча обычных ЕСЛИ (громоздко и запутанно):
=ЕСЛИ(E2<3200;-1;ЕСЛИ(E2<3300;70;ЕСЛИ(E2<3400;80;ЕСЛИ(E2<3500;90;ЕСЛИ(E2<3600;100;1)))))
2) новая функция ЕСЛИМН (довольно удобно, но визуально не очень):
=ЕСЛИМН(E2<3200;-1;E2<3300;70;E2<3400;80;E2<3500;90;E2<3600;100;1=1;1)
3) логические значения и вычисления с ними (как с числами 1 и 0):
=-(E2<3200)*70-(E2<3300)*10-(E2<3400)*10-(E2<3500)*10+(E2<3600)*100
4) сумма логических значений (как чисел 1 и 0) и функция ВЫБОР (длинновато, но визуально хорошо всё видно):
=ВЫБОР(1+(E2>=3200)+(E2>=3300)+(E2>=3400)+(E2>=3500)+(E2>=3600);-1;70;80;90;100;1)
5) функция ПРОСМОТР- задание диапазонов в отдельной маленькой табличке (очень удобно и универсально):
=ПРОСМОТР(E2;A$19:A$24;B$19:B$24)
А вот формулы только для диапазона с 3300 (включительно) до 3400 (не включая само число 3400). Для чисел, не входящих в этот диапазон, формулы дают на выходе ноль.
1) две функции ЕСЛИ:
=ЕСЛИ(E2>=3300;ЕСЛИ(E2<3400;80;0))
2) функция ЕСЛИ с функцией И:
=ЕСЛИ(И(E2>=3300;E2<3400);80;0)
Также, внизу приложил таблицу, в которой все эти формулы есть (для примера там по несколько чисел из каждого диапазона в таблице), а также скрин этой таблицы:
+3*13 - 9*9 - (30-3-9)*1 = 39-81-18 = -60
Таким образом, через 30 секунд на таймере будет 153-60 = 93 с, через 60 секунд - 93-60 = 33
Следующие действия таковы:
61 сек: 33-1=32
62 сек: 32-1=31
63 сек: 31-9=22
64 сек: 22-1=21
65 сек: 21-1=20
66 сек: 20-9=11
67 сек: 11-1=10
68 сек: 10-9=1
69 сек: 1-1=0
ответ: 69