program exs;
var a : array [1..1000] of integer;
n, i : integer;
procedure qsort(l, r: integer);
var i, j, key, buf : integer;
begin
i := l;
j:= r;
key:=a[(l+r) div 2];
repeat
while a[i] < key do inc(i);
while a[j] > key do dec(j);
if i<=j then begin
buf:=a[i];
a[i]:=a[j];
a[j]:=buf;
inc(i);
dec(j);
end;
until (i>j);
if (l < j) then qsort(l, j);
if (i < r) then qsort(i, r);
end;
begin
readln(n);
for i:= 1 to n do begin
read(a[i]);
end;
qsort(1, n);
for i:=1 to n do begin
write(a[i], ' ');
end;
end.
1)
Var
a:array[1..10] of integer;
i:integer;
begin
for i:=1 to 10 do
read(a[i]);
randomize;
for i:=1 to 10 do
a[i]:=random(136)+22;
for i:=1 to 10 do
if a[i]>100 then writeln(a[i]);
end.
2.
var
a,n:integer;
begin
readln(a,n);
a:=a^n;
writeln(a);
end;
6.
var
x:array[1..5] of real;
i:integer;
begin
for i:=1 to 5 do
begin
read(x[i]);
if x[i]=9 then x[i]:=x[i]*3;
if x[i]>9 then x[i]:=x[i]/10;
writeln(x[i]);
end;
end.
const nmax=100;
var x:array[1..nmax] of integer;
n,m,i,j,k,a,p:integer;
begin clrscr;
randomize;
repeat
write('Размер массива от 2 до ',nmax,' n=');
readln(n);
until n in [2..nmax];
writeln('Исходный массив:');
for i:=1 to n do
begin
x[i]:=random(10);
write(x[i]:4); end;
writeln; i:=1;
m:=n;
while i<n-1 do
begin
k:=1;
a:=x[i];
for j:=n downto i+1 do
if x[j]=a then k:=k+1;
if k>2 then
begin
j:=i;
while j<=n do
if x[j]=a then
begin
if j=n then n:=n-1
else
begin
for p:=j to n-1 do
x[p]:=x[p+1];
n:=n-1;
end;
end
else j:=j+1;
end
else i:=i+1;
end; if n=0 then
begin
exit
end;
if n=m then
write('Все элементы встречены не более 2 раз и не удалены') else
begin
for i:=1 to n do write(x[i]:4);
for i:=1 to n-1 do
for j:=i+1 to n do
if(i mod 2=0)and(j mod 2=0) and(x[i]<x[j]) then
begin
a:=x[i];
x[i]:=x[j];
x[j]:=a;
end;
for i:=1 to n do
write(x[i]:4);
end;