Исправьте ошибки. найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами (паскаль) 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, если между максимальным и минимальным по модулю элементом нет других элементов.
107
430
Ответы на вопрос:
Var i, n: longint; a: array[1..10] of real; amin, amax, p: real; begin assign(output, 'output.txt'); rewrite(output); readln(n); if n = 2 then begin writeln('0 '); close(output); end else begin p : = 1; for i : = 1 to n do read(a[i]); amin : = a[1]; for i : = 1 to n do if amin > = abs(a[i]) then amin : = a[i]; amax : = a[1]; for i : = 1 to n do begin if amax < = a[i] then amax : = a[i]; end; if n > 2 then for i : = 2 to n - 1 do p : = p * a[i]; write(p: 0: 3); close(output); end; end.
Популярно: Информатика
-
class4v201618.05.2023 10:11
-
LUCOVERUS12.04.2020 00:23
-
Камишок716.08.2022 17:21
-
alinapal03.12.2021 16:19
-
azamaaaaa26.02.2021 08:50
-
skachkov156228.09.2020 03:47
-
TyTToŪLLlkoJlbHuK28.09.2021 13:42
-
IrinaKorolevskih12.05.2023 13:16
-
baron203201218.11.2020 11:02
-
MrQelen18.12.2022 16:14