В заданном одномерном массиве определить номер последнего отрицательного элемента.паскаль

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

В заданном одномерном массиве определить номер последнего отрицательного элемента.паскаль


Информатика (15 баллов) | 54 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Const
  n = 20;

var
  x: array[1..n] of integer;
  i: integer;

begin
  Randomize;
  Writeln('Элементы массива');
  i := n;
  for i := 1 to n do
  begin
    x[i] := Random(101) - 50;
    Write(x[i]:4);
  end;
  Writeln;
  while (i >= 1) and (x[i] >= 0) do i := i - 1;
  if i > 0 then
    Writeln('Последний отрицательный элемент x[', i, ']=', x[i])
  else
    Writeln('Нет отрицательных элементов')
end.

Тестовое решение:
Элементы массива
   5  -9 -32 -48  33   2 -41  24  31 -31 -48 -24 -17  45 -41 -23  -1  38  45  14
Последний отрицательный элемент x[17]=-1


(142k баллов)
0

спасибо)

0 голосов

Var a:array[1..10000] of longint;
i,n,last:longint;
begin
{Считываем массив}
read(n);
for i:=1 to n do read(a[i]);

last := 0;
for i := 1 to n do
  if a[i] < 0 then last := i;

if last = 0 then
  write('Отрицательных нету')
else
  write('Последний отрицательный - ', i);
end.

(126 баллов)
0

спасибо)

0

Да... 10 тысяч элементов ввести руками - это не хухры-мухры! )))

0

Дак сначала вводится число N -- можно тогда не 10000, а сколько тебе надо.
т.е. вводишь 3 потом 1 2 3

0

Да не про это речь - зачем ОБЪЯВЛЯТЬ 10 тыс элементов?

0

Если код проверяется автоматизированной системой, там часто бывают большие ограничения и длинные тесты