Код не мой, не знаю, на счет правильности, Var S: real; x: Array [1..5] of Real; y: Array [1..5] of Real; z: Array [1..5] of Real; i,n,m: Integer;
{процедура вычисления площади треугольника} procedure plosh(x_1,y_1,z_1,x_2,y_2,z_2,x_3,y_3,z_3:real); var a,b,c,p,t:real; begin a:=sqrt(sqr(y_2-y_3)+sqr(x_2-x_3)+sqr(z_2-z_3)); b:=sqrt(sqr(y_1-y_3)+sqr(x_1-x_3)+sqr(z_1-z_3)); c:=sqrt(sqr(y_1-y_2)+sqr(x_1-x_2)+sqr(z_1-z_2)); p:=(a+b+c)/2; t:=p*sqrt((p-a)*(p-b)*(p-c)); end;
{заносим в массив координаты вершин} for i:=1 to 5 do begin if i:=1 or 5 then begin write('X',i,' -> '); readln(x[i]); write('Y',i,' -> '); readln(y[i]); write('Z',i,' -> '); readln(z[i]); end; else begin write('X',i,' -> '); readln(x[i]); write('Y',i,' -> '); readln(y[i]); z[i]:=z[1] writeln; end; end; end; {начинаем перебор всех вариантов сочетания вершин, создающих треугольник} for i:=1 to 5 do for n:=1 to 5 do for m:=1 to 5 do begin if ((i<>n) and ((n<>m) and (i<>m))) then begin plosh(x[i],y[i],z[i],x[n],y[n],z[n],x[m],y[m],z[m]); end; <span> end;</span>
Var a:array[1..1000] of integer; n,i,im,max:integer; begin readln(n); for i:=1 to n do read(a[i]); writeln; max:=a[1];im:=1; for i:=1 to n do if a[i]>max then begin max:=a[i]; im:=i; end; a[1]:=a[1]+a[im]; a[im]:=a[1]-a[im]; a[1]:=a[1]-a[im]; for i:=1 to n do write(a[i],' '); end.