MAS = [?,?,?,?,?] for i in range(1,5): MAS[i] +=MAS[i-1]*3 В ответе укажите через...

0 голосов
167 просмотров

MAS = [?,?,?,?,?]
for i in range(1,5):
MAS[i] +=MAS[i-1]*3
В ответе укажите через пробел, чему изначально были равны элементы массива MAS,
если в результате работы программы они оказались равны 3 14 47 142 428 (в порядке возрастания индексов).


Напишите подробно: Как решать?


Информатика (35 баллов)
оставил комментарий Доцент (53.1k баллов)

чему равно mas[0] ?

Дано ответов: 2
0 голосов
Доцент (53.1k баллов)
 
Правильный ответ

Способ довольно простой, только надо задать mas[0], пусть оно будет 0
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


оставил комментарий (35 баллов)

ПАРДОН,Я ТУПАНУЛ

оставил комментарий (35 баллов)

А mas[3] вычислить как?

оставил комментарий Доцент (53.1k баллов)

аналогично

оставил комментарий Доцент (53.1k баллов)

mas[3] = mas[3] + mas[2]*3

оставил комментарий (35 баллов)

mas[3] = mas[3] + mas[2]*3 = mas[3] + 15 = 47 ->mas[3] = 47-15 = 32. Что неправильно я сделала?

оставил комментарий (35 баллов)

Или,опять тупанула?

оставил комментарий (35 баллов)

Пожалуйста,подскажите :)

оставил комментарий Доцент (53.1k баллов)

mas[3] = mas[3] + mas[2]*3 = mas[3] + 3*14 = 47 ->mas[3] = 47-42 =5

оставил комментарий Доцент (53.1k баллов)

ведь на этот момент второй элемент уже поменялся, надо брать измененный

оставил комментарий (35 баллов)

Ой,спасибки

0 голосов
Бакалавр (13.9k баллов)

1. Первый элемент массива не менялся, значит M[0] = 3
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



...