Dalam menggunakan program Free Pascal, begitu banyak algoritma program yang dapat kita buat untuk membantu kita dalam melakukan prosedure terurut. berikut adalah salah satu contoh sintax program sorting yang penulis rancang menggunakan Free Pascal.
Program sorting;
uses wincrt,crt;
var biggie :integer ;
procedure selection;
var
x:array[1..10]of integer;
i,j,n,a,imaks,temp:integer;
begin
clrscr;
writeln(‘Berapa banyak bilangan yang anda inginkan ? ‘);readln(n);
writeln(‘Masukkan ‘,n:1,’ bilangan:’);
begin
for i:=1 to n do
readln(x[i]);
for i:=n downto 2 do
begin
imaks:=1;
for j:=2 to i do
if x[j]<x[imaks] then
imaks:=j;
for a:=1 to n do
write(x[a],’ ‘);writeln;
temp:=x[imaks];
x[imaks]:=x[i];
x[i]:=temp;
end;
for a:=1 to n do
write(x[a],’ ‘);
end;
end;
procedure bubble;
type tnum = array [1..10] of integer ;
procedure bubblesort (var numbers : tnum ; batas : integer );
var t,q ,tukar: integer ;
begin
for t := 1 to batas-1 do
begin
for q := t +1 to batas do
Begin
if numbers [t] > numbers [q] then
begin
tukar := numbers [t] ;
numbers [t] := numbers [q] ;
numbers [q] :=tukar ;
end ;
end ;
end ;
end;
procedure tampilkan(numbers : tnum ; batas, x, y : integer );
var
n : integer ;
begin
for n:=1 to batas do
begin
gotoxy (x,y+n) ;
write ( numbers [n] : 3 ) ;
end ;
end ;
var num : tnum ;
n,b,i : integer ;
begin
clrscr ;
writeln(‘Berapa angka yang Anda inginkan ? ‘); readln(b);
writeln(‘Masukkan ‘,b:1,’ bilangan:’);
begin
for i:=1 to b do
readln(num[i]);
end;
clrscr;
write (‘bilangan yang di cek Bilangan setelah diurutkan’) ;
tampilkan (num, i, 8, 2 );
bubblesort (num, i) ;
tampilkan ( num, i,40,2 );
readln ;
end;
procedure insertion;
var
a : array[1..10] of integer;
i, n : integer;
procedure insertion_sort;
var
i, k : integer;
nilai : integer;
m : boolean;
begin
for i := 2 to n do
begin
nilai := a[i];
k := i;
m := false;
while not m do
begin
if k <= 1 then
m := true
else
if nilai >= a[k-1] then
m := true
else
begin
a[k] := a[k-1];
k := k-1
end
end;
a[k] := nilai;
end
end;
begin
clrscr;
writeln(‘Berapa banyak bilangan yang anda inginkan ?’);
readln(n);
writeln(‘Masukkan ‘,n:1,’ bilangan:’);
for i := 1 to n do
read(a[i]);
insertion_sort;
for i := 1 to n do
write(a[i]:1,’ ‘);
writeln;
readln;
readln;
end;
begin
clrscr ;
writeln (‘ MENU SORTING ‘) ;
writeln (‘(1) Selection ‘) ;
writeln (‘(2) Bubblesort ‘);
writeln (‘(3) insertsort ‘);
write (‘Pilihan Anda = ‘) ; readln (biggie);
clrscr ;
case biggie of
1 : begin
selection;
end ;
2 : begin
bubble ;
end ;
3 : begin
insertion;
end ;
end ;
readln;
end.
Sekian dari penulis, semoga bermanfaat. Terimakasih…











New Comment