uses crt;
const K=100;
var b:array [1..K] of integer;
yn,temp,flag,i,n:integer;
ch:char;
Label 1,2,3,4,5,6,s;
Begin
clrscr;
Textcolor(Blue+lightred);
Delay(2000);
Delay(2000);
Textcolor(lightGray);
s:clrscr;
i:=1;
6: writeln('Если вы хотите сортировать массив в порядке возрастания чисел, то нажмите (1).');
writeln('Если вы хотите сортировать массив в порядке убывания чисел, то нажмите (2).');
readln(yn);
case yn of
1:goto 2;
2:goto 3;
else
writeln('Вы не верно выбрали вариант. Вы можете выбрать вариант (1) или (2).');
goto 6 ;
end;
2:write('Введите колличество элементов в массиве n=');
readln(n);
for i:=1 to n do
begin
write('Введите число b[',i,']=');
read(b[i]);
end;
1 : for i:=1 to n-1 do
begin
if b[i] > b[i+1] then
begin
temp:=b[i];
b[i]:=b[i+1];
b[i+1]:= temp;
flag:= 1;
end;
end;
if flag = 1 then
begin
flag := 0;
goto 1;
end;
for i:=1 to n do
begin
write(b[i]);write(' ');
end;
readln;
writeln('');
writeln(' Вы хотите запустить программу заново Y/N? ');
read(ch);
If Upcase(ch)=('Y') then goto s
Else exit;
3 : write('Введите колличество элементов в массиве n=');
readln(n);
for i:=1 to n do
begin
write('Введите число b[',i,']=');
read(b[i]);
end;
4 : for i:=1 to n-1 do
begin
if b[i] < b[i+1] then
begin
temp:=b[i];
b[i]:=b[i+1];
b[i+1]:= temp;
flag:= 1;
end;
end;
if flag = 1 then
begin
flag := 0;
goto 4;
end;
for i:=1 to n do
begin
write(b[i]);write(' ');
end;
readln;
GotoXY(7,15);
writeln('Вы хотите запустить программу заново Y/N?');
read(ch);
If Upcase(ch)=('Y') then goto s
Else exit
END.