Давайте подробно разберёмся с этой задачей.
Исходный код:
for i := 10 downto 6 do
write(i - 2);
Объяснение по шагам:
Цикл
forс параметромdownto:- Значение
iначинается с 10 и убывает до 6 включительно. - То есть значения
iидут по убыванию: 10, 9, 8, 7, 6.
- Значение
Что делает команда
write(i - 2)?:- В каждой итерации выводится результат выражения
i - 2.
- В каждой итерации выводится результат выражения
Шаги цикла:
Когда
i = 10:i - 2 = 10 - 2 = 8- Выводится
8
Когда
i = 9:i - 2 = 9 - 2 = 7- Выводится
7
Когда
i = 8:i - 2 = 8 - 2 = 6- Выводится
6
Когда
i = 7:i - 2 = 7 - 2 = 5- Выводится
5
Когда
i = 6:i - 2 = 6 - 2 = 4- Выводится
4
Итог:
На экран последовательно появятся числа, соответствующие результатам в каждом шаге цикла: 8 7 6 5 4
Так как write используется без перехода на новую строку (в Паскале по умолчанию write не переводит строку), числа будут выведены подряд, без пробелов или переноса.
Если бы нужно было разделить эти числа пробелами или перенесением строки, использовали бы writeln или добавляли дополнительные символы.
Ответ:
На экране будет отображено:87654
Если нужны дополнительные объяснения — обращайтесь!