СРОЧНО Объясните задание (нам дали олимпиаду, но мы этого не проходили) 1. Какой...

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

СРОЧНО Объясните задание (нам дали олимпиаду, но мы этого не проходили) 1. Какой получится вывод после выполнения данной программы, при этом каждый элемент равен своему индексу? var A:array [1..10] of integer; i:byte; S:integer; begin for i:=1 to 10 do read (A[i]); S:=0; for i:=1 to 10 do if i mod 3 = 0 tnen S:=S+A[i]; write (`S=`, S) end. Нашла ответ, что S=18, но откуда это взято?


Информатика (12 баллов) | 19 просмотров
Дан 1 ответ
0 голосов

Ну смотри. У тебя цикл выполняется 10 раз. На каждой итерации проверяется, не равен ли остаток от деления счётчика на 3. Если равен, то на значение элемента массива с текущим номером увеличивается переменная S. Счётчик отсчитывается от 1 до 10. Соответственно, подходят значения 3, 6 и 9. Поскольку в массиве, как ты пишешь, номера индексов, то берём их: 3 + 6 + 9 = 18.

(654k баллов)
0

Спасибо огромное с: