Top Banner
Tipe Data dan Operator Tipe Data menunjukkan suatu nilai yang dpat digunakan oleh sutu variable yang bersangkutan. Tipe Data dalam Pascal : 1. Tipe Data Sederhana, terdiri dari : a. Tipe data standar : integer : merupakan tipe data berupa bilangan bulat - real : merupakan jenis bilangan pecahan char : merupakan karakter yg ditulis diantara tanda petik tunggal. Ex : ‘A’, ‘a’, ’5dll string : merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. boolean : merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE atau FALSE . b. Tipe data didefinisikan pemakai 2. Tipe Data Terstruktur, terdiri dari : a. Array b. Record c. File d. Set 3. Tipe Data PointerOperator Tanda operasi (operator) di dalam bahasa Pascal di kelompokkan dalam : 1. Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=). Contoh > A:=B; 2. Binary operator digunakan untuk mengoperasikan dua buah operand yang berbentuk konstanta ataupun variable. Operator ini digunakan untuk operasi arithmatika yang berhubungan dgn nilai tipe data Integer dan Real. Operasi yang dilakukan adalah : Pertambahan (+), Pengurangan (-), Perkalian (*), Pembagian Bulat (DIV), Pembagian Real (/) dan Modulus atau Sisa Pembagian (MOD) 3. Unary operator, operator ini menggunakan sebuah operand saja dapat berupa unary minus dan unary plus. Contoh : +2.5, a+(+b) dll 4. Bitwise operator digunakan untuk operasi bit per bit pada nilai integer. Operator yang digunakan (NOT, AND, OR, XOR, Shl, Shr Maret 9, 2007 Posted by agung83 | Kumpulan Materi Pascal | Komentar Dimatikan Pertemuan 2 Dasar Program Pascal Unsur-unsur Pemrograman a. Mendapatkan data dengan membaca data dari default input (key board, file atau sumber data lainnya). b. Menyimpan data ke dalam memori dengan struktur data yang sesuai, c. Memproses data dengan instruksi yang tepat. d. Menyajikan atau mengirimkan hasil olahan data ke default output (monitor, file atau tujuan lainnya). Nama yang dipergunakan du dalam program Pascal disebut dengan pengenal atau Identifier. Identifier digunakan untuk nama: Program, Sub-program (procedure dan function), nama: Variable, Constant, Type, Label. Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam program. Ketentuan penulisan identifier
53

Tipe Data Dan Operator

Nov 28, 2015

Download

Documents

TI
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tipe Data Dan Operator

Tipe Data dan Operator Tipe Data menunjukkan suatu nilai yang dpat digunakan oleh sutu variable yang bersangkutan. Tipe Data dalam Pascal : 1. Tipe Data Sederhana, terdiri dari : a. Tipe data standar : – integer : merupakan tipe data berupa bilangan bulat - real : merupakan jenis bilangan pecahan – char : merupakan karakter yg ditulis diantara tanda petik tunggal. Ex : ‘A’, ‘a’, ’5′ dll – string : merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. – boolean : merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE atau FALSE . b. Tipe data didefinisikan pemakai 2. Tipe Data Terstruktur, terdiri dari : a. Array b. Record c. File d. Set 3. Tipe Data PointerOperator Tanda operasi (operator) di dalam bahasa Pascal di kelompokkan dalam : 1. Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=). Contoh –> A:=B; 2. Binary operator digunakan untuk mengoperasikan dua buah operand yang berbentuk konstanta ataupun variable. Operator ini digunakan untuk operasi arithmatika yang berhubungan dgn nilai tipe data Integer dan Real. Operasi yang dilakukan adalah : Pertambahan (+), Pengurangan (-), Perkalian (*), Pembagian Bulat (DIV), Pembagian Real (/) dan Modulus atau Sisa Pembagian (MOD) 3. Unary operator, operator ini menggunakan sebuah operand saja dapat berupa unary minus dan unary plus. Contoh : +2.5, a+(+b) dll 4. Bitwise operator digunakan untuk operasi bit per bit pada nilai integer. Operator yang digunakan (NOT, AND, OR, XOR, Shl, Shr Maret 9, 2007 Posted by agung83 | Kumpulan Materi Pascal | Komentar Dimatikan Pertemuan 2 Dasar Program Pascal Unsur-unsur Pemrograman a. Mendapatkan data dengan membaca data dari default input (key board, file atau sumber data lainnya). b. Menyimpan data ke dalam memori dengan struktur data yang sesuai, c. Memproses data dengan instruksi yang tepat. d. Menyajikan atau mengirimkan hasil olahan data ke default output (monitor, file atau tujuan lainnya). Nama yang dipergunakan du dalam program Pascal disebut dengan pengenal atau Identifier. Identifier digunakan untuk nama: Program, Sub-program (procedure dan function), nama: Variable, Constant, Type, Label. Nama-nama ini digunakan untuk pemakaian dan pemanggilan dalam program. Ketentuan penulisan identifier

Page 2: Tipe Data Dan Operator

a. Nama identifier harus dimulai dengan karakter huruf alfabet: a sampai z, A sampai Z atau karakter ‘_’ (underscore – garis bawah) b. Karakter berikutnya boleh karakter numerik (0 .. 9) atau kombinasi alphanumerik (huruf-numerik). c. Panjang nama, pada berbagai versi Pascal umumnya antara 32 – 63. d. Tidak boleh menggunakan karakter istimewa: + – * / | \ = < > [ ] . , ; : ( ) ^ @ { } $ # ~ ! % & ` ” ‘ dan ? Contoh penulisan: Penulisan yang benar: NamaMahasiswa, Gaji_Karyawan, PX4, dll. Penulisan yang salah: 3X, A & B, C Z dll. Variable adalah identifier yang berisi data yang dapat berubah-ubah nilainya di dalam program. Deklarasi Variable adalah : a. Memberikan nama variabel sebagai identitas pengenal b. Menentukan tipe data variabel Contoh deklarasi variabel: var X : integer; R : real; C : char; T : boolean; Konstanta adalah identifier yang berisi data yang nilainya tidak berubah di dalam program. Deklarasi Konstanta adalah: a. Memberikan nama konstanta sebagai identitas pengenal b. Menentukan nilai konstanta Contoh deklarasi konstanta: conts MaxSize = 100; {integer} ExitC = ‘Q’; {char} Reserved Words atau kata-kata cadangan pada Pascal adalah kata-kata yang sudah didefinisikan oleh Pascal yang mempunyai maksdu tertentu.Suatu Unit adalah kumpulan dari konstanta, tipe-tipe data, variabel, prosedur dan fungsi-fungsi. Unit standar pada Pascal yang bisa langsung digunakan adalah System, Crt, Printer Dos dan Graph. Untuk menggunakan suatu unit, maka kita harus meletakkan clausa atau anak kalimat Uses di awal blok program, diikuti oleh daftar nama unit yang digunakan. Pada materi ini yang akan dibahas adalah unit Crt. Unit ini digunakan untuk memanipulasi layar teks (windowing, peletakan cursor di layar, Color pada teks, kode extended keyboard dan lain sebagainya. Beberapa Statemen Turbo Pascal Statemen adalah perintah untuk pengerjaan program pascal. Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen diakhiri dengan titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal. 1. Statemen-statemen yang digunakan untuk input/output. # Read/Readln [prosedur]. Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke dalam suatu variabel. Sintaks: Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;]) Keterangan : x = variabel. Read = pada statemen ini posisi kursor tidak

Page 3: Tipe Data Dan Operator

pindah ke baris selanjutnya. Readln = pada statemen ini posisi kursor akan pindah ke baris selanjutnya setelah di input. # Write/Writeln [prosedur]. Digunakan untuk menampilkan isi dari suatu nilai variable di layar. Sintaks: Write/Writeln(x); Keterangan : x = variabel. Write/Writeln= statement ini digunakan untuk mencetak variable ke dalam monitor 2. Statemen-statemen yang digunakan untuk pengaturan letak layar. # ClrScr [prosedur]. Perintah ini digunakan untuk membersihkan layar. sintaks: ClrScr; �[Clear screen] 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. Array dapat bertipe data sederhana seperti byte, word, integer, real, bolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi dari larik atau komponen- komponenya mempunyai nilai dengan tipe data tersebut. 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 ClrScr; Bilangan[1]:=3; Bilangan[2]:=29; Bilangan[3]:=30; Bilangan[4]:=31; Bilangan[5]:=23; Writeln('nilai varibel bilangan ke 3 =',Bilangan[3]); Readln; End. Array juga dapat dideklarasikan bersama dengan tipe yang beragam seperti contoh

Page 4: Tipe Data Dan Operator

dibawah ini : Program Contoh_Deklarasi_Array_Beragam; Uses Crt; Var NPM : array[1..20] of string[10]; Nama : array[1..20] of string[25]; Nilai : array[1..20] of real; Umur : array[1..20] of byte; banyak,i : integer; Begin ClrScr; Write('Isi berapa data array yang diperlukan :');Readln(banyak); For i := 1 to banyak Do Begin Write('NPM =');Readln(NPM[i]); Write('Nama =');readln(Nama[i]); Write('Nilai=');readln(Nilai[i]); Write('Umur =');readln(Umur[i]); End; {cetak varibel array} Writeln('NPM NAMA NILAI UMUR '); For i:= 1 to banyak Do Begin Writeln(Npm[i]:10,Nama[i]:25,Nilai[i]:3:2,' ',Umur[i]:3); End; Readln; End. Untuk deklarasi array dapat digunakan beberapa cara seperti berikut ini : Type Angka = String[20]; Var Nama : Array [1..50] of Angka; Begin . . End. Deklarasi tipe indeks subrange integer Indeks pada array dapat tipe skalar atau subrange, tetapi tidak bisa real. Contoh: Var Nilai : Array[1..10] of Integer; pada contoh ini array nilai mempunyai 10 buah elemen yaitu dari 1 sampai 10. Array tersebut dapat dideklarasikan dengan type seperti berikut ini : Type Skala = 1..10;

Page 5: Tipe Data Dan Operator

Var Nilai : Array [skala] of Integer; atau : Type Skala = 1..10; Y = Array[skala] of Integer; Var Nilai : Y; atau : Type Y = Array[1..10] of Integer; Var Nilai : Y; atau : Const Atas =1; Bawah = 5; type Y = Array[Atas..Bawah] of Integer; Var Nilai : Y; I. Deklarasi Type Indeks Skalar Indeks dari larik dapat berupa tipe skalar. Contoh. : Program Deklarasi_Indeks_Array_Skalar; Uses Crt; Var Jum : Array[(jan,feb,mar,apr,mei)] of Integer; Begin Jum[jan]:=25; Jum[feb]:=45; Jum[mar]:=21; Jum[apr]:=23; Jum[mei]:=50; Writeln('Jumlah nilai bulan maret =',Jum[mar]); Readln; End. dapat juga ditulis : type Bln = (jan,feb,mar,apr,mei); Var Jum : Array[bln] of Integer; atau : type Bln =(jan,feb,mar,apr,mei); Var Jum : Array[jan..mei] of Integer;

Page 6: Tipe Data Dan Operator

II. Deklarasi Konstanta Array Array tidak hanya dapat berupa suatu varibel yang dideklarasikan di bagian deklarasi variabel, tetapi dapat juga berupa konstanta (const). Contoh Program : Program Contoh_Deklarasi_Array_Konstan; Uses Crt; Const Tetap : Array[1..4] of Integer=(7,10,21,20); Var i : Integer; Begin For i:= 1 to 4 Do Writeln('Nilai Konstan array ke ',i:2,' =',Tetap[i]); Readln; End. konstanta array dapat juga berupa ketetapan dalam bentuk karakter seperti berikut. Contoh Program : Program Contoh_Konstan_Array_Char_; Uses Crt; Const Huruf : Array[0..5] of Char=('A','B','C','D','E','F'); Var i : Integer; Begin For i:= 0 to 5 Do Writeln('Nilai konstan array ke',i:2,' = ',Huruf[i]); Readln; End. Konstanta array dapat juga berupa string seperti berikut ini. Contoh Program : Program Constanta_Array_String; Uses Crt; Type A = Array [1..5] of String; Const Nama : A = ('basic','pascal','cobol','paradox','dbase'); Var i : Integer; Begin For i:= 1 to 5 Do Writeln('Nilai Array ke-',i:2,'= ',Nama[i]); readln; end. Dalam pascal string merupakan array dari elemen- elemen karakter seperti berikut : Contoh Program : Program String_Adalah_Array_Tipe_Char;

Page 7: Tipe Data Dan Operator

Uses Crt; Var Nama : string; i : Integer; Begin Nama:='Turbo Pascal'; For i:= 1 to Length(nama) Do Writeln('Elemen ',i,' dari ',Nama,'= ',Nama[i]); Readln; End. contoh program bilangan prima dengan menggunakan bantuan array. Contoh program : Program Mencari_Bilangan_Prima_Dengan_Array; Uses Crt; Var Prima : Array[1..100] of Integer; i,j : Integer; bil : Integer; Begin ClrScr; For i := 2 to 100 Do Begin Prima[i]:=i; For j:= 2 to i-1 Do Begin bil := (i mod j); {* i dibagi j dicek apakah 0*} If bil = 0 then Prima[i]:=0; {*jika habis dibagi,berarti bkn prima*} End; If Prima[i]<> 0 Then Write(Prima[i],' '); {*cetak array yg prima*} End; Readln; End. Contoh pengurutan data dengan metode buble sort, yaitu dengan cara penukaran, dapat dilihat pada contoh dibawah ini : Contoh Program : Program Penggunaan_Array_Untuk_Sortir_Buble_Sort; Uses Crt; Var nil1 : Array[1..100] of Integer; n,i,j,dum : Integer; Begin ClrScr; Write('mau isi berapa data acak (integer) ='); readln(n); For i := 1 to n Do Begin Write('Data Ke ',i,':');Readln(nil1[i]);

Page 8: Tipe Data Dan Operator

End; {* penyapuan proses} for i:= 1 to n-1 do begin for j:= i to n do begin if nil1[j] begin dum:=nil1[j]; nil1[j]:=nil1[i]; nil1[i]:=dum; end; end; end; writeln; writeln('Hasil Sortir'); for i := 1 to n do write(nil1[i]:3); readln; end. III. Array Dua Dimensi Di dalam pascal Array dapat berdimensi lebih dari satu yang disebut dengan array dimensi banyak (Multidimensional array), disini akan dibahas array 2 dimensi saja. Array 2 dimensi dapat mewakili suatu bentuk tabel atau matrik, yaitu indeks pertama menunjukkan baris dan indeks ke dua menunjukkan kolom dari tabel atau matrik. 1 2 1 2 3 Untuk mengetahui cara mendeklarasikan dari penggunaan aray dua dimensi dapat dilihat pada listing program dibawah ini . Contoh Program: Program Deklarasi_Array_Dua_Dimensi; Uses Crt; Var Tabel : Array[1..3,1..2] of Integer; i,j : Integer; Begin ClrScr; Tabel[1,1]:=1; Tabel[1,2]:=2; Tabel[2,1]:=3; Tabel[2,2]:=4; Tabel[3,1]:=5; Tabel[3,2]:=6; For I := 1 to 3 Do Begin For J:= 1 to 2 Do Begin Writeln('Elemen ',i,',',j,'= ',tabel[i,j]); End;

Page 9: Tipe Data Dan Operator

End; Readln; End. IV. Alternatif Deklarasi Array Dua Dimensi. Ada beberapa cara dalam mendeklarasikan array dua dimensi, beberapa cara tersebut dapat dilihat dibawah ini : Contoh : Var Tabel : Array[1..3] of Array[1..2] of Byte; atau : Type Matrik = Array[1..3,1..2] of Byte; Var Tabel : Matrik; atau : Type Baris = 1..3; Kolom = 1..2; Matrik = Array[Baris,Kolom] of Byte; Var Tabel : Matrik; atau : Type Baris = 1..3; Kolom=1..2; Matrik= Array[Baris] of Array[Kolom] of Byte; Var Tabel : Matrik; Dibawah ini akan diberikan listing program penggunaan array dua dimensi dalam aplikasi penjumlahan matrik : Contoh Prorgam: Program Penjumlahan_Matrik; Uses Crt; Var Matrik1,Matrik2, Hasil : Array[1..3,1..2] of Integer; i,j : Integer; Begin ClrScr; { input matrik ke satu } Writeln(' Elemen matrik satu'); For i := 1 to 3 Do Begin For j := 1 to 2 Do Begin Write('Elemen baris -',i,' Kolom -',j,'= '); Readln(matrik1[i,j]);

Page 10: Tipe Data Dan Operator

End; End; {input matrik ke dua} Writeln('input elemen matrik dua'); For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write('Elemen baris -',i,' kolom -',j,'= '); Readln(matrik2[i,j]); End; End; {proses penjumlahan tiap elemen} For i := 1 to 3 Do Begin For j:= 1 to 2 Do Begin Hasil[i,j]:=Matrik1[i,j]+Matrik2[i,j]; End; End; {proses cetak hasil} For i:= 1 to 3 Do Begin For j:= 1 to 2 Do Begin Write(Hasil[i,j]:6); End; Writeln; End; Readln; End. V. Array Sebagai Parameter Array dapat digunakan sebagai parameter yang dikirimkan baik secara nilai (by value) atau secara acuan (by reference) ke procedure atau ke function. Procedure yang menggunakan parameter berupa array harus dideklarasikan di dalam judul procedure yang menyebutkan parameternya bertipe array. Contoh Program : Program Contoh_Pengiriman_Parameter_Array_Di_Procedure; Uses Crt; Const Garis ='---------------------------------------------------'; Type Untai = Array[1..10] of String[15]; Bulat = Array[1..10] of Integer; Huruf = Array[1..10] of Char;

Page 11: Tipe Data Dan Operator

Var i,Banyak : Integer; Procedure Proses(Nama:Untai;Nilai:Bulat); Var Ket : String; Abjad : Char; Begin Writeln(Garis); Writeln('Nama Nilai Abjad Keterangan'); Writeln(Garis); For i := 1 to Banyak Do Begin If Nilai[i] > 90 Then Begin Abjad:='A'; Ket :='Istimewa'; End; If (Nilai[i]<90)>70) Then Begin Abjad:='B'; Ket :='Memuaskan'; End; If (Nilai[i]<70)>60) Then Begin Abjad:='C'; Ket :='Cukup'; End; If (Nilai[i]<60)>45) Then Begin Abjad:='D'; Ket :='Kurang'; End; If Nilai[i]< 45 Then Begin Abjad:='E'; Ket :='Sangat kurang'; End; Writeln(Nama[i]:15,' ',Nilai[i]:4,' ',Abjad,' ',Ket:15); End; Writeln(Garis); End; Procedure Masuk_Data; Var Nama : Untai; Nilai : Bulat; Begin Write('Banyak data =');Readln(Banyak); For i:= 1 to Banyak Do

