#2
Aplikasi Console Aplikasi console merupakan aplikasi berbasis teks yang berjalan pada command prompt. Bahasa yang digunakan pada aplikasi delphi adalah bahasa pemrograman pascal. Struktur Penulisan : program Project; // nama program wajib ada {$APPTYPE CONSOLE} uses SysUtils; {tempat untuk mendeklarasikan konstanta digunakan} begin {tempat untuk menulis code} end.
dan
variable
yang
Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File | New | Other | Console Application
pilih OK. maka akan muncul code editor pada aplikasi delphi. 3. Simpan aplikasi tersebut dengan nama ProgramPertamaku.pas 4. Ketikkan beberapa baris code seperti dibawah ini program ProgramPertamaku; {$APPTYPE CONSOLE} uses SysUtils; var Halo1 : String; const Halo2 = 'Halo dunia, selamat datang di program pertamaku'; begin Halo1 := 'Halo dunia, selamat datang di program pertamaku'; writeln('Halo dunia, selamat datang di program pertamaku'); writeln(Halo1); writeln(Halo2); end.
5. Kemudian simpan kembali. Mengkompilasi dan Menjalankan Program ada dua cara dalam mengkompilasi aplikasi console pada delphi. 1. Menggunakan menu yang telah disediakan oleh IDE delphi
akan
untuk yang menggunakan menu dari delphi tinggal pilih Project | Compile namaProgram atau tekan ctrl+F9 dan untuk menjalankan program hasil kompilasi tinggal pilih Run | Run atau tekan F9. Untuk melihal hasil kompilasi silahkan buka direktori tempat anda menyimpan program, maka anda akan menemukan file *.exe 2. Melalui aplikasi command prompt untuk yang melalui command prompt silahkan buka aplikasi Ms. Dos Prompt dengan cara Start | All Program | Accessories | Command Prompt atau juga dengan Run | ketikkan cmd . Kemudian kompilasi program yang telah anda buat dengan perintah seperti berikut
kemudian tekan enter, kemudian perhatikan informasi yang mucul jika tidak terdapat error maka program berhasil dikompilasi
untuk menjalankan program silahkan masukkan perintah seperti berikut
Tipe Data Dalam Pascal, semua perubah yang akan dipakai harus ditentukan terlebih dahulu tipe datanya. Tipe data menentukan batasan nilai perubah dan jenis operasi yang bisa dilakukan terhadap perubah tersebut. Bentuk umum : type pengenal = tipe;
dengan pengenal : nama pengenal yang menyatakan tipe data Tipe data yang berlaku dalam Turbo Pascal 1. Tipe Bilangan Bulat Bilangan Bulat Jangkauan Byte 0 s/d 255 ShortInt -128 s/d 127 Integer -32768 s/d 32767 Word 0 s/d 65535 LongInt -2147483648 s/d 2147483647 2. Tipe Bilangan Real Pecahan Jangkauan Real Semua nilai pecahan dari 1E-38 s/d 1E+38 Single 4 1.5 x 10E-45 .. 3.4 x 10E38 7-8 Double 8 5.0 x 10E-324 .. 1.7 x 10E308 15-16 Extended 10 1.9 x 10E-4951 .. 1.1 x 10E4932 19-20 Comp 8 -2E + 63 + 1 .. 2E + 63 – 1 19-20 3. Tipe Karakater Nilai data karakter berupa sebuah karakter yang ditulis diantara tanda petik tunggal, seperti misalnya ‘A’, ‘a’, ‘!’, ‘%’, ‘5’ dan sebagainya.Penggunaan variabel ini menggunakan deklarasi tipe Char.
4. Tipe String Merupakan kumpulan dari tipe data karakter yang terletak diantara tanda petik tunggal. Dalam penyimpanannya fariabel memori dengan tipe string akan menempati memori sebesar banyaknya karakter string ditambah 1 byte. Harga default tipe string adalah 255, sehingga bila kita tidak mendeklarasikan besarnya akan diberi lebar 255. 5. Tipe Boolean Tipe data boolean adalah tipe data yang hanya mempunyai 2 alternatif nilai yaitu True (Benar) atau False (Salah). Sebagai bilangan ordinal boolean, true mempunyai nilai 1(satu), sedangkan false nilainya adalah 0(nol). Contoh: Program tampil_boolen; Begin writeln(ord(true)); writeln(ord(false)); end.
Hasilnya: 1 0 Variabel Variabel adalah suatu lokasi di memori yang disiapkan oleh programmer dan diberi nama yang khas untuk menampung suatu nilai dan atau mengambil nilai tersebut. Mendeklarasikan variabel adalah: • Memberikan nama variabel sebagai identitas pengenal • Menentukan tipe data variable Bentuk umum: Var NamaVariabel1,NamaVariabel2,…,NamaVariabelN : TipeData1; NamaVariabel1,NamaVariabel2,…,NamaVariabelN : TipeData2; : : NamaVariabel1,NamaVariabel2,…,NamaVariabelN : TipeDataN;
Contoh Deklarasi variabel : Var Angka1,Angka2 : Integer; Nama1,Nama2 : String;
Konstanta Deklarasi konstanta menunjukkan nilai yang tetap dari suatu pengenal dan berlaku pada blok dimana deklarasi tersebut dinyatakan. Penggunaan konstanta akan membuat program menjadi lebih mudah dimengerti dan diperbaiki. Dengan menggunakan konstanta, kita dapat memberikan nama yang lebih mudah dipahami daripada nilainya. Misal apabila dalam program banyak menggunakan angka 3.1415926536, akan lebih mudah apabila angka tersebut dibuat konstatnta dengan nama pi. Apabila suatu saat kita harus mengganti angka 3.1415926536 menjadi 3.14, pengubahan hanya dilakukan sekali. Mendeklarasikan konstanta adalah: a. Memberikan nama konstanta sebagai identitas pengenal b. Menentukan nilai konstanta Bentuk Umum :
const NamaKonstanta1 = NilaiKonstanta1; NamaKonstanta2 = NilaiKonstanta2; : : NamaKonstantaN = NilaiKonstantaN;
Contoh deklarasi konstanta: const Jumlah = 100; {integer} Nama = 'Rini'; {string}
Konstanta Bertipe Konstanta bertipe adalah suatu konstanta yang dideklarasikan dengan tipe tertentu: Bentuk Umum: const NamaKonstanta1:Tipe1 = NilaiKonstanta1; NamaKonstanta2:Tipe2 = NilaiKonstanta2; : : NamaKonstantaN:TipeN = NilaiKonstantaN;
Contoh deklarasi konstanta: const Jumlah : integer = 100; Nama : string = ‘Rini’;
Latihan : Buatlah kalkulator sederhana menggunakan delphi console dengan output seperti berikut :
dan
PERCABANGAN Salah satu dari tiga konstruksi fundamental adalah percabangan/branching. Dalam pascal, percabagan menggunakan syntax if then else dan case of. Penggunaan IF … ELSE: Syntax: IF kondisi THEN BEGIN … END;
Dengan ELSE: IF kondisi [and] kondisi [or] kondisi THEN
BEGIN … END ELSE BEGIN … END;
Contoh penggunaan: Var i: integer; Begin Write(‘Masukkan bilangan antara 1-100: ‘); readln(i); If i<=50 then Write(‘bilangan kecil’) Else Write(‘bilangan besar’); End.
Penggunaan CASE … OF: Contoh penggunaan: CASE nilai OF 80..100 : grade:=’A'; 70..79 : grade:=’B'; 55..69 : grade:=’C'; 45-54 : grade:=’D'; ELSE grade:=’E'; END;
PERULANGAN Selain percabangan, konstruksi fundamental pemrograman yang lainnya adalah looping atau perulangan. Di Pascal ada 3 macam looping. Kita akan pelajari satu per satu: 1. For … to … do Syntax: FOR variable := nilai_awal TO nilai_akhir DO BEGIN …apa_yang_diulang…. END;
Contoh penggunaan: FOR i:=1 TO 5 DO BEGIN Writeln(i); END;
Jika ingin melakukan perhitungan mundur, gunakan perintah DOWNTO sebagai pengganti TO. Untuk variabel yang bertipe char, bisa juga menggunakan FOR dengan cara berikut: FOR c:=’A’ TO ‘Z’ DO write(c,’ ‘);
Atau boleh juga menulisnya dengan FOR c:=’Z’ DOWNTO ‘a’ DO write(c,’ ‘);
Atau untuk tipe boolean, bisa juga seperti ini: FOR b:=false TO true DO writeln(b);
2. While … do Syntax: WHILE kondisi DO BEGIN …apa_yang_dilakukan… END;
Bedanya dengan FOR … DO, adalah pada WHILE … DO, sebelum memulai masuk ke blok begin end, ada kondisi yang harus dicek. Jika terpenuhi baru masuk ke blok BEGIN END dan terus-menerus diulang hingga kondisi tidak tercapai. Jadi bisa saja yang di dalam blok BEGIN END tidak dijalankan sama sekali. Contoh penggunaan: i:=1; WHILE i<6 DO BEGIN Writeln(i); i:=i+1; END;
3. Repeat … until Syntax: REPEAT …apa_yang_dilakukan… UNTIL kondisi
Ini adalah kebalikan dari WHILE DO, jika pada WHILE DO, sebelum menjalankan statement, maka kondisi dicek terlebih dahulu. Maka sebaliknya, pada REPEAT UNTIL, program menjalankan statement dalam blok BEGIN END satu kali terlebih dahulu, baru di akhir dilakukan pengecekan kondisi. Jika kondisi terpenuhi, maka Blok statement akan diulang lagi, sampai kondisi sudah tidak terpenuhi. Contoh penggunaan: i:=1; REPEAT Writeln(i); i:=i+5; UNTIL i>5;
ARRAY Array adalah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe sama. Komponen-komponen tersebut disebut sebagai komponen type, larik mempunyai jumlah komponen yang jumlahnya tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di array dapat diakses dengan menunjukkan nilai indexnya atau subskript. Contoh: Var Untai : array[1..50] of Integer;
Pada contoh Array dengan nama untai telah dideklarasikan dengan tipe integer, dengan jumlah elemen maksimum 50 elemen, nilai dari elemen array tersebut diatas harus bertipe integer. Contoh Program : Program Contoh_Array_Input; Uses Crt; Var Bilangan : array[1..50] of Integer; Begin Bilangan[1]:=3; Bilangan[2]:=29; Bilangan[3]:=30; Bilangan[4]:=31; Bilangan[5]:=23; Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]); End.
RECORD Record dapat dikatakan sebagai suatu kumpulan data item yang masing-masing mempunyai jenis data berbeda.
Uses wincrt; Type wisatawan = Record Nama : string[30]; JenisKelamin : string[20]; Alamat : string[20]; Umur : real; end; Var Wstw:Wisatawan; Begin write ('Nama:');ReadLn(Wstw.Nama); write ('Alamat:');Readln(Wstw.Alamat); write ('Jenis Kelamin:');Readln(Wstw.JenisKelamin); write ('Umur:');Readln(Wstw.Umur); Writeln; Writeln('Nama Anda:',Wstw.Nama); Writeln('Alamat Anda:',Wstw.Alamat); Writeln('Jenis Kelamin Anda:',Wstw.JenisKelamin); Writeln('Umur Anda:',Wstw.Umur:0:0); End.
PROCEDURE Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan judul prosedurnya. Prosedur banyak digunakan pada program yang terstruktur, karena : 1. Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur. 2. Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan. Sebagaimana halnya sebuah program, suatu procedure juga memiliki header dan block. Perbedaan bentuknya dengan program hanyalah pada bagian header-nya saja. Bentuk Umum header suatu procedure adalah : PROCEDURE nama;
Atau PROCEDURE nama (formal parameter : jenis);
Jika kita menggunakan procedure dalam suatu program, maka procedure tersebut harus dituliskan pada bagian deklarasi. Contoh : Misal akan dibuat suatu procedure untuk menentukan bilangan bulat terbesar diantara tiga bilangan bulat, maka procedure tersebut adalah sebagai berikut : PROCEDURE maksimum; VAR max : integer; BEGIN IF a > b THEN max := a ELSE max := b; IF c > max THEN max := c; WRITELN(max); END.
Selanjutnya, di dalam suatu program, procedure ini dapat digunakan dengan bentuk penulisan berikut : PROGRAM contoh_1; VAR a,b,c : integer; PROCEDURE maksimum; VAR max : integer; BEGIN IF a>b THEN max := a ELSE max := b; IF c>max THEN max := c; WRITELN(max); END; BEGIN READLN(a,b,c); Maksimum END.
FUNCTION Blok fungsi hampir sama dengan blok prosedur, hanya fungsi harus dideklarasikan dengan tipenya atau jenis hasilnya. Tipe deklarasi ini menunjukkan tipe hasil dari fungsi. Pada bahasa Pascal dikenal beberapa fungsi, misalkan : abs, pred, sqrt, sqr, succ dan sebagainya. Fungsi-fungsi tersebut biasanya dikenal dengan Built in Function. Sedangkan function yang akan bicarakan disini adalah fungsi yang kita buat sendiri. Berbeda dengan procedure, function merupakan modul program yang menghasilkan suatu kuantitas. Hal ini dapat dilihat dari bentuk header-nya yang menyebutkan jenis data dari kuantitas yang dihasilkan. Secara umum bentuk header suatu function adalah : FUNCTION nama : jenis hasil; Atau FUNCTION nama (formal parameter : jenis ) : jenis_hasil; Contoh : Akan dibuat suatu fungsi dengan nama MAX yang dapat menentukan integer terbesar di antara dua integer. Function MAX (x,y : integer) : integer; Begin If x < y then MAX := y ; Else MAX := x; End;
Selanjutnya kita dapat menggunakan fungsi di atas dalam suatu program, misalnya dengan menyatakan sebagai berikut : P := MAX(a,b); Z := MAX(a+b,a*b); Q := MAX(MAX(a,b),c);
………………………… Latihan : Buatlah kalkulator sederhana menggunakan delphi console dengan output seperti berikut :