program wybor;
uses crt;
var
a:array[1..100] of byte;
k, n,i,z,j:byte;
l:real;
begin
clrscr;
write('podaj ilosc elementow');
readln(n);
writeln;
for i:=1 to n do
begin
write('podaj' ,i, ' element: ');
readln(a[i]);
end;
writeln;
write('ciag przed uporzadkowaniem: ');
for i:=1 to n do write(a[i], ' ');
writeln;
for i:=1 to n-1 do
begin
k:=i;
for j:=i+1 to n do
begin
if a[j]<a[k] then {begin}
k:=j;
z:=a[i];
a[i]:=a[k];
a[k]:=z; {end else begin k:=2;
z:=a[i];
a[i]:=a[k];
a[k]:=z; end;}
end;
end;
writeln;
write(' ciag uporzadkowany przez wybor: ');
for k:=1 to n do
write(a[k], ' ');
writeln;
writeln;
write(' liczba porownan ');
l:=n*(n-1)/2;
writeln(l:3:0);
readln;
end.
0
0
Twoim głównym problemem jest brak formatowania kodu, dlatego nic w nim nie widzisz; Popraw to i wstaw w odpowiednie znaczniki <code class="delphi">Tutaj Twój kod</code>
;
Po drugie jeśli chcesz znaleźć błąd to zapoznaj się z innym algorytmem znalezionym w sieci i zobacz na czym to polega i jak to ma wyglądać;
Tutaj masz artykuł z wikipedii;
1
Dokładny opis sortowania tutaj
0
program xxx;
uses crt;
const nMax=100;
var tab: array[1..nMax] of Integer;
i, j, x, pmin, n: integer;
begin
clrscr;
write('Podaj ilosc liczb 0 < n < 100: ');
readln(n);
randomize;
for i := 1 to n do
tab[i] := random(100)+1;
writeln('Ciag nieposortowany: ');
for i := 1 to n do
write(' ', tab[i]);
{sortowanie}
for j := 1 to n - 1 do
begin
pmin := j;
for i := j + 1 to n do
if tab[i] < tab[pmin] then pmin := i;
x := tab[pmin];
tab[pmin] := tab[j];
tab[j] := x;
end;
writeln;
writeln('Ciag posortowany: ');
for i := 1 to n do
write(' ', tab[i]);
readkey;
end.