Определить местоположение первого и последнего изо всех отрицательных элементов массива - Pascal ABC
Формулировка задачи:
В произвольно заданном одномерном массиве определить местоположение первого и последнего изо всех отрицательных элементов, нашел на сайте уже такую тему, но там программа не работает, помогите
Решение задачи: «Определить местоположение первого и последнего изо всех отрицательных элементов массива»
textual
Листинг программы
program array34;
const
n=20;
var
a:array [1..n] of integer;
i, indexfirst,indexlast:integer;
begin
randomize;
for i:=1 to n do
begin
a[i]:=-n div 2 + random(n);
write(a[i]:4);
end;
writeln;
// первый отрицательный элемент
for i:=1 to n do
if a[i]<0 then
begin
indexfirst:=i;
break;
end;
//последний отрицательный элемент
for i:=n downto 1 do
if a[i]<0 then
begin
indexlast:=i;
break;
end;
writeln('Номер первого отрицательного элемента: ',indexfirst);
writeln('Номер последного отрицательного элемента: ',indexlast);
readln;
end.
Объяснение кода листинга программы
В данном коде используется язык программирования Pascal ABC. Переменные в этом коде:
- n - константа, которая определяет максимальное количество элементов в массиве (в данном случае 20);
- a - массив, в котором будут храниться числа;
- i - переменная, которая будет использоваться для перебора элементов массива;
- indexfirst - переменная, которая будет использоваться для хранения номера первого отрицательного элемента;
- indexlast - переменная, которая будет использоваться для хранения номера последнего отрицательного элемента. Код начинается с объявления переменных и установки начальных значений для индексов. Затем происходит генерация случайных чисел для каждого элемента массива, которые будут отрицательными. После этого выводится каждый элемент массива и его номер. Далее идет блок кода, который ищет первый отрицательный элемент. Для этого перебираются все элементы массива от первого до последнего. Если текущий элемент отрицательный, то его номер записывается в переменную indexfirst и цикл прерывается командой break. Аналогичным образом находится последний отрицательный элемент. Только в этом случае перебор идет от последнего элемента к первому. В конце выводятся номера первого и последнего отрицательных элементов. Таким образом, данный код позволяет определить местоположение первого и последнего отрицательных элементов в массиве.