Исправьте ошибки. Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами (Паскаль)
var
 i,n,i1,i2:longint;
  a:array[1..100] of real;
  amin,amax,p:real;
begin
  assign (input,'input.txt');
  assign (output,'output.txt');
  reset (input);
  rewrite (output);
    readln(n);
       p:=1;
       for i:=1 to n do read (a[i]);
       amin:=a[1];
          for i:=1 to n do
            if abs(amin)>=abs(a[i]) then
                 begin
                    amin:=a[i];
                     i1:=i;
                 end;
             amax:=a[1];
                   for i:=1 to n do
                      if abs(amax)<=abs(a[i]) then
                      begin
                          amax:=a[i];
                          i2:=i;
                      end;
                          if (i2>i1) and (i1+1<>i2) then
                          for i:=i1+1 to i2-1 do
                             p:=p*a[i] else
                               if (i1>i2) and (i1-1<>i2) then
                               for i:=i1-1 downto i2+1 do
                                    p:=p*a[i] else
                                        begin
                                             write('0');  
                                        end;
                 write (abs(p):0:3);
                 close (input);
                 close (output);
end.
 в ответе в выходном файле необходимо вывести 0.000, если между максимальным и минимальным по модулю элементом нет других элементов.

Please enter comments
Please enter your name.
Please enter the correct email address.
You must agree before submitting.

Answers & Comments


Copyright © 2024 SCHOLAR.TIPS - All rights reserved.