Даны натуральное число n, действительные числа a1,a2,...,an. В последовательности a1, a2,..., an определить число соседств двух положительных чисел.

Ответы

Ответ дал: Аноним
0
// PascalABC.NET 3.2, сборка 1457 от 29.05.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
  Writeln('Соседств: ',a.Pairwise.Where(x->((x[0]>0) and (x[1]>0))).Count)
end.

Пример
n= 15
38 -48 -9 22 -40 -18 9 30 -17 -23 4 -36 16 29 -16
Соседств: 2
Ответ дал: Аноним
0
Заполнение массива случайными числами:

Var
   A:array[1..10000] of real;
   n,i:integer;
Begin
Randomize;
Write('n = ');
ReadLn(n);
Write('A(',n,'):');
For i:= 1 to n do
    Begin
    A[i]:=random*(2*n+1)-n;
    Write(' ',A[i]:0:1)
    End;
WriteLn;
i:=0;
For n:= 1 to n-1 do
    if (A[n] > 0)and(A[n+1] > 0) then i:=i+1;
WriteLn('k = ',i);
End.



Ввод с клавиатуры, без массива:

Var
   A,A2:real;
   n,k:integer;
Begin
Write('n = ');ReadLn(n);
Read(A);
k:=0;
For n:= 2 to n do
    Begin
    A2:=A;
    Read(A);
    if (A > 0)and(A2 > 0) then k:=k+1;
    End;
WriteLn('k = ',k);
End.
Вас заинтересует