Дан вектор B[1:20]. А)Найти сумму S элементов в диапозоне [0:5]. Б)Найти произведение Р отрицательных элементов. В)Поменять местами минимальный и максимальный элементы вектора. Г)Удалить минимальный элемент. Помогите пожалуйста решить.
Answers & Comments
Sky09
Uses crt; var b:array [1..20] of real; x,min,max:integer; sum,pr,t:real; begin sum:=0; pr:=1; for x:=1 to 20 do begin write('b[',x,']:'); readln(b[x]); if b[x]<0 then pr:=pr*b[x]; end; for x:=1 to 5 do sum:=sum+b[x]; min:=1; max:=1; for x:=1 to 20 do begin if b[x]<b[min] then min:=x; if b[x]>b[max] then max:=x; end; t:=b[min]; b[min]:=b[max]; b[max]:=t; for x:=max to 19 do b[x]:=b[x+1]; for x:=1 to 19 do write(b[x]:3:0); writeln; writeln('SUM:',sum); writeln('PROIZVEDENIE:',pr); end.
Answers & Comments
var b:array [1..20] of real;
x,min,max:integer;
sum,pr,t:real;
begin
sum:=0; pr:=1;
for x:=1 to 20 do
begin
write('b[',x,']:'); readln(b[x]);
if b[x]<0 then pr:=pr*b[x];
end;
for x:=1 to 5 do
sum:=sum+b[x];
min:=1; max:=1;
for x:=1 to 20 do
begin
if b[x]<b[min] then min:=x;
if b[x]>b[max] then max:=x;
end;
t:=b[min];
b[min]:=b[max];
b[max]:=t;
for x:=max to 19 do
b[x]:=b[x+1];
for x:=1 to 19 do
write(b[x]:3:0);
writeln;
writeln('SUM:',sum); writeln('PROIZVEDENIE:',pr);
end.