Дан одномерный массив А, состоящий из N целых чисел. Составить программу, которая подсчитывает, наибольшее число отрицательных идущих подряд в нём чисел — Pascal(Паскаль)

uses crt;
const n=30;
var m:array[1..n]of integer;
k,i,s,kmax,smax:integer;
 
begin
 clrscr;
 randomize;
 for i:=1 to n do
 begin
  m[i]:=-30+random(60);
  write(m[i],' ');
 end;
 kmax:=0; 
 smax:=1;
 
 i:=1;
 while i<=n do
 begin
  if m[i]<0 then
  begin
    s:=i;
    k:=1;
    while m[s+k-1]<0 do inc(k);
    if k>kmax then
    begin
     kmax:=k;
     smax:=s;
    end; 
  end;
  inc(i);
 end;
 writeln;
 for i:=smax to smax+kmax-2 do write(m[i],' ');
 readln;
end.

Leave a Comment

18 − = 11