Właśnie niedawno napisałem program na zaliczenie Program ten służy do sortowania liczb trzema sposobami : bąbelkowy,przez wybór i wstawianie
Kod:
Kod: Zaznacz cały
program nowy;
uses crt;
var
tab:array [1..6] of integer;
i:integer;
o:string;
procedure babel;
var
b,a,pom:integer;
begin
for a:=1 to 5 do
for b:=1 to 5 do
if tab[b]>tab[b+1] then
begin
pom:=tab[b];
tab[b]:=tab[b+1];
tab[b+1]:=pom;
end;
end;
procedure wstaw;
var
i,j,k,elm:integer;
begin
for i:=1 to 6 do
begin
elm:=tab[i];
k:=i-1;
while (k>=1) and (tab[k]>elm)do
begin
tab[k+1]:=tab[k];
dec(k);
end;
tab[k+1]:=elm
end;
end;
procedure zamien;
var
a,b,temp:integer;
begin
temp:=a;
a:=b;
b:=temp;
end;
procedure wyb;
var
i,j,k,temp:integer;
begin
for i:=1 to 6 do
begin
for i:=1 to 6 do
begin
k:=1;
for i:=1 to 6 do
if (tab[j]>tab[k]) then
k:=j;
zamien (tab[k],tab[j]) ;
end;
end;
end;
begin
clrscr;
writeln('Wybierz kt˘re sortowanie chcesz zastosowa†');
writeln;
writeln('BĄbelkowe wybierz 1 ');
writeln('Przez wstawianie wybierz 2 ');
writeln('Przez wyb˘r wybierz 3 ');
readln(o);
if o='babelkowe' then
begin
for i:=1 to 6 do
readln(tab[i]);
babel;
for i:=1 to 6 do
write(tab[i]);
readln;
end;
if o='wstawianie' then
begin
for i:=1 to 6 do
readln(tab[i]);
wstaw;
for i:=1 to 6 do
write(tab[i]);
readln;
end;
if o='wybor'then
begin
for i:=1 to 6 do
readln(tab[i]);
wyb;
for i:=1 to 6 do
writeln(tab[i]);
end;
end.