Дан массив T(n), n<=20, вещественного типа . Разработайте программу ,которая вычисляет произведение максимальных по абсолютной величине элемента заданного массива на его же первый отрицательный элемент ,если таковой имеется. Выведите исходный массив и произведение ,или сообщение о невозможности вычисления произведения - Pascal(Паскаль)

uses crt;
const nmax=20;
var a:array[1..nmax] of real;
    n,i,k:byte;
    mx,a1,p:real;
begin
clrscr;
repeat
write('Размер массива от 2 до ',nmax,' n=');
readln(n);
until n in [2..nmax];
writeln('Введите ',n,' элементов масива, вещественные числа:');
for i:=1 to n do
 begin
  write('a[',i,']=');
  readln(a[i]);
 end;
clrscr;
mx:=a[1];
writeln('Исходный массив:');
for i:=1 to n do
 begin
  write(a[i]:0:2,' ');
  if abs(a[i])>abs(mx) then mx:=a[i];
 end;
writeln;
writeln('Максимальный по модулю элемент=',mx:0:2);
k:=0;
for i:=1 to n do
if a[i]<0 then
 begin
  k:=i;
  break;
 end;
if k=0 then writeln('В массиве нет отрицательных элеметов. Вычисление произведения невозможно.')
else
 begin
  writeln('Первый отрицательный элемент=',a[k]:0:2);
  p:=mx*a[k];
  write('Произведение=',p:0:2);
 end;
readln
end.

Leave a Comment

56 − = 48