Unit adalah sebuah tempat untuk menyimpan kumpulan prosedur, fungsi, variabel, konstanta, definisi tipe, dan lain-lain. Dengan menempatkan prosedur-prosedur atau fungsi-fungsi di dalam sebuah unit, maka prosedur atau fungsi tersebut bisa digunakan oleh banyak program. Susunan unit mirip dengan program. Akan tetapi unit tidak bisa dijalankan. Unit hanya bisa dipakai oleh program.
Susunan dari sebuah unit adalah sebagai berikut:
1 2 3 4 5 6 7 8 9 10 11 | unit NamaUnit; interface //bagian deklarasi implementation //bagian implementasi end. |
Permutasi dengan unit
Buatlah aplikasi console baru. Seperti biasa, hapuslah bagian uses karena kita tidak akan menggunakan unit yang disediakan oleh Deplhi.
Setelah itu buatlah unit baru dengan cara pilih menu File-New-Unit. Secara otomatis unit yang baru dibuat diberi nama Unit1, dan secara otomatis pula unit ini akan ditambahkan ke dalam program kita. Penampilan program kita akan menjadi seperti berikut:1 2 3 4 5 6 7 8 9 | program Project1; {$APPTYPE CONSOLE} uses Unit1 in 'Unit1.pas'; begin { TODO -oUser -cConsole Main : Insert code here } end. |
Pilih menu File>Save All untuk menyimpan pekerjaan sedini mungkin. Simpan Unit1 menjadi Matematika.pas dan Project1 menjadi Permutasi3.dpr.
Secara otomatis nama unit yang digunakan juga akan diganti menjadi Matematika. Buatlah bagian unit Matematika seperti berikut:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | unit Matematika; interface function Faktorial(bil:integer):Extended; implementation function Faktorial(bil:integer):Extended; var n:integer; begin result:=1; if (bil<>0) then begin n:=1; repeat result:=result*n; n:=n+1; until (n>bil); end; end; end. |
Pada bagian program, buatlah seperti berikut:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | program Permutasi3; {$APPTYPE CONSOLE} uses Matematika in 'Matematika.pas'; var n,r,k:integer; Hasil:Extended; begin Write('Masukkan jumlah unsur (n): '); Readln(n); Write('Masukkan jumlah pengambilan (r): '); Readln(r); Write('Masukkan jumlah unsur sama (k): '); Readln(k); Hasil:= Faktorial(n)/ (Faktorial(n-r)*Faktorial(k)); Writeln('Hasil permutasinya adalah: ',Hasil:0:0); Writeln('Tekan Enter'); Readln; end. |
Program Permutasi3 menggunakan fungsi Faktorial yang tidak didefinisikan di dalam program tersebut. Fungsi tersebut di definisikan di dalam unit yang terdapat pada bagian uses-nya.