Page 12: Tipe Data Dan Operator

Begin ClrScr; Writeln('Data ke - ',i); Write('Nama =');readln(Nama[i]); Write('Nilai =');readln(Nilai[i]); End; Proses(Nama,Nilai); End; {modul Utama} Begin Masuk_Data; Readln; End. Materi 1. Bentuk – bentuk Perulangan Dalam hampir setiap program yang kompleks mutlak memerlukan suatu perulangan dan percabangan. Tujuan perulangan disini adalah untuk mengulang statement atau blok statement berulang kali sesuai sejumlah yang ditentukan pemakai. Dalam materi ini akan memberikan gambaran konsep dasar dari pengertian diatas. a) Perulangan For. Perulangan dengan statemen For digunakan untuk mengulang statemen atau suatu blok statemen berulang kali. Perulangan dengan statemen For dapat berupa perunlangan positif dan perulangan negatif. • Perulangan For positif contoh : perulangan positif untuk satu statement : Uses Crt; Var i : Integer; Begin For i := 1 To 5 Do Writeln ('I Love Dinda’); END. Maka bila program diatas dicompile hasilnya : I Love Dinda I Love Dinda I Love Dinda I Love Dinda I Love Dinda Penjelasan : Berati statemen I Love Dinda akan diulang sebanyak 5 kali yaitu dengan menghitung nilai i dari i ke 1 sampai nilai i terakhir yaitu i ke 5. # Contoh dengan menggunakan blok statement: cara penulisannya dengan pada awal blok diawali dengan Begin dan pada akhir blok diakhiri dengan End;

Page 13: Tipe Data Dan Operator

Uses Crt; Var i : Integer; Begin For i:= 1 To 10 Do Begin Writeln ('I Love Dinda'); { blok statement } End; End. Hasil yang akan didapat akan sama dengan contoh yang pertama, tapi yang harus diingat disini untuk penggunaan blok pada perulangan For biasanya mempunyai banyak statement [lebih dari 1 statement] # Contoh 3 : Penggunaan perulangan For dalam blok statement untuk membuat tabel Uses Crt; Var a,b,c : Integer; bagi : Real; Begin Writeln('----------------------------------------------'); Writeln(' a a*a a*a*a 1/a '); Writeln('----------------------------------------------'); For a := 1 To 10 Do Begin b:= a*a; c:=a*a*a; bagi := 1/a; Writeln(a:4,c:10,d:10,bagi:12:3); End; Writeln ('----------------------------------------------'); End. maka hasilnya : ---------------------------------------------- a a*a a*a*a 1/a ---------------------------------------------- 1 1 1 1.000 2 4 8 0.500 3 9 27 0.333 4 16 64 0.250 5 25 125 0.200 6 36 216 0.167 7 49 343 0.143 8 64 512 0.125 9 81 729 0.111 10 100 1000 0.100

Page 14: Tipe Data Dan Operator

---------------------------------------------- • Perulangan For negatif : Perulangan negatif adalah perulangan dengan menghitung (counter) dari besar ke kecil. Statement yang digunakan adalah For-DownTo-Do contoh : Uses Crt; Var i : Integer; Begin For i := 10 DownTo 1 Do Write (i:3); End. Hasil : 10 9 8 7 6 5 4 3 2 1 • Perulangan For tersarang Perulangan For tersarang adalah perulangan For yang berada pada perulangan yang lainnya. Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya. Contoh : Var a,b : Integer; Begin For a := 1 To 3 Do Begin For b := 1 To 2 Do Write (a :4,b:2); Writeln; End; End. Hasil : 1 1 1 2 2 1 2 2 3 1 3 2 • Perulangan While - Do Penyeleksian kondisi digunakan untuk agar program dapat menyeleksi kondisi, sehingga program dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari kondisi yang diseleksi tersebut. Perulangan While – Do tidak dilakukan jika kondisi tidak terpenuhi. Contoh : Uses Crt; Var i : Integer; Begin i := 0; While < i="5;">25; { berhenti jika b lebih besar dari 5 untuk perulangan dalam } a:=a+1;

Page 15: Tipe Data Dan Operator

Until a>3; { berhenti jika a lebih besar dari 3 untuk perulangan luar } Writeln(' ======================================='); End. • Percabangan

If - Then Bentuk struktur If – Then adalah sebagai berikut : If Kondisi Then Statement Ungkapan adalah kondisi yang diseleksi oleh statement If. Bila kondisi yang diseleksi terpenuhi, maka statement yang mengikuti Then akan diproses, sebaliknya bila kondisi tidak terpenuhi, maka yang akan diproses statement berikutnya. Misalnya : If Pilihan = 2 Then Begin{ jika kondisi terpenuhi, Yaitu jika pilihan = 2 } ...... ...... End Else{ jika kondisi tidak terpenuhi, yaitu jika pilhan tidak sama dengan 2} Begin ....... ....... End; Contoh Program : Uses Crt; Var Nilai : Real; Begin Write ('Jumlah Nilai :'); Readln (nilai); { Pemasukan data } If nilai > 60 Then { seleksi kondisi variabel nilai } Writeln('Lulus') { Dilaksanakan jika nilai lebih besar dari 60 } Else Writeln('Tidak lulus'); { Dilaksanakan jika variabel nilai lebih kecil dari 60 } End. Hasil : Jika kita Memasukan 40 pada varibel nilai, Maka program diatas akan mencetak Tidak lulus.

If tersarang (nested If) Struktur If tersarang merupakan bentuk dari suatu statement If berada di dalam lingkungan statemen If yang lainya. Bentuk statement If tersarang sebagai berikut : If kodisi1 Then atau If Kondisi1 Then If kondisi2 Then Begin statemen1 IF kondisi2 Then Else statemen1

Page 16: Tipe Data Dan Operator

statemen2; Else statemen2 End;

Case - Of Struktur Case – Of mempunyai suatu ungkapan logika yang disebut dengan selector dan sejumlah statemen yang diawali dengan suatu label permasalahan (case label) yang mempunyai tipe sama dengan selector. Statement yang mempunyai case label yang bernilai sama dengan case label yang bernilai sama dengan nilai selector akan diproses sedang statemen yang lainya tidak. Bentuk struktur dari Case - Of: Case Variabel Kondisi Of Case – Label 1; Statement 1; Case – Label 2; Statement 2; Case – Label 3; Statement 3; Case – Label 4; Statement 4; ........ ........ Case – Label n ; Statement n ; End ; { end dari case } Daftar Case label dapat berupa konstanta, range dari konstanta yang bukan bertipe real. Contoh program ; Program nilai; Var nil : Char ; Begin Write ('Nilai Numerik yang didapat :'); Readln (nil); Case nil Of 'A': Writeln ('Sangat Baik’); 'B': Writeln('Baik’); 'C': Writeln('Cukup'); 'D': Writeln('Kurang'); 'E': Writeln('Sangat Kurang'); End; End. hasil : Nilai Numerik yang didapat : B Input Baik Contoh Listing Program untuk Dicoba 1. Program input data dengan array. Program Pemakaian_Array_Untuk_10_data_dengan_menggunakan_For; Uses Crt;

Page 17: Tipe Data Dan Operator

Const garis='------------------------------------------------------'; Var nil1,nil2 : Array [1..10] Of 0..100; {Array dgn Type subjangkauan} npm : Array [1..10] Of String [8]; nama : Array [1..10] Of String [15]; n,i,bar : Integer; jum : Real; tl : Char; Begin ClrScr; { pemasukan data dalam array } Write ('Mau Isi Berapa Data:'); Readln (n); For i:= 1 To n Do Begin ClrScr; GotoXY(30,4+1); Write('Data Ke-:',i:2); GotoXY(10,5+i); Write('NPM :'); Readln (npm[i]); GotoXY(10,6+i); Write('Nama :'); Readln (nama[i]); GotoXY(10,7+i); Write('Nilai 1 :'); Realdn(nil 1[i]); GotoXY(10,8+i); Write('Nilai 2 :'); Readln(nil 2[i]); End; { proses data dalam array } ClrScr; GotoXY(5,4); Write(Garis); GotoXY(5,5); Write ('No'); GotoXY(9,5); Write ('NPM'); GotoXY(18,5); Write ('Nama'); GotoXY(34,5); Write ('Nilai 1'); GotoXY(41,5); Write ('Nilai 2'); GotoXY(47,5); Write ('Rata'); GotoXY(54,5); Write ('Abjad’); GotoXY(5,6); Write (Garis); { proses Cetak isi array dan seleksi kondisi } bar := 7; For i:= 1 To n Do Begin jum:=(nil1[i]+nil2[i])/2; If jum>= 90 Then tl:='A' Else If jum>80 Then tl:='B' Else If jum>60 then tl:='C' Else If jum 50 Then tl:='D' Else tl:='E';

Page 18: Tipe Data Dan Operator

{ cetak hasil yang disimpan di array dan hasil } { penyeleksian kondisi } GotoYX(5,bar); Writeln(i:2); GotoYX(9,bar); Writeln (NPM[i]); GotoYX(18,bar); Writeln (NAMA[i]); GotoYX(34,bar); Writeln (NIL1[i]:4); GotoYX(41,bar); Writeln (NIL2[i]:4); GotoYX(47,bar); Writeln (jum:5:1); GotoYX(54,bar); Writeln (tl); bar:=bar+1; End; GotoXY(5,bar+1);Writeln(garis); Readln; End. 2. Program jendela bergerak. Program Window_Bergerak_dgn_delay; Uses Crt; Var i : Integer; Begin For i:=1 To 15 Do Begin Sound (i*100); Delay (100); NoSound; End; TextBackGround(black); ClrScr; For i := 1 To 9 Do Begin TextBackGround(white); Window (42-i*4,10-i,38+i*4,15+i); ClrScr; Delay(100); End; TextColor(15); GotoXY(28,2);Writeln('c'); GotoXY (8,3); Writeln ('3'); GotoXY (28,4); Writeln ('A'); TextColor(black); GotoXY (44,3); Writeln ('3'); GotoXY (44,2); Writeln ('&'); TextColor (29,4); Writeln ('U'); TextColor (red*25); GotoXY (30,3); Writeln ('B E L A J A R'); TextColor (black); GotoXY (5,5); Write('c'); For i := 6 To 64 Do

Page 19: Tipe Data Dan Operator

Begin GotoXY (i,5); Writeln (''); End; For i := 6 To 20 Do Begin GotoXY(5,i); Writeln('3 '); End; GotoXY (5,21); Writeln (' '); TextColor(white); GotoXY(65,5); Write('U'); For i := 6 To 65 Do Begin GotoXY (i,21); Writeln(' `); End; For i := 6 To 20 Do Begin GotoXY(65,i); Writeln('3'); End; GotoXY (65,21); Writeln ('c'); TextColor(yellow); Readln; End. Soal Latihan Buatlah program untuk soal dibawah ini dengan tampilan sebagus mungkin (gunakan perintah Window, Textcolor dll). Jumlah suku sesuai dengan input dari keyboard. 1. Buat deret hitung 3,7,11,15,......................=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 2. Buat deret ukur 3,9,27,................................=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 3. Buat tabel deret bergoyang 1,-2,4,-8,...........=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 4. Buat deret suku harmonis 1,1/2,1/3,.............=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 5. Buat deret fibbonaci 1,1,2,3,5,.....................=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 6. Buat deret seperti berikut 1,-2,3,-4,.............=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 7. Buat deret kuadrat 1, 4, 9,............................=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 8. Buat deret seperti berikut 100, 90, 70 ,...........=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 9. Buat deret seperti berikut 256, 196, 144,............=?

Page 20: Tipe Data Dan Operator

Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 10. Buat deret seperti berikut 1, 1, 1, 2, 2, 3, 6, 4, 24, 5..........=? Program akan berhenti jika pada pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T. 11. Buatlah program untuk mencari faktorial, sesuai dengan input yang diminta. 12. Buatlah program huruf yang berjatuhan sehingga membentuk suatu kalimat yang telah diinput dari keyboard . Percabangan Percabangan 3.1. Operator Percabangan percabangan adalah merupakan operator yang digunakan untuk menentukan pilihan terhadap beberapa pilihan yang ada. Dalam bahasa pemograman Delphi mengenal dua operator per cabangan 3.1.1. Percabangan If merupakan operator percabangan yang digunakan untuk menentukan pilihan atas beberapa kondisi yang merupakan syarat terhadap pilihan yang sudah ditentukan. Ada dua model percabangan if a. Percabangan untuk kondisi pilihan tunggal Merupakan operator percabangan yang digunakan untuk menentukan sebuah pilihan dengan kondisi tunggal Bentuk Umum If Syarat then hasil; Contoh If Nilai > 80 then keterangan = ‘Lulus’; b. Percabangan untuk kondisi majemuk Merupakan operator percabangan yang digunakan untuk menentukan pilihan dengan kondisi yang harus dipeuhi lebih dari satu. Bentuk Umum If Syarat1 then

Page 21: Tipe Data Dan Operator

Hasil1 Else If syarat2 then Hasil2 Else ……………. …………… end; Contoh If nilai > 80 then Grade = “A” Else if nilai > 70 then grade = “B” else if nilai > 60 then grade = “C” else grade = “E’; 3.1.3. Percabangan case case of adalah merupakan metode lain dari sebuah percabangan, berfungsi sama seperti fungsi if yaitu untuk melakukan seleksi atas beberapa pilihan dengan kondisi sebagai syarat yang harus terpenuhi. Secara fungsi scee dan if tidak ada perbedaan tetapi untuk penulisan fungsi case lebih mudah diterapkn untuk pilihan atau kondisi lebih dari satu. Bentuk Umum fungsi Case OF Case of ; hasil1; ; hasil2; ;hasil3; ……………………… ; hasiln; end; atau fungsi case of bisa juga diberikan else untuk piliahn terakhir. Bentuk Umum Case of ; hasil1;

Page 22: Tipe Data Dan Operator

; hasil2; ;hasil3; ……………………… else hasiln; end; Contoh Case Bilangan of 1:showmessage(‘Angka 1’); 2:showmessage(‘Angka 2’); 3:showmessage(‘Angka 3’); end; 3.2. Mengenal Object II (combo box, list box dan radio button) 1 Checkbox Digunakan untuk menentukan pilihan lebih dari satu 2 Radio Button Digunakan untuk menentukan pilhan, tetapi hanya satu pilhan yang bisa digunakan 3 List Box Menmpilkan pilihan dalam bentuk list 4 Combo Box Menampilkan pilihan dalam bentuk popup 3.3. Merancang Program dengan fungsi IF a. Hasil Yang Diperoleh Gambar 3.1 Gambar Perhitungan Gaji Ketentuan Perhitungan Gaji 1. Dalam Struktur organisasi perusahaan ketentuan gaji perusahaan terbagi menjadi 3 struktur utama Jabatan Gaji Pokok Direktur 5000000 Manager 3000000 Karyawan 1000000 2. Besarnya tunjangan ditentukan oleh status kep b. Desian Form

Page 23: Tipe Data Dan Operator

Gambar 3.2. Desain Form Gaji c. Desain Properties Object Name Caption Label 1 Label1 Nama Pegawai Label 2 Label2 Jabatan Label 3 Label3 Gaji Pokok Label 4 Label4 Tunjangan Status Label5 Label5 Gaji Bersih GroupBox GroupBox1 Status RadioButton1 Rtetap Tetap RadioButton2 Rhonorer Honorer Object Name Text Edit1 enama - Edit2 epokok - Edit3 etunjangan - Edit4 ebersih - Combo Box Cjabatan - Object Name Caption Button1 Btotal Total Gaji Button2 Blagi Isi Data Lagi Button3 Bclose Close d. Listing Program

Memberikan pilihan pada combo box sesuai dengan piihan pada jabatan Dengan Menggunakan Object Properties Langkah – langkahnya 1. aktifkan combo box yang akan dipilih 2. pada properties pilih dan klik item, lalu klik command (…) 3. Pada jendela String list Editor, Seperti terlihat pada jendela berikut

Page 24: Tipe Data Dan Operator

Ketikan kata sebagai kata pilihan pada jendela seperti contoh tersebut diatas. 5. Setelah selesai klik OK Melalui jendela code editor Double click pada form, sebarang tempat dan ketikan program berikut ini. procedureTForm1.FormCreate(Sender: TObject); begin cjabatan.Items.Add('Direktur'); cjabatan.Items.Add('Manager'); cjabatan.Items.Add('Karyawan'); end;

Program untuk mencari gaji pokok 1. Aktifkan combo box untuk jabatan 2. Pada pada jendela properties pilih event, 3. pilih dan aktifkan onclick, Seperti yang terlihat seperti gambar berikut ini. 5. Double click pada combo onclick. 6. Ketikan program berikut ini procedure TForm3.cjabatanClick(Sender: TObject); begin if cjabatan.Text = 'Direktur' then epokok.Text := '5000000' else if cjabatan.Text = 'Manager' then epokok.Text := '2000000' else if cjabatan.Text = 'Karyawan' then epokok.Text := '1000000' else epokok.Text := '0' end;

Program menghitung Tunjangan Karyawan Tetap Double click pada option tetap dan ketikan program berikut ini procedure TForm3.etetapClick(Sender: TObject); begin if etetap.Checked = true then a := strtofloat(epokok.Text); hasil :=a*0.3; etunjangan.Text := floattostr(hasil) end;

Program menghitung Tunjangan Karyawan Honorer

Page 25: Tipe Data Dan Operator

Double click pada option honorer dan ketikan program berikut ini procedure TForm3.rhonorerClick(Sender: TObject); begin if rhonorer.Checked = true then a := strtofloat(epokok.Text); hasil :=a*0.1; etunjangan.Text := floattostr(hasil) end;

Program menghitung Gaji Bersih Double click pada command total gaji, dan ketikan program berikut ini : procedure TForm3.btotalClick(Sender: TObject); begin a := strtofloat(epokok.Text); b := strtofloat(etunjangan.Text); c := a+b; ebersih.Text := floattostr(c); end;

Program bersih Double click pada Isi Data Lagi, dan ketikan program berikut ini procedure TForm3.blagiClick(Sender: TObject); begin cjabatan.Text := 'Jabatan'; enama.Text := ''; ebersih.Text := '0'; etunjangan.Text := '0'; epokok.Text := '0'; etetap.Checked := false; rhonorer.Checked := false; end;

Program Close dengan pesan, seperti tampilan sebagai berikut. Gambar 3.3 Form Pesan procedure TForm3.bcloseClick(Sender: TObject); begin if (application.MessageBox('Anda Yakin akan keluar','Informasi',MB_YESNO)= IDYES)then close end;

Page 26: Tipe Data Dan Operator

3.4. Program Biaya Ujian Buatlah program untuk mencari biaya ujian untuk calon siswa pada suatu perguruan tinggi. Tampilan yang diinginkan adalah sebagai berikut Ketentuan Pencarian Biaya 1. Nilai murni didapat dari penjumlahan (nilai Prkatek * 60%) ditambah (Nilai Teori * 40 %). 2. Keterangan = Gagal jika nilai murni <>= 60 3. Biaya perjurusan diperoleh dari dua pilihan jurusan yang ada: 1. jika pilhan MI maka biayanya = 250000 2. jika pilihan TK maka biaya = 300000 4. Pilihan Biaya Waktu Ujian diperoleh dari 2 waktu kuliah yang ada. Jika pilihan pagi maka biaya kuliah = 50000, 1000000 untuk biaya kuliah malam. 5. Total biaya diperoleh dari penjumlahan Semua jurusan ditambah biaya waktu kuliah. 6. Isi data lagi untuk mengulang input data 7. close untuk mentup program. Category: Contoh Penghitungan Gaji Ketentuan Soal : 1. Nama Di input 2. Jabatan di input , Jabatan Gaji Tunjangan Direktur 3000000 10 % dari gaji Manager 2000000 5% dari gaji Karyawan 1000000 2% dari gaji OB 800000 1% dari gaji 3. Dikenakan PPN 10 % dari gaji 4. Gaji Bersih didapat dari : gaji + tunjangan – PPn Jawabannya:

Page 27: Tipe Data Dan Operator

Uses crt; Var nama:string[20];jabatan:string; Gaji:longint; Tunj,ppn,gajibersih:real; Begin Clrscr; Write(‘Nama Karyawan : ‘); readln(nama); Write(‘Masukkan Jabatan : ‘); readln(jabatan); If (jabatan=’Direktur’) or (jabatan=’direktur’) then Begin Gaji:=3000000; Tunj:=0.1* gaji; End Else If (jabatan=’Manager’) or (jabatan=’manager’) then Begin Gaji:=2000000; Tunj:=0.05* gaji; End Else If (jabatan=’Karyawan’) or (jabatan=’karyawan’) then Begin Gaji:=1000000; Tunj:=0.1* gaji; End Else Begin Gaji:=800000; Tunj:=0.1* gaji; End; Writeln(‘Gaji Bersih : Rp.‘,gaji); Writeln(‘Tunjangan Jabatan : Rp.‘,tunj:9:2); Ppn:=0.1*gaji; Writeln(‘PPN 10 % : Rp.‘,ppn:9:2); Total:=(gaji+total)-ppn; Writeln(‘Total Gaji : Rp.‘,total:9:2); Readln; End. Contoh Case Of Pascal Contoh Case …Of perhitungan berat dan harga barang Ketentuan soal : 1. Kualitas Barang di masukkan Kualitas Harga Per Kg A/a 1000 B/b 750 C/c 500

Page 28: Tipe Data Dan Operator

Uses crt; Var Berat,harga,hargaperkg:integer; Kualitas:char; Begin Clrscr; Write(‘ Massukkan Kualitas Buah [A/B/C] : ‘); readln(kualitas); Write(‘ Berapa Kg berat yang di beli : ‘ ); readln(berat); Case kualitas of ‘A’,’a’: hargaperkg:=1000; ‘B’,’b’: hargaperkg:=750; ‘C’,’c’: hargaperkg:=500; Else Begin Hargaperkg:=0; Writeln(‘Salah Input’); End; End; Harga:=hargaperkg*berat; Writeln(‘ Harga Per Kg : Rp.’,hargaperkg); Writeln(‘ Harga Total : Rp.’,harga); End. Belajar Program Operator String 7.1. Menggabungkan String menggabungkan string adalah proses merangkai dua karakter atau lebih menjadi satu kalimat atau kata yang baru. Operator string yang dikenal dalam Bahasa Delphi adalah operator dengan symbol ‘+’. a. Model Penulisan var nama : string[20]; saya : string[15]; namasaya : string[50]; Begin Nama := ‘Nama Saya adalah = ‘; Saya : = ‘Irnawan’; Namasaya : = ‘nama+’ ‘+saya; Ehasil.text : = namasaya; End. b. Contoh Program Hasil yang Diperoleh

Page 29: Tipe Data Dan Operator

Gambar 7.1 Form Penggabungan String Desain Form Gambar 7.2 Desain Form Penggabungan String Desain Properties Object Caption/Text Name Label 1 Nama Depan Label1 Label 2 Nama Tengah Label2 Label 3 Nama Akhir Label3 Label 4 Nama Lengkap Label4 Edit1 - Edepan Edit2 - Etengah Edit3 - Eakhir Edit4 - Egabung Button1 Gabung bgabung Listing Program procedure TForm13.bgabungClick(Sender: TObject); var depan : string[20]; tengah : string[20]; akhir : string[20]; gabung : string[80]; begin depan := edepan.Text ; tengah := etengah.Text; akhir := eakhir.Text; gabung := depan+' '+tengah+' '+akhir; elengkap.Text := gabung; end; 7.2. Menghapus Teks Prosedur standart ini digunakan untuk menghapus atau mengurangi sebagian atau seluruh karakter terhadap string atau teks. Bentuk umum penulisan

Page 30: Tipe Data Dan Operator

Delete(teks, index, jumlah) Delete adalah prosedur standart yang digunakan untuk menghapus teks. Teks merupakan kalimat atau string yang akan dihapau, Index menunjukan posisi awal yang akan dihapus. Jumlah menunjukan jumlah karakter yang akan dihapus. a. Hasil Setelah Form Dijalankan Gambar 7.3 Form Hapus teks b. Desain Form Gambar 7.4 Desain Form Hapus teks c. Desain Properties Object Caption/Text Name Label 1 Nama Anda Label1 Label 2 Ketikan urutan mulai penghapusan Label2 Label 3 Jumlah Karakter yang dihapus Label3 Label 4 Nama Sesudah dihapus Label4 Edit1 - Enama Edit2 - Eurut Edit3 - Ejumlah Edit4 - Ehasil Button1 OK bOK Button2 Close Bclose Group Box 1 Rincian Nama Yang Ingin Dihapus Group box 1 d. Listing Program Program untuk eksekusi perintah penghapusan teks. procedure TForm9.bokClick(Sender: TObject); var karakter:string; pos,jumlah:integer; begin karakter:= enama.Text; pos := strtoint(eurut.Text); jumlah := strtoint(ejumlah.Text);

Page 31: Tipe Data Dan Operator

Delete(karakter,pos,jumlah); ehasil.Text := karakter; end; Program untuk keluar dari form procedure TForm9.bcloseClick(Sender: TObject); begin close; end; 7.3. Mencari Panjang teks (length) fungsi ini digunakan untuk menghitung panjang atau jumlah karakter dari suatu teks atau kalimat. Dalam menghitung jumlah karakter dalam suatu teks spasi akan dibaca sebagai satu karakter. Sebagai catatan hasil yang diperoleh dari perhitungan adalah bilangan bulat positif. Bentuk Umum Length(teks) Contoh a. Hasil setelah form dijalankan Gambar 7.5 Hasil Form Panjang String a. Desain Form Gambar 7.6 Desain Form Panjang String b. Desain properties Object Caption/Text Name Label 1 Operasi Standart Length Label1 Label 2 Nama Anda Label2 Label 3 Panjang Karakter dari Nama Anda Label3 Edit1 - Enama Edit2 - Ehasil Button1 OK bOK Button2 Close Bclose

Page 32: Tipe Data Dan Operator

e. Listing Program Program untuk meneksekusi pencarian panjang karakter procedure TForm8.bokClick(Sender: TObject); var nama:string; begin nama := enama.Text ; ehasil.Text := inttostr(length(nama)); end; Program Untuk menutup Form procedure TForm8.bcloseClick(Sender: TObject); begin close; end; 7.4. Mencari Karakter Pada Teks (POS) Fungsi ini digunakan untuk mencari letak atau posisi dari suatu karakter dari suatu nilai string. Nilai yang dihasilkan adalah berupa byte. Bentuk umum Pos(sustr, string); Contoh a. Hasil setelah dijalankan Gambar 7.7 Hasil Form Pencarian Huruf b. Desain Form Gambar 7.8 Desain Form Pencarian Huruf c. Desain Properties Object Caption/Text Name Label 1 Operasi Standart Pos Label1 Label 2 Kata Awal Label2 Label 3 Huruf yang Dicari Label3 Label4 Huruf tersebut ada diposisi ke ……

Page 33: Tipe Data Dan Operator

Edit1 - eawal Edit2 - ecar Edit3 - ehasil Button1 OK bOK Button2 Close Bclose d. Listing Program Program untuk eksekusi perintah pencarian procedure TForm7.bokClick(Sender: TObject); var karakter : string; kar : string; hasil : integer; begin karakter:= eawal.Text; kar:= ecari.Text; hasil := pos(kar,karakter); ehasil.Text := inttostr(hasil); end; Program Untuk menutup Form procedure TForm7.bcloseClick(Sender: TObject); begin close; end; end. 7.5. Mengkopi String (Copy) Fungsi ini digunakan untuk mencetak ulang string atau karakter sebanyak huruf yang dipilih dengan posisi karakter awal yang sudah ditentukan. Bentuk Umum Copy(teks, index, jumlah); Penulisan awal diawali dengan perintah copy, dengan diikuti teks yang ditunjukan teks. Awal pengcopian ditunjukan dengan index, dan jumlah karakter yang akan di tulis ulang ditunjukan deengan perintah jumlah. Contoh

Page 34: Tipe Data Dan Operator

a. Hasil setelah form dijalankan Gambar 7.9 Hasil Form Copy Teks b. Desain Form Gambar 7.10 Desain Form Copy Teks c. Desain Properties Object Caption/Text Name Label 1 Operasi Copy Teks Label1 Label 2 Kata Awal Label2 Label 3 Hasil Copy 1 Label3 Label4 Hasil Copy 2 Label4 Edit1 - eawal Edit2 - Ehasil1 Edit3 - Ehasil2 Button1 OK bOK Button2 Close Bclose d. Listing Program Program untuk mengeksekusi program procedure TForm6.bokClick(Sender: TObject); var karakter:string; begin karakter := eawal.Text; ehasil1.Text := copy(karakter,5,3); ehasil2.Text := copy(karakter,3,10) end; Program untuk menutup Form procedure TForm6.bcloseClick(Sender: TObject); begin close; end; 7.6. Konversi Karakter ke Ascii (Chr) Fungsi ini digunakan untuk mengkonversi Kode Acsii menjadi nilai karakter atau

Page 35: Tipe Data Dan Operator

huruf. Bentuk Umum Chr(karakter); Contoh a. Hasil setelah dijalankan Gambar 7.11 Hasil Form Konvesi Ascii b. Desain Form Gambar 7.12 Desain Form Konversi ASCII c. Desain properties Object Caption/Text Name Label 1 Ketikan angka dari kode ASCII Label1 Label 2 Karakter dari kode Ascii tersebut adalah Label2 Edit1 - eangka Edit2 - ehuruf Button1 OK bOK Groupbox1 Konversi dari Angka ke huruf Groupbox1 d. Listing Program procedure TForm11.bokClick(Sender: TObject); var angka : integer; begin angka:= strtoint(eangka.Text); ehuruf.Text := chr(angka); end; FUNGSI 5.1 Pengertian Fungsi Pengertian secara umum mengenai fungsi adalah merupakan sebuah penggalan program yang terpisah dari program utama dan berfungsi sebagai sebuah program bagian dari program utama. Penulisan fungsi diawali dengan kata cadangan function dan dideklarasikan dalam bagian deklarasi fungsi. Dan penulisan program fungsi ditempatkan pada program utama. Satu ha yang perlu diperhatikan dalam penulisan fungsi adalah harus diikuti dengan tipe datanya.

Page 36: Tipe Data Dan Operator

Bentuk Umum penulisan Fungsi Fuction indentifier(daftar-parameter) : type; Contoh Function hitung(var a,b : real) :real; Penulisan blok fungsi diawali dengan kata cadangan begin dan diakhiri dengan end;. 5.2. Fungsi Tunggal fungsi tunggal merupakan suatu fungsi dimana proses pemanggilan dirinya sendiri tanpa melalui fungsi yang lain atau fungsi yang tidak terdapat dalam fungsi yang lain. Contoh . a. Hasil yang diinginkan b. Desain Form c. Listing Program Dengan Fungsi function hitung(var a,b : integer): integer; begin hitung := a+b; end; procedure TForm10.bjumlahClick(Sender: TObject); var x,y : integer; c : integer; begin x := strtoint(enil1.Text); y := strtoint(enil2.Text); c:= hitung(x,y); ehasil.Text := inttostr(c); end; Didalam program utama tidak ditempatkan rumus untuk menghitung penjumlahan tetapi ketika dilakukan eksekusi terhadap program dan kita melakukan input nilai 1 dan 2 dan kita klik jumlah maka akan ditampilkan hasil yang diinginkan. Hasil itu diperoleh dari pengiriman nilai dari teks ke nilai pada variabel deprogram utama (x := strtoint(enil1.Text);y := strtoint(enil2.Text);). Selanjutnya nilai pada variabel deprogram utama dikirim ke fungsi hitung untuk mendapat hasil penjumlahan (c:=

Page 37: Tipe Data Dan Operator

hitung(x,y);). 5.3. Fungsi Untuk Memanggil Fungsi yang Lain Merupakan pembuatan program fungsi yang digunakan untuk memanggil program fungsi yang lain didalam satu listing program. Contoh a. Hasil Yang Diinginkan b. Desain Form c. Desain Properties Object Caption/Text Name Label 1 Nama Peminjam Label1 Label 2 Jumlah Uang Pinjam Label2 Label 3 Tingkat Bunga (dalam %) Label3 Label 4 Lama Pinjam Label4 Label5 Besarnya Uang Yang Harus Dikembalikan Label5 Label6 Cicilan Uang Setiap Bulan Label6 GroupBox1 Rincian Nama Anggota Groupbox1 Edit1 - Epeminjam Edit2 - Epinjam Edit3 - Ebunga Edit4 - Elama Edit5 - Ekembalian Edit6 - Ecicil Button1 Total Btotal Button2 Bersih Bbersih Button3 Close Bclose d. Listing Program

Fungsi Perhitungan Bunga function pangkat(x,y : real):real; begin pangkat := exp(ln(x)*y); end; function bunga(e,f,g : real):real;

Page 38: Tipe Data Dan Operator

begin bunga := e*pangkat((1+f/100),g); end;

Program Total procedure TForm15.btotalClick(Sender: TObject); var a,b,c,d,e : real; begin a := strtofloat(ejumlah.Text); b := strtofloat(ebunga.Text); c := strtofloat(elama.Text); d := bunga(a,b,c); ekembalian.Text := floattostr(d); ekembalian.Text := formatfloat('#.###,0',d); e := d/c; ecicil.Text := floattostr(e); ecicil.Text := formatfloat('#.###,0',e); end;

Program Bersih procedure TForm15.bbersihClick(Sender: TObject); begin ejumlah.Text :=''; elama.Text := ''; epeminjam.Text := ''; ebunga.Text := ''; ekembalian.Text :=''; ecicil.Text := ''; end;

Program Menutup Form procedure TForm15.bcloseClick(Sender: TObject); begin close; end; Operator, Deklarasi Dan Tipe Data Operator, Deklarasi Dan Tipe Data 2.1 Deklarasi

Page 39: Tipe Data Dan Operator

Dalam setiap penulisan bahasa pemograman deklarasi sangat digunakan apabila dalam penulisan program dibutuhkan indentifier atau tanda pengenal. Indentifier pada umumnya di buat oleh progremmmer yang digunakan untuk mewakili nilai dari suatu object. Indentifier yang dikenal dalam Delphi adalah label, konstanta, tipe, fungsi, procedure maupun variabel. 2.1.1. Deklarasi Konstanta Deklarasi konstanta adalah tanda pengenal dalam Delphi yang mempunyai nilai yang sudah tetap. Definisi konstanta diawali dengan kata baku Const diikuti dengan kumpulan indentifier yang diberi sebuah nilai. Contoh procedure TForm2.etertulisChange(Sender: TObject); const nil1:='30000'; begin end; 2.1.2. Deklarasi Variabel Deklarasi variabel adalah tanda pengenal dalam Delphi yang mempunyai nilai yang mana nilai tersebut akan terus berubah selama proses berjalan. Definisi variabel diawali dengan kata baku Var diikuti dengan kumpulan identifier yang diikuti dengan tipe data yang dibutuhkan. Contoh procedure TForm2.EpraktekKeyPress(Sender: TObject; var Key: Char); var praktek,nil2,nil1 :real; begin if (key = #13) then begin nil1 := strtofloat(ehtulis.Text); praktek:= strtofloat(epraktek.Text); nil2:= 0.4 * praktek; ehpraktek.Text := floattostr(nil2); form2.ActiveControl := cmi; emurni.Text := floattostr(nil1 + nil2); if nil1 > 60 then egrade.Text := 'Lulus' else egrade.Text := 'Gagal' end;

Page 40: Tipe Data Dan Operator

end; 2.2 Tipe Data Secara sederhana tipe data dapat didefinisikan dengan istilah tempat untuk menentukan pemberian nilai terhadap suatu variabel sesuai atau tidak dengan nilai yang diberikan oleh user. Dalam versi lain tipe data juga diartikan sebagai batasan terhadap fungsi tanda pengenal terhadap semua nilai yang diterima. logika yang dapat kita berikan adalah ketika kita menempatkan tanda pengenal harga hanya mengenal angka, maka ketika kita memberikan nilai berupa string maka secara otomatis data tersebut akan ditolak karena nilai tersebut tidak dikenali oleh tipe data yang diberikan. 2.2.1 Tipe Data Numeric Integer Tipe data integer merupakan tipe data bilangan bulat yang hanya mengenal bilangan decimal. Dimana tipe data Integer tidak mengenal pecahan Bentuk Umum Var Nil1:integer; Begin Nil1:=5000; 2.2.2 Tipe Data Real Tipe data numeric real adalah tipe data dari suatu tanda pengenal selain mengenal bilangan bulat utuh tipe data ini juga mengenal nilai angka yang mengenal pecahan. Bentuk Umum Var Nil:real; Begin Nil1:=20,5; 2.2.3 Tipe Data String Tipe data string merupakan salah satu jens tipe data selain mengenal angak disini tipe data dapat juga mengenla data berupa huruf maupun tanda baca. Bentuk umum Var Nama:string; Begin Nama:=’Anton’; 2.2.4 Tipe Data Char

Page 41: Tipe Data Dan Operator

Secara fungsi tipe data char sama dengan tipe data string tetapi dari segi kapsitas ruang diperoleh tipe data char jauh lebih sedikit karena hanya mengenal 1 karakter. 2.3. Dasar umum merancang Program aplikasi berbasis visual a. Merancang tampilan program (user interface) hal ini meliputi = Form dan toolbox b. Desain properties. Hal ini digunakan untuk merubah tampilan icon yang asli toolbox agar sesuai dengan tampilan yang tampilan yang diinginkan. c. Jendela Code Editor , digunakan sebagai media komunikasi antar object pada form dengan system yang ada. 2.4. Mengenal Komponen label, edit & Button Label Hanya untuk menampilkan Teks Edit Untuk menampilkan dan input data (1 baris) Button Digunakan untuk melakukan eksekusi terhadap suatu proses 2.5. Mengenal Operator Delphi mengenal banyak operator, sama seperti bahasa pemograman yang lain, operator menjadi satu hal penting yang harus ada untuk perancangan program. 2.5.1. Operator Penugasan (assignment Operator) Symbol operator digunakan untuk melakukan suatu proses atas suatu nilai dengan memberikan nilai baru pada suatu variabel Lambang operator Penugasan “ := “ Bentuk Umum penulisan Var := perintah; Contoh = A:=”B”; Label1.caption := “Irnawan” C:= A + B; 2.5.2. Operator Aritmatika Operator aritmatika berfungsi untuk melakukan suatu proses aritmatika yang meliputi perkalian, pembagian, penjumlahn, pengurangan maupun pengurangan terhdap suatu nilai variabel yang tersimpan dalam suatu object, dengan memberikan nilai baru.

Page 42: Tipe Data Dan Operator

Symbol yang dikenal dalam delphi Symbol Keterangan + Penjumlahan - Pengurangan * Perkalian / Pembagian Div Pembagian Integer Mod Sisa Pembagian Contoh B := 15 + 2; hasil B = 17 B := 15 div 2 B = 7 B := 15/2 B = 7,5 B := 15 * 2 B = 30 B := 15 mod 2 B = 1 2.5.3. Operator String Digunakan untuk menggabungkan dua teks/string atau lebih. Symbol yang digunakan = + Contoh = Bentuk Umum A := teks1 + teks2 Contoh A : = “Aku”; B := “Bisa”; C := A + B; Hasil C = Aku Bisa 2.5.4. Merancang Aplikasi Dengan Delphi a. Hasil ketika form dijalankan Gambar 2.1 Form Operator b. Desain Form Gambar 2.2 Desain Form Operator c. Desain Properties

Page 43: Tipe Data Dan Operator

Object Name Caption Label 1 Label 1 Program pengenalan dasar operator Delphi Label 2 Label 2 Nilai Praktek I Label 3 Label3 Nilai Praktek II Label 4 Label4 Nilai Perhitungan Label5 Label5 Hasil Label6 Label6 Hasil Label7 Label7 Hasil Label8 Label8 Hasil Object Name Text Edit1 Nil1 - Edit2 Nil2 - Edit3 Ehtambah - Edit4 ehkali - Edit5 Ehbagi - Edit6 ehkurang - Object Name Caption Button1 Btambah Tambah Button2 Bkali Kali Button3 Bbagi Bagi Button4 Bkurang Kurang Button5 Bclose Close d. Listing Program Catatan = Dalam bahasa pemograman Delphi semua data yang diinput melalui edit box dideklarasikan dengan tipe data string, sehingga ketika kita akan melakukan proses perkalian atau pengurangan kita tidak bisa mengalikan secara langsung edit box yang dimaksud tetap kita perlu merubah menjadi nilai dengan tipe data yang dapat dikalikan. 1. Program Tambah Digunakan untuk menampilkan hasil penjumlahan antara nilai praktek 1 dengan nilai praktek II, cara double klik pada buton tambah dan tuliskan kode berikut ini = procedureTForm2.BtambahClick(Sender: TObject); var nil1, nil2 : real; tambah: real; begin nil1 := strtofloat(enil1.text); nil2 := strtofloat(enil2.text);

Page 44: Tipe Data Dan Operator

tambah := nil1 + nil2; ehtambah.text := floattostr(tambah); end; Catatan Var Nil1,nil2 : real; Tambah ; real; Var digunakan untuk mendeklarasikan suatu nama varibael yag dibuat oleh programmer yang berfungsi untuk menyimpan nilai atau data selama proses program berjalan. Nil1,nil2 dan tambah adalah nama variabel baru yang dibentuk oleh progrmmer Real adalah nama dari sekeian banyak tipe data yang dikenal dalam bahasa peograman Delphi. Cakupan tipe data real adalah membaca bilangan angka dalam bentuk decimal. Strtofloat adalah fungsi yang digunakan merubah nilai dari tipe data string menjadi tipe data numeric. Floattostr adalah fungsi yang digunakan merubah nilai pecahan menjadi data string. 2. Program untuk kali procedure TForm2.BkaliClick(Sender: TObject); var bil1,bil2:real; kali : real; begin bil1 := strtofloat(enil1.text); bil2 := strtofloat(enil2.text); kali := bil1*bil2; ehkali.text := floattostr(kali); {ehkali.text := inttostr(strtoint(enil1.text) * strtoint(enil2.text));} end; 3 Program untuk bagi procedureTForm2.BbagiClick(Sender: TObject); var bil1,bil2 : real; bagi : real; begin

Page 45: Tipe Data Dan Operator

bil1 := strtofloat(enil1.Text); bil2 := strtofloat(enil2.Text); bagi := bil1/bil2; ehbagi.Text := floattostr(bagi); end; 4. Program untuk kurang procedureTForm2.BkurangClick(Sender: TObject); var bil1,bil2,kurang : real; begin bil1 := strtofloat(enil1.Text); bil2 := strtofloat(enil2.Text); kurang := bil1 - bil2; ekurang.Text := floattostr(kurang); end; 5. Program untuk keluar procedureTForm2.bcloseClick(Sender: TObject); begin messageDlg('Ingin Menutup form',mterror, [mbok],0); close; end; Catatan Messagedlg adalah penggalan program yang digunakan untuk menampilkan kotak pesan. Close digunakan untuk menutup form. 2.5.5. Latihan Program Pembayaran a. Form setelah dijalankan Gambar 2.3 Gambar Toko b. Ketentuan yang diinginkan pemilik toko 1. Nama barang, harga barang dan jumlah merupakan media input bagi user mengenai detail nama barang, harga barang serta jumlah yang dibeli. 2. Bayar digunakan untuk menampilkan perkalian dari jumlah yang dibeli dengan harga barang, dengan cara mengklik hitung. 3. Untuk menutup form user tinggal mengklik exit, dengan menampilkan pesan untuk user.

Page 46: Tipe Data Dan Operator

Catatan : 1. Untuk Menambah Form Baru pilih dan klik icon New Form 2. Untuk Mengaktifkan Form Yang Pernah Dibuat adalah pilih dan klik View Form , pada jendela View Form pilih form yang ingin diaktifkan dan klik OK 3. Untuk Menjalankan Form yang diinginkan dari beberapa form yang telah dibuat adalah dengan cara pilh Project| option. Pada combo Project Option, pilih dan klik form yang diingikan dengan mengaktifkan Combo Main form. Setelah selesai klik OK. 4. Untuk menyimpan semua project pilih dan klik Save All. Beberapa Statemen Turbo Pascal Statemen adalah perintah untuk pengerjaan program pascal. Statemen terletak di bagian deklarasi statemen dengan diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen diakhiri dengan titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang telah disediakan sebagai perintah standar Turbo Pascal. 1. Statemen-statemen yang digunakan untuk input/output. # Read/Readln [prosedur]. Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke dalam suatu variabel. Sintaks: Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;]) Keterangan : x = variabel. Read = pada statemen ini posisi kursor tidak pindah ke baris selanjutnya. Readln = pada statemen ini posisi kursor akan pindah ke baris selanjutnya setelah di input. # ReadKey [fungsi]. Untuk pembacaan sebuah karakter dari keyboard. Tipe data yang dihasilkan adalah char. Sintaks: ReadKey; # Write/Writeln [prosedur]. Digunakan untuk menampilkan isi dari suatu nilai variable dilayar. Sintaks: Write/Writeln(x); Keterangan : x = variabel. Write/Writeln= statement ini digunakan untuk mencetak variable ke dalam monitor Contoh : Program input; Uses Crt; Var nm : String; npm : String; Begin Clrscr; Writeln ('masukkan nama dan NPM '); Writeln ('------------------------------'); Write ('nama anda : ');

Page 47: Tipe Data Dan Operator

Readln (nm); Writeln ('NPM anda : '); Readln (npm); End. Bila dijalankan hasilnya adalah: masukkan nama dan NPM ------------------------------ nama anda : ( di input ) NPM anda : ( di input ) 2. Statemen-statemen yang digunakan untuk pengaturan letak layar. # ClrScr [prosedur]. Perintah ini digunakan untuk membersihkan layar. sintaks: ClrScr; [Clear screen] # GotoXY[prosedur]. Untuk menempatkan posisi kursor pada layar. Sintaks: GotoXY(X, Y: Byte); Keterangan : X = sumbu X (posisi horisontal) Y = sumbu Y (posisi vertikal) # DelLine [prosedur]. Untuk menghapus sebuah baris pada posisi kursor dan menaikkan baris-baris dibawahnya. Sintaks: DelLine; # InsLine [prosedur]. Untuk menyisipkan sebuah baris pada posisi kursor dan menggeser kebawah tampilan-tampilan baris dibawahnya. Sintaks: InsLine; # Delay [prosedur]. Untuk menghentikan sejenak proses program. Sintaks: Delay (MS: Word); Keterangan : variable MS = ukuran waktu dalam milisecond. Contoh : Program Layar; Uses Crt; Var x : Char; Begin ClrScr; GotoXY(35,10);Writeln (‘I Love Dinda'); Write (tunggu sebentar...!!'); Delay (5000); InsLine; GotoXY (35,11);Writeln ('Bayi sehatku'); GotoXY(01,13);Writeln ('Tekan Enter !'); Delay(1000); GotoXY(15,12); DelLine; Read(x); End.

Page 48: Tipe Data Dan Operator

Hasilnya adalah : I Love Dinda Bayi sehatku tunggu sebentar...!! Tekan Enter ! 3. Statemen yang digunakan untuk memanipulasi string. # ConCat[fungsi]. Untuk menggabungkan 2 atau beberapa variabel string. Sintaks: ConCat (s1 [,s2,...,sn]: String) : String; contoh: ConCat ('ABC','DEF') { ABCDEF } # Copy [fungsi]. Mengambil satu atau beberapa karakter dari sebuah string. Sintaks: Copy (S,Index,Count) : String; Keterangan : S = sebuah string (string). Index = posisi awal kita akan mengambil beberapa karakter (integer) Count = banyaknya karakter yang akan diambil (integer). # Delete [prosedur]. Menghapus sebagian karakter dari sebuah string. Sintaks: Delete (S,Index,Count); Keterangan : sama dengan statemen Copy. # Insert [prosedur]. Menyisipkan satu atau beberapa karakter ke dalam sebuah string. Sintaks: Insert (Source,var S,Index); Keterangan : Source = sumber string untuk disisipi (string) var S = string tujuan yang akan disisipi oleh string Source (string) Index = posisi mulai (integer). # Length [fungsi]. Memberikan nilai panjang dari suatu string (jumlah karakter dalam string). Sintaks: Length (S); Keterangan : S = string Length(S) menghasilkan nilai integer. # Pos [fungsi]. Mencari posisi sebuah bagian string (substring) didalam sebuah string. Sintaks: Pos (Substr,S); {menghasilkan nilai Byte} Keterangan : Substr = substring yang akan dicari posisinya didalam sebuah string S. Bila bernilai 0 berarti nilai string yang dicari tidak ada. # Str [prosedur]. Merubah nilai numerik ke dalam nilai string. Sintaks: Str (N,S); Keterangan : N = data tipe integer, S = data tipe string. # Val [prosedur]. Merubah nilai string ke dalam nilai numerik.

Page 49: Tipe Data Dan Operator

Sintaks: Val (S,N,P); Keterangan : S = nilai string, N = nilai real, P = posisi salah. Nilai string harus berisi angka, plus atau minus, bila tidak berarti kesalahan dan letak kesalahannya ditunjukkan oleh variabel posisi salah. Jika benar, maka nilai variabel tsb = 0 (nol). # UpCase [fungsi]. Memberikan huruf kapital dari argumen. Sintaks: UpCase (S); Keterangan : S = variabel bertipe karakter. Contoh : Program Man_String; Uses Crt; Var s : String; l : Integer; h : String; Const a='Dinda'; b='Bayi '; c='Sehatku'; Begin ClrScr; s:= ConCat (a,b,c); Writeln (s); Insert (' & ',s,6); Writeln(s); Delete (s,7,7); Writeln (s); h:=Copy (s,1,5); Writeln (h); l:= Length(s); Writeln ('Panjangnya string S : ',l); Writeln ('Posisi "Sehat" pada nilai S : ',POS('Sehat',s)); END. Hasilnya adalah : DindaBayiSehatku Dinda & Bayi Sehatku Dinda Sehatku Dinda Panjangnya string S : 16 Posisi "Sehat" pada nilai S : 7 4. Statemen-statemen untuk perhitungan aritmatik. # Abs [fungsi]. Memberikan nilai mutlak dari suatu argumen. Sintaks: ABS(x);

Page 50: Tipe Data Dan Operator

# ArcTan[fungsi]. Memberikan nilai dari fungsi arctangent dari perhitungan goniometri. Sintaks: ArcTan (x); ‘dimana x dapat bertipe real atau integer dan akan menghasilkan nilai bertipe real.’ # Cos [fungsi]. Memberikan nilai dari fungsi Cosinus. Sintaks: Cos (x); # Exp [fungsi]. Menghitung nilai pangkat dari bilangan e (bilangan alam),yaitu sebesar x. Sintaks: Exp (x); ‘x dapat bertipe real atau integer dan akan menghasilkan nilai bertipe real. ‘ # Frac [fungsi]. Untuk mendapatkan nilai pecahan dari suatu bilangan. Sintaks: Frac (x); ‘Tipe dari x sama seperti yang diatas. ‘ # Int [fungsi]. Memberikan nilai integer (bilangan bulat) dari suatu variabel dengan membuang bilangan di belakang koma. Sintaks: Int (X); # Ln [fungsi]. Digunakan untuk menghitung nilai logaritma alam (natural logarithm) dari nilai x. Sintaks: Ln (x); # Sin [fungsi]. Memberikan nilai dari fungsi Sinus. Sintaks: Sin (x); # Sqr [fungsi]. Digunakan untuk menghitung nilai pangkat kuadrat dari suatu bilangan. Sintaks: Sqr (x); Tipe dari x bisa berupa real maupun integer. Dan hasilnya akan sama dengan tipe dari x. # Sqrt (fungsi). Digunakan untuk menghitung nilai akar dari suatu bilangan. Sintaks: Sqrt (x); Contoh : Program Aritmatik; Uses Crt; Var x : Real; Begin Clrscr; Write('Masukkan nilai dari X = '); Readln (x); If x <0 x =" ',x:5:2);" eksponentialnya =" ',EXP(x):9:3);" alamnya =" ',LN(x):9:3);" integernya =" ',INT(x):5:2);" fraksionalnya =" ',FRAC(x):5:2);" dipangkatkan =" ',SQRT(x):9:3);" diakarkan =" ',SQRT(x):9:3);" sinus =" ',Sin(x):9:3);" cosinus =" ',Cos(x):9:3);" tangen =" ',ArcTan(x):9:3);" x =" -2.5" x =" 2.50" eksponensialnya ="

Page 51: Tipe Data Dan Operator

12,182" alamnya =" 0,196" integernya =" 2.00" fraksionalnya =" 0.50" dipangkatkan =" 6.250" diakarkan =" 1.581" sinus =" 0.598" cosinus =" -0.801" tangen =" 1.190"> 0,5 maka dibulatkan keatas. contoh : Writeln('10/3 dibulatkan = ',Round(10/3)); hasilnya : 10/3 dibulatkan = 3 # TRUNC [fungsi]. Membulatkan kebawah data tipe real ke data tipe longint. Sintaks: Trunc (x); contoh : Writeln('20/3 dibulatkan kebawah = ',Trunc (20/3)); hasilnya : 20/3 dibulatkan kebawah = 6 6. Statemen-statemen untuk memanipulasi data. # Pred [fungsi]. Memberikan nilai sebelum nilai argumen dalam urutannya dalam ASCII. Sintaks: Pred (x); # Succ [fungsi]. Memberikan nilai sesudah nilai argumen dalam urutannya dalam ASCII. Sintaks: Succ (x); # Inc[fungsi]. Menambah (increments) nilai suatu variabel. Sintaks: Inc (x,i); {i >= 1} # Dec [fungsi]. Mengurangi (decrements) nilai suatu variabel. Sintaks: DEC(x,i); {i >=1} Contoh : Progam Man_Data; Uses Crt; Type hari = (hr0,hr1,hr2,hr3,hr4,hr5,hr6,hr7) Var urutanhr : hari; Const namahr : Array [hr1..hr7] of String [6]=('Senin','Selasa','Rabu','Kamis','Jumat','Sabtu','Minggu'); Begin Writeln('Daftar Nama Hari); urutanhr := hr0; While Urutanhr < hr7 DO Begin urutanhr := Succ(urutanhr); Write('hari ke ',Ord(Urutanhr):2,' adalah '); Writeln(namahr[urutanhr]); End; End. hasilnya adalah :

Page 52: Tipe Data Dan Operator

Daftar Nama Hari hari ke 1 adalah Senin hari ke 2 adalah Selasa hari ke 3 adalah Rabu hari ke 4 adalah Kamis hari ke 5 adalah Jumat hari ke 6 adalah Sabtu hari ke 7 adalah Minggu 7. Statemen-statemen tambahan (warna,suara dan window). # TextColor [prosedur]. Untuk mengatur warna dari karakter-karakter di layar. Sintaks: TextColor (color : Byte); Catatan : untuk pilihan warna lihat pada buku Turbo Pascal yang anda miliki. Daftar TextColor : (2) Hijau Muda (3)Hijau pupus (4)Merah (5)Ungu Tua (6) Kuning (7)Putih (8)Biru Tua (9)Biru Cerah (10)Hijau Muda (12)Merah Muda (13)Ungu Cerah (14)Kuning Muda (15) Ungu Pupus (16)Hitam Daftar TextColor dengan Blink : (17)Biru Tua (18)Hijau Muda (19)Hijau Pupus (20)Merah (21)Ungu Tua # TextBackGround [prosedur]. Untuk mengatur warna latar belakang dari karakter-karakter dilayar. Sintaks: TextBackGround (Color : Byte); # Window [prosedur]. Untuk membuat suatu jendela (window) yang terletak pada layar. Sintaks: Window (x1,x2,y1,y2 : Byte); x1,x2 = kordinat kiri atas dengan nilai maksimal sesuai dengan mode layar. y1,y2 = kordinat kanan bawah dengan nilai maksimal sesuai dengan mode layar. # TextMode [prosedur]. Untuk mengatur lebar layar, 80 kolom atau 40 kolom. Sintaks: TextMode(Mode: Byte); Default = C80 # Sound [prosedur]. Untuk mengaktifkan suara (beep) pada internal speaker. Sintaks: Sound (Hz : word); Untuk mengnonaktifkannya, gunakan statemen NoSound. Contoh : Program Layar2; Uses Crt; Begin ClrScr; Window (5,5,20,75);

Page 53: Tipe Data Dan Operator

TextBackGround(Red); ‘anda juga bisa menggunakan angka (4) TextColor(Yellow); Sound (220); GotoXY(10,7); Writeln('I Love Dinda'); GotoXY(11,7); Writeln('Bayi Sehatku'); NoSound; End. Sebagai Latihan dari teori-teori yang sudah anda pelajari diatas, coba anda kerjakan soal-soal dibawah ini . Soal Latihan 1. Soal I Buatlah program dibawah ini dengan tampilan menggunakan perintah Window, TextColor, Blink TextColor, Textbackground, GotoXY, dan Sound untuk memperindah tampilan. 1. Mengubah derajat temperatur, dari derajat Celcius ke derajat Fahreinheit dan Reamur (derajat Celcius diinput) 2. Menghitung Luas dan Keliling lingkaran, dengan jari-jari diketahui (diinput). 3. Menghitung Luas dan Keliling segitiga sembarang yang diketahui ke tiga sisinya. 4. Mencari nilai Sinus, Cosinus, dan Tangen dengan sudut diinput. 5. Mencari akar dan kuadrat dari suatu nilai (nilai diinput). 6. Mencari nilai bulat dan pecahan dari suatu nilai yang dimasukkan melalui keyboard (diinput). Nilai pecahan tersebut dibulatkan sampai 3 angka dibelakang koma (,). 7. Tampilkan nama dan NPM anda di dalam window, dan terletak pada tengah-tengah layar. 8. Tampilkan tulisan 'I Love Dinda’ di dalam window pada pojok kanan atas dengan ukuran window sama dengan tulisan tersebut. 2. Soal II Buatlah program pada soal jenis I (no. 1-6) dengan tampilan menggunakan 2 window. Window yang pertama digunakan untuk nilai yang diinput. Window yang kedua untuk hasil dari program (output). 3. Soal III 1. Buatlah program untuk menggabungkan 2 buah kata yang diinput. Setiap kata yang diinput harus berada didalam window yang dan hasilnya berada pada window yang berbeda pula. 2. Buatlah program untuk menampilkan window secara acak dengan warna yang berbeda.