Дан целочисленный линейный массив. Удалить из него последний четный элемент.

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

Дан целочисленный линейный массив. Удалить из него последний четный элемент.


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

Что значит "удалить"? Допустим, что в массиве 10 элементов, последний четный имеет индекс 7. "Удаляем" 7-й элемент, т.е. помещаем в 7-й элемент значение 8-го, в 8-й - значение 9-го, в 9й- значение 10-го. Как быть с 10-м элементом? Просто теперь считаем. что в массиве осталось 9 элементов?

0

да

Дан 1 ответ
0 голосов
Правильный ответ

Uses Crt;
const
  n=15;
var
  a:array[1..n] of integer;
  i,j,k,t:integer;
  found:boolean;
begin
  ClrScr;
  Randomize;
  Writeln('Исходный массив:');
  for i:=1 to n do begin
    a[i]:=Random(90)+1;
    Write(a[i],' ')
  end;
  Writeln;
  i:=n; found:=False;
  repeat
    found:=(a[i] mod 2=0);
    if (not found) then Dec(i)
  until found or (i=0);
  if found then begin
    for i:=i to n-1 do a[i]:=a[i+1];
    Writeln('Результирующий массив:');
    for i:=1 to n-1 do Write(a[i],' ')
  end;
  ReadKey
end.
Тестовое решение:
Исходный массив:
60 90 39 83 24 70 82 53 45 5 12 9 85 57 47
Результирующий массив:
60 90 39 83 24 70 82 53 45 5 9 85 57 47

(142k баллов)