Какие числа будут выведены в результате выполнения фрагмента программы, если программа обрабатывает одномерный

  • 64
Какие числа будут выведены в результате выполнения фрагмента программы, если программа обрабатывает одномерный целочисленный массив dat с элементами i1 2 3 4 5 6 7 8 9 10 и значениями dat[i] 70 80 90 100 80 40 40 70 80 90? Заполните трассировочную таблицу и определите результат для переменных m и k. Код фрагмента программы: k := 1; m := dat[k]; for i := 2 to 10 do begin k := m; m := dat[i]; end; writeln("m=",m); writeln("k=",k);
Подсолнух
57
Чтобы решить эту задачу, нам потребуется заполнить трассировочную таблицу для фрагмента программы и последовательно выполнять каждую строку кода.

Трассировочная таблица:

| i | k | m | dat[i] | Вывод |
|:---:|:---:|:---:|:------:|:--------------:|
| 1 | - | - | - | |
| 2 | 1 | 70 | 80 | |
| 3 | 70 | 80 | 90 | |
| 4 | 80 | 90 | 100 | |
| 5 | 90 | 100 | 80 | |
| 6 | 100 | 80 | 40 | |
| 7 | 80 | 40 | 40 | |
| 8 | 40 | 40 | 70 | |
| 9 | 40 | 70 | 80 | |
| 10 | 70 | 80 | 90 | m=90 |
| | | | | k=70 |

Итак, после выполнения данного фрагмента программы, значения переменных m и k будут равны 90 и 70 соответственно.

Таким образом, в результате работы программы будут выведены следующие значения:

m=90
k=70