Помогите, плез. В 14 строке пишет: "Ошибка времени выполнения: индекс находился вне...

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

Помогите, плез. В 14 строке пишет: "Ошибка времени выполнения: индекс находился вне границ массива". Что делать? Как решать задачи с парами элементов?


image
image

Информатика (281 баллов) | 36 просмотров
0

При i = n, т.е. i = 5 j:=i+1; j=6 a[j] = a[6] - ошибка выход за границы массива.

0
Дан 1 ответ
0 голосов

//Решение почти правильное.

//Ошибка только в цикле for i := 1 to n do

//Цикл должен проверять до n - 1, т.к. в массиве из n

//элементов пар соседних элементов не может быть

//больше n - 1, например массив из 3 чисел

//1 2 3; пары : 1 2 и 2 3.

const

 N = 20;

var

 a: array[1..N]of integer;

 i, j, k: integer;

begin

 k := 0;

 for i := 1 to N do

   readln(a[i]);

 for i := 1 to N - 1 do

 begin

   if (a[i] mod 2 = 0) and (a[i + 1] mod 2 = 0) then k := k + 1;

 end;

 writeln(k);

end.

(3.7k баллов)
0

я понял, спасибо)