Дан линейный массив a[1..n], содержащий целые числа. найти длину наименьшего отрезка числовой прямой, содержащего все положительные элементы массива. pascal

PolinaFox6002 PolinaFox6002    2   25.08.2019 03:10    8

Ответы
byxanceva6kv2 byxanceva6kv2  05.10.2020 17:55
// PascalABC.NET 3.2, сборка 1389 от 01.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var s:=ArrRandom(ReadInteger('n='),-20,99).Println.Where(x->x>0).OrderBy(x->x);
  Writeln('Длина отрезка равна ',s.Last-s.First)
end.
ПОКАЗАТЬ ОТВЕТЫ
Маша923892 Маша923892  05.10.2020 17:55
Const
K = 13;
Var
A:array[1..K] of integer;
i,Mn,Mx:integer;
Begin
Write('Исходный массив: ');
For i:= 1 to K do
    Begin
    A[i]:=random(21)-10;
    Write(A[i],' ')
    End;
WriteLn;

Mn:=A[K];
Mx:=A[K];
For i:= 1 to K-1 do
    Begin
    if (A[i]<Mn)and(A[i]>0) then Mn:=A[i];
    if (A[i]>Mx)and(A[i]>0) then Mx:=A[i];
    End;
WriteLn('Искомая длина: ',Mx-Mn);
End.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика