(III) Tipe Data, Variable, & Operator
(III) Tipe Data, Variable, & Operator
A. TIPE DATA
Delphi merupakan bahasa pemrograman tingkat tinggi yang mendukung
perancangan terstruktur dan berorientasi Object. Bahasa pemrograman ini
berdasarkan Object pascal yang keuntungannya antara lain kodenya mudah dibaca,
cepat dikompilasi dan mengunakan file unit yang banyak untuk pemrograman
mudular.Penulisannya tidak case sensitive. Berikut dijelaskan struktur dasar bahasa
pemrograman Delphi.
2. Struktur Proyek
Pada suatu projek yang akan dibangun, terdapat sebuah file program utama yang
berisi kode program untuk pengelolaan unit-unit. Kode program utama ini biasanya
juga disebut kode projek dan disimpan dalam file berektensi. DPR.
3. Struktur Unit
Sebuah Unit berisi tipe-tipe, konstanta-konstanta, variabel, dan rutin (fungsi dan
prosedur). Setiap unit didefinisikan dalam file .Pas
Sebuah unit dimulai dengan unit heading, yang diikuti dengan bagian interface,
implementation, initialization, dan finalization. Bagian initialization, dan finalization
bersifat opsional, boleh memiliki deklarasi atau tidak menyertakan, tergantung
kebutuhan.
4. Sintaks Dasar
Dalam suatu kode program unit atau projek, elemen sintaksis dasar (yang disebut
token) bergabung , membentuk ekspresi, deklarasi, statemen.
Statemen adalah aksi algoritma yang dieksekusi di dalam program.
Ekspresi adalah satuan sintaksis yang ada di dalam statemen dan menunjukkan
sebuah nilai.
Deklarasi adalah sebuah pengenal/identifier ( Contoh nama fungsi, variabel) yang
digunakan dalam ekspresi dan statemen.
Beberapa hal tentang pertimbangan penggunaan tipe data dapat Anda simak
dalam penjelasan berikut ini.
a. Penggunaan memory dan rentang data
Ada perbedaan pengalokasian atau pemakaian memory untuk satu tipe data
dengan tipe data lainnya. Tentu saja yang paling baik adalah sebisa mungkin
menggunakan tipe data yang menggunakan memory paling kecil. Misalnya jika
Anda memproses data nilai yang mempunyai range (rentang) 0 sampai 100
tanpa desimal (pecahan), maka yang paling tepat adalah menggunakan tipe
data Byte (perlu memory 1 byte), dibandingkan kalau Anda menggunakan tipe
data Word (2 byte) atau Integer (4 byte). Akan tetapi, tentu saja, jika bilangan
yang diproses melebihi range tipe Byte, atau mempunyai bilangan desimal
(pecahan), Anda tidak boleh menggunakan tipe Byte.
b. Ketelitian perhitungan
Meskipun penghematan memory penting, tetapi kebenaran hasil perhitungan
jauh lebih penting. Oleh karena itu, jika ketelitian perhitungan (presisi) paling
tinggi. Sebagai contoh tipe data Double mempunyai ketelitian yang lebih baik
dibandingkan tipe Single, tetapi menggunakan memory lebih besar.
Borland Delphi 7.0 mempunyai tipe data yang dibagi dalam tujuh kelompok
dasar, yaitu integer, real, boolean, character, string, pointer, dan variant . Berikut ini
adalah penjelasan mengenai tipe-tipe data tersebut:
a. Tipe Integer
Tipe Integer fundamental terdiri atas Shortint, Smallint, Longint, Int64, Byte,
Word, dan Longword. Tabel 2.1 memperlihatkan range dan format penyimpanan
masing-masing tipe data tersebut.
c. Tipe Boolean
Terdapat empat tipe data Boolean yaitu Boolean, ByteBool, WordBool, dan
LongBool. Sebuah variabel Boolean menempati satu byte memori, variabel
ByteBool juga menempati satu byte, variabel WordBool menempati dua byte (satu
word), dan variabel LongBool menempati empat byte (dua word). Nilai Boolean
ditunjukkan dengan true dan false. Tipe ordinal terdiri atas tipe integer, character,
boolean, enumerated, and subrange types. Tipe ordinal mempunyai sifat terurut.
d. Tipe Character
e. Tipe String
Tipe string merepresentasikan rangkaian karakter. AnsiString, yang
seringkali disebut dengan long string, adalah tipe yang dipilih untuk sebagian
besar pemakaian. Tipe string dapat dicampur pada penerapan nilai dan ekspresi.
Kompiler ini secara otomatis membentuk konversi yang diperlukan. Tetapi string
yang dilewatkan by reference pada fungsi atau prosedur haruslah tipe yang
sesuai. String dapat berlaku secara eksplisit menjadi tipe string yang berbeda.
Delphi mendukung tipe string yang didefinisikan seperti pada Tabel 2.4 .
f. Tipe Pointer
Pointer adalah sebuah variabel yang menunjukkan sebuah alamat memori.
Ketika sebuah pointer berisi alamat variabel lainnya, dapat dikatakan ia menunjuk
ke lokasi variabel tersebut di memori atau ke data yang disimpan di sana. Dalam
kasus sebuah array atau tipe terstruktur lainnya, pointer berisi alamat elemen
pertama dalam struktur tersebut. Jika alamat tadi telah diambil, maka pointer
tersebut mengandung alamat elemen pertama tersebut.
Pointer dipakai untuk mengindikasikan jenis data yang disimpan pada
alamat yang dikandungnya. Penggunaan umum tipe pointer dapat
merepresentasikan sembarang data, meskipun lebih banyak tipe pointer
dikhususkan untuk mengacu pada tipe data tertentu. Pointer menempati empat
byte memori.
g. Tipe Variant
Kadang-kadang diperlukan memanipulasi data yang tipenya berubah-ubah
atau tidak dapat ditentukan pada saat kompilasi. Dalam kasus demikian, satu
pilihannya adalah dengan menggunakan variabel dan parameter bertipe variant,
yang menyatakan nilai yang bisa berubah saat runtime.
Variant menawarkan fleksibilitas lebih tetapi membutuhkan memori yang
lebih besar dibanding variabel biasa, juga operasi menggunakannya menjadi lebih
lambat. Secara default, variant dapat berisi semua tipe data, kecuali record, set,
array statik, file, class, class reference, dan pointer. Dengan kata lain, variant
dapat berisi sembarang tipe data yang bukan tipe data terstruktur dan pointer.
B. Variabel
1. Nama Variabel
Secara umum, nama variabel atau identifier dibagi dalam dua kategori,
yaitu lokal dan global. Variabel atau identifier yang mempunyai ruang lingkup
yang sempit, terutama ruang lingkup function dan procedure, disebut lokal dan
yang mempunyai ruang lingkup yang luas, misalnya ruang lingkup unit, disebut
global.
C. OPERATOR
Dalam melaksanakan proses pengolahan data, Delphi menyediakan berbagai
operator dengan hirarki atau urutan proses pelaksanaan yang berbeda untuk
beberapa operator yang dilibatkan dalam suatu proses. Berikut ini hirarki operator
yang dimiliki Delphi.
Urutan Operator
1 @, not
*, /, div, mod, and, shl, shr,
2
as
3 +, -, or, xor
4 =, <,>, <=, >=, <>, in, is
a. Operator Pemberian
Operator pemberian (assignment) adalah operator yang dituliskan dengan notasi “:=”
(titik dua sama dengan) dan berfungsi untuk memasukkan atau memberikan suatu
nilai atau data ke dalam sebuah variabel, dengan sintaks sebagai berikut :
Nama_Variabel := Ekspresi ;
Contoh :
Harga : = 100;
Jumlah : = 20;
HTotal : = Harga * Jumlah ;
b. Operator Aritmatika
Berikut ini adalah operator aritmatika yang dapat digunakan untuk mengerjakan
proses operasi aritmatika.
Contoh :
Angka1 : = 15 * 2; {Hasil 30}
Angka2 : = 18 / 2; {Hasil 9}
Angka3 : = 5 + 2; {Hasil 7}
Angka4 : = 5 – 2; {Hasil 3}
Angka5 : = 10 Div 3; {Hasil 3}
Angka6 : = 10 mod 3; {Hasil 1}
Ab = exp ( b * Ln (A))
Contoh :
Angka1 : = 5;
Angka2 : = 2;
Hasil1 : = exp (Angka1 * Ln (Angka2)); {Hasil 32 dari 25}
Hasil2 : = exp (Angka2 * Ln (Angka1)); {Hasil 25 dari 52}
c. Operator Relasi
Operator relasi berfungsi untuk membandingkan suatu nilai (ekspresi) dengan nilai
(ekspresi) yang lain dan menghasilkan suatu nilai logika (boolean) yaitu True atau
False. Kedua nilai yang dibandingkan harus memiliki tipe data yang sama. Berikut ini
adalah operator relasi yang disediakan oleh Delphi.
Tipe Hasil
Operator Operasi
Proses
= Sama dengan Boolean
<> Tidak sama dengan Boolean
< Lebih kecil Boolean
> Lebih besar Boolean
Lebih kecil atau sama
<= Boolean
dengan
Lebih besar atau sama
>= Boolean
dengan
d. Operator Logika
Operator logika dibagi menjadi dua kelompok : Operator bit dan operator boolean.
Operator bit berhubungan dengan pergeseran atau pembandingan pada level bit.
Operator boolean digunakan untuk menyatakan satu atau lebih data atau ekspresi
logika yang akan menghasilkan nilai logika (boolean) yang baru True atau False.
Operator boolean selalu memberikan hasil true atau false, sedangkan operasi bit
melakukan operasi bit per bit pada nilai tipe integer.
Operator Boolean :
Contoh :
X : = (21 > 9) And (19 < 71); {Hasil X = True}
X : = (21 < 9) And (19 < 71); {Hasil X = False}
X : = (21 > 9) And (19 > 71); {Hasil X = False}
Operator logika Or akan menghasilkan nilai True jika salah satu dari seluruh ekspresi
yang menggunakan operator Or bernilai True. Operator Or hanya akan bernilai False
jika semua ekspresi yang menggunakan operator Or bernilai False.
Contoh :
X : = (21 > 9) Or (19 < 71); {Hasil X = True}
X : = (21 < 9) Or (19 < 71); {Hasil X = True}
X : = (21 < 9) Or (19 > 71); {Hasil X = False}
Operator logika Not merupakan operator yang menyatakan kondisi kebalikan dari
suatu ekspresi.
Contoh :
X : = Not (21 > 9) {Hasil X = False}
X : = Not (21 < 9) {Hasil X = True}
X : = Not (21 = 9) {Hasil X = True}
Operator logika Xor akan menghasilkan nilai True jika ekspresi yang terletak di kiri
operator Xor berbeda dengan ekspresi sebelah kanannya. Operator Xor hampir
memiliki fungsi yang sama dengan operator tidak sama dengan.
Contoh :