Найти количество соседних элементов, сумма и произведение которых чётны, но не кратны 4

Пользователь вводит последовательность из 10 целых чисел. Сохранить их в массив. Найти количество соседних элементов, сумма и произведение которых чётны, но не кратны 4. Вывести эти пары и их количество. Нужно чтобы на экран выводились подходящие пары их их количество. Пары выводятся только почему количество элементов 9, 10 де даёт поставить, а количество 0.

  var
  i,k: integer;
  a := new integer[10];

begin
  for i := 0 to 9 - 1
    do
  begin
    a[i] := ReadlnInteger($'a[{i+1}] =');
    end;
      for i := 0 to 9 - 1
    do
      begin
        
 
    if  ((a[i] * a[i + 1]) mod 4 = 2) and ((a[i] + a[i + 1]) mod 4 = 2)  
    and ((a[i] * a[i + 1]) mod 4 <> 0) and ((a[i] + a[i + 1]) mod 4 <> 0)
      then
      inc(k);
       writeln(a[i], ' ', a[i + 1]);
         
  end; 
   writeln('Количество', k );
end.

Ответы (1 шт):

Автор решения: MBo

Цикл ввода (десять вводов) отделите от цикла проверки (девять проверок)

for i := 0 to 9 do
   a[i] := ReadlnInteger($'a[{i+1}] =');

При проверке достаточно такого условия:

 ((a[i] * a[i + 1]) mod 4 = 2) and ((a[i] + a[i + 1]) mod 4 = 2)
→ Ссылка