Div - это обычное деление нацело, т.е. остаток отбрасывается. А mod - это как раз получение того остатка, который отбрасывается при делении div. Пусть х=336, у=8 x div y - это результат деления 336 на 8. Делим: 336 / 8 = 42 (разделилось нацело, но если бы и не нацело, все равно отбросили остаток). Конструкция x:=x div y - это оператор присваивания. Он говорит о том, что надо вычислить все, что находится справа (т.е. после) знака присваивания := и полученное значение в дальнейшем называть так, как написано до (слева) от этого знака. Следовательно, теперь Х уже будет равно не 336, а 42. y:=x mod y - снова оператор присваивания. x mod y - это остаток от деления х на у. 42 / 8 = 5 и остаток 2. Вот эта двойка и есть результат. Теперь у будет равно 2.
var a: array[1..999] of integer; n, sp, so, kp, ko: integer; begin read(n); for var i := 1 to n do begin a[i] := random(-9, 9); write(a[i], ' '); if a[i] > 0 then begin sp += a[i]; kp += 1; end; if a[i] < 0 then begin so += a[i]; ko += 1; end; end; writeln; writeln('Среднее арифметическое положительных чисел = ', sp/kp); writeln('Среднее арифметическое отрицательных чисел = ', so/ko); end.
ответ:перевіряється умова завершення циклу