В массиве В(N) найти максимальный элемент. Если максимальный элемент находится в первой половине массива, то сформировать массив К, переписав в него все отрицательные элементы массива В, и массив Р, переписав в него все положительные элементы массива В. Массивы К и Р отпечатать.
Тестовый пример
Ввод:
Размерность массива N=15.
Массив Т: {13; -15; -11; 100; 8; 4; 0; 6; –5; 0; 3; -8; 4; -3; 1}
Вывод:
Номер максимального элемента массива В: 4.
Массив К: {-15; -11; -5; -8; –3} Массив К: {13; 100; 8; 4; 6; 3; 4; 1}
Блок-схема с пошаговой детализацией
Программа на языке высокого уровня ТР7.0
PROGRAM ZADACHA2;
CONST
N1=50;
TYPE
MAS1=ARRAY[1..N1] OF REAL;
VAR
B,K,P:MAS1;
MAX:REAL;
IMAX,K1,K2,I,N:INTEGER;
BEGIN
{ШАГ 1-2}
WRITE('ВВЕДИТЕ РАЗМЕР N=');
READ(N);
FOR I:=1 TO N DO
BEGIN
WRITE('B[',I,']= ');
READ(B[I]);
END;
{-----------------------------------------------------------------------}
{ШАГ 2-3}
MAX:=B[1];
IMAX:=1;
FOR I:=2 TO N DO
IF B[I]>MAX THEN
BEGIN
MAX:=B[I];
IMAX:=I;
END;
{-----------------------------------------------------------------------}
IF IMAX<(N div 2)+1 THEN
BEGIN
{ШАГ 3-4}
K1:=0;
K2:=0;
FOR I:=1 TO N DO
IF B[I]<0 THEN
BEGIN
K1:=K1+1;
K[K1]:=B[I];
END
ELSE
IF B[I]>0 THEN
BEGIN
K2:=K2+1;
P[K2]:=B[I];
END;
{-----------------------------------------------------------------------}
{ШАГ 4-5}
FOR I:=1 TO K1 DO
WRITELN('K[',I,']=',K[I]:6:2);
{-----------------------------------------------------------------------}
{ШАГ 5-6}
FOR I:=1 TO K2 DO
WRITELN('P[',I,']=',P[I]:6:2);
{-----------------------------------------------------------------------}
END;
END.