Mas = for i in range(1,5): mas[i] +=mas[i-1]*3 в ответе укажите через пробел, чему изначально были равны элементы массива mas, если в результате работы программы они оказались равны 3 14 47 142 428 (в порядке возрастания индексов). напишите подробно: как решать?
mas[1] = mas[1] + mas[0]*3 = mas[1] = 3
mas[2] = mas[2] + mas[1]*3 = mas[2] + 9 = 14 -> mas[2] = 14-9 = 5
и тд
#Ruby22
mas = [0, 3, 5, 5, 1, 2]
for i in 1..5
mas[i] += mas[i - 1] * 3
end
p mas
2. Чтобы получить M[1] надо рассмотреть такой вариант:
14 = MAS[0]*3+X, где Х есть предыдущее значение элемента M[1], получим, что Х = 5 и изначально M[1] = 5
3. Зная второй элемент массива несложно получить и третий:
47 = MAS[1] * 3 + X = 14*3 +X, где Х есть предыдущее значение элемента M[2], получим, что Х = 5 и изначально M[2] = 5
4. Аналогично находим, что первоначальное значение М[3] = 1, а M[4] = 2
5. Значит массив изначально был такой:
3 5 5 1 2
Напишем код на Python для проверки:
MAS = [3,5,5,1,2]
print(MAS[0],sep=' ', end=' ')
for i in range(1,5):
MAS[i] +=MAS[i-1]*3
print(MAS[i],sep=' ', end=' ')
Результат:
3 14 47 142 428
ответ: 3 5 5 1 2