TIPE DATA
Pada umumnya, program
komputer memanipulasi objek (data) didalam memori. Peubah (variabel) dan
konstanta (constant) adalah objek data dasar yang dimanipulasi didalam program.
Deklarasi daftar peubah digunakan untuk menyatakan tipe peubah . Operator mengspesifikasikan
operasi apa yang dapat dilakukan terhadap peubah dan konstanta. Ekspresi
mengkombinasikan peubah-peubah dan konstanta untuk menghasilkan nilai baru.
Tipe data dapat dikelompokkan menjadi dua macam :
1. Tipe
Dasar
Tipe
dasar adalah tipe yang dapat langsung dipakai. Yang termasuk tipe dasar adalah
bilangan lojik, bilangan bulat, karakter, bilangan riil, dan string. Untuk
bilangan lojik dan bilangan bulat disebut juga tipe ordinal karena setiap
konstanta nilainya dapat ditransformasikan ke suatu nilai integer.
Ø Bilangan
Lojik
·
Nama tipe bilangan ini adalah Boolean
·
Ranah nilai boolean adalah true dan false
·
Operator yang digunakan not, and, or, dan
xor
a
|
b
|
AND
|
OR
|
NOT
|
XOR
|
T
|
T
|
T
|
T
|
F
|
F
|
T
|
F
|
F
|
T
|
F
|
T
|
F
|
T
|
F
|
T
|
T
|
T
|
F
|
F
|
F
|
F
|
T
|
F
|
Ø Bilangan
Bulat
·
Nama tipe Integer
·
Ranah Nilai. Secara teoritis bilangan bulat
tidak mempunyai batasan untuk nilai. Tetapi pada dunia pemograman, ranah nilai
bilangan bulat mempunyai batasan. Hal tersebut dimaksudkan untuk penghematan
alokasi memori. Berikut rentang nilai pada Pascal dan C Pascal Rentang Nilai C
Setiap bilangan bulat mempunyai keturunan, atau dengan kata lain
sebuah bilangan bulat mempunyai nilai sembarangan (predecessor) dan nilai
sesudahnya (succesor). Misalnya : Nilai 8 memiliki predecessor 7 dan successor
9.
Konstanta untuk bilangan bulat tidak boleh mengandung titik
desimal
• Operasi :
1. Operasi Aritmatika, yaitu
+ (tambah)
- (kurang)
* (kali)
div (bagi) (dengan hasil bilangan bulat tanpa titik desimal)
mod (sisa hasil bagi)
ket : Objek yang di operasikan disebut operand. Misalnya : a + b
artinya a dan b merupakan operand sedangkan + adalah operator
2. Operasi perbandingan. Hasil operasi perbandingan akan
menghasilkan nilai boolean (true dan false)
< (lebih
kecil)
≤ (lebih kecil
atau sama dengan)
> (lebih
besar)
≥ (lebih besar
atau sama dengan)
= (Sama dengan)
≠ (Tidak sama
dengan)
Ø
BILANGAN REAL
Bilangan riil adalah bilangan yang
mengandung pecahan desimal, misalnya 3.65, 0.0003, 29.0, 2.60240000E-6, .24 ,
dll. Semua konstanta bilangan riil harus mengandung titik (desimal). Misalnya
“18” dianggap sebagai bilangan bulat, tetapi “18.0” dianggap sebagai bilangan
riil. Untuk bilangan riil yang ditulis dengan notasi E berarti perpangkatan
sepuluh. Contoh : 2.60240000E-6 artinya 2.60240000×10-6.
·
Nama tipe bilangan riil adalah real.
·
Ranah nilai bilangan riil sama dengan bilangan
bulat, tetapi penerapan pada bahasa pemograman berbeda. Untuk bahasa PASCAL,
Sementara, dalam bahasa C, hanya ada 2 tipe untuk
bilanganriil yaitu float dan double. Float adalah bilangan riil berpresisi
tunggal (single-precision), Double adalah bilangan riil berpresisi ganda
(double-precision). Sementara untuk long double mengspesifikasikan tipe
bilangan riil yang berpresisi-extended
·
Operasi pada bilangan riil ada 2 macam, yaitu :
1.
Operasi Aritmetika
+ (tambah)
- (kurang)
* (kali)
/ (bagi)
Ket : Jika dilakukan operasi campuran dengan salah
satunya operandnya bertipe bilangan riil sedangkan operandnya yang lain
bilangan bulat, maka otomatis operand yang bilangan bulat akan otomatis di
konversi ke bilangan riil.
2.
Operasi Perbandingan
< (lebih
kecil)
≤ (lebih kecil
atau sama dengan)
> (lebih
besar)
≥ (lebih besar
atau sama dengan)
≠ (Tidak sama
dengan)
Ket : Pada bilangan riil tidak dikenal operasi sama
dengan “=”. Karena bilangan riil tidak dapat disajikan secara tepat oleh
komputer. Misalnya 1/3 tidak sama dengan 0.33333, sebab 1/3 = 0.3333333….
(dengan angka 3 yang tidak pernah berhenti)
Ø
Karakter
Yang termasuk karakter adalah semua
huruf-huruf abjad, semua tanda baca, angka ‘0’, ‘1’, … , ‘9’. Dan
karakter-karakter khusus seperti ‘&’, ‘^’, ‘%’, ‘#’, ‘@’, dll. Karakter
kosong (null) adalah karakter yang panjangnya nol dan dilambangkan ‘ ‘.
·
Nama tipe untuk karakter adalah char
·
Ranah nilai untuk karakter adalah semua huruf di
dalam alfabet (‘a’, … ‘z’, ‘A’ … ‘Z’) angka desimal (0 … 9), tanda baca (‘.’,
‘:’, ‘!’, ‘?’, ‘,’, dll), operator aritmetik (‘+’, ‘-‘, ‘*’, ‘/’), dan
karakter-karakter khusus seperti (‘$’, ‘#’, ‘@’, ‘^’, ‘~’, dll). Daftar
karakter baku yang lengkap dapat dilihat di dalam buku-buku yang memuat tabel
ASCII.
·
Konstanta karakter harus diapit oleh tanda petik
tunggal. Ket: ingatlah bahwa ‘9’ adalah karakter, tetapi 9 adalah integer.
·
Untuk operasi yang dilakukan hanya operasi
perbandingan yaitu :
= (sama
dengan)
≠
(tidak sama dengan)
>
(lebih besar)
≥
(lebih besar atau sama dengan)
<
(lebih kecil)
≤
(lebih kecil atau sama dengan)
Ket. Tipe karakter juga mempunyai keterurutan
(successor dan predecessor) yang ditentukan oleh cara pengkodeannya didalam
komputer, misalnya pengkodean ASCII. Operasi perbandingan menghasilkan nilai
boolean.
Ø
String
String adalah untaian karakter dengan panjang tertentu.
·
Nama tipe string adalah string
·
Ranah nilai tipe string adalah deretan karakter
yang telah didefenisikan pada ranah karakter.
·
Konstanta pada tipe string harus diapit oleh dua
buah tanda petik tunggal.
Contoh :
‘Makassar’
‘boby’
‘Abc1234’
‘*…*…#008*’
‘B’
Untuk string kosong (null)
dilambangkan dengan ‘ ’.
·
Operasi pada tipe string didefinisikan 2 macam :
a.
Operasi Penyambungan (concatenation)
Operasi “+”. Operator ini bukanlah operator
penjumlahan seperti pada tipe real/integer tetapi operator penyambungan. Contoh
:
‘Boby’ + ‘Hermez’ = ‘Boby Hermez’
b.
Operator
perbandingan
Sama halnya tipe karakter akan menghasilkan nilai
boolean.
=, ≠, <, ≤, >, ≥
2. Tipe
Bentukan
Tipe bentukan adalah tipe yang didefenisikan sendiri oleh pemogram (user
defined type data). Tipe bentukan di susun oleh satu atau lebih tipe dasar. Ada
2 macam tipe bentukan :
Ø
Tipe dasar yang diberi dengan nama tipe baru
Tipe dasar yang diberi nama tipe
baru (user defined type data). Penamaan tipe baru disebabkan oleh kemungkinan
untuk memudahkan interpretasi dan pembacaan program oleh pemogram.
Kita dapat memberi nama baru untuk tipe dasar tersebut
dengan kata kunci type. Untuk Nilai, Ranah nilai, konstanta, dan
operasi-operasi tipe tersebut tidak berubah dan sesuai dengan tipe dasar
aslinya, misalnya : type bilangan bulat / integer.
Ket. Bilangan sama saya dengan tipe integer. Jadi,
misalkan variabel i bertipe bilangan bulat, sama saja jika i bertipe integer.
Contoh :
DEKLARASI
i = integer
Sama Saja
DEKLARASI
Type bilangan_bulat : integer
i = bilangan_bulat
Ø
Tipe Terstruktur.
Tipe terstruktur adalah tipe yang
berbentuk rekaman (record). Rekaman (record) disusun oleh satu atau lebih
field. Tiap field menyimpan data dari tipe dasar tertentu atau dari tipe
bentukan lain yang sudah didefinisikan sebelumnya. Nama rekaman ditentukan
sendiri oleh pemogram.
OPERATOR
Operator adalah
simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai data .
Ø Operator
Aritmatika
Digunakan untuk mengoperasikan data-data numerik,
seperti penjumlahan, pengurangan, perkalian, pembagian, dll. Dalam proses
aritmatika tersebut, pengerjaan operasi tergantung dari tingkat valensi
operator-operator yang terlibat. Perpangkatan memiliki valensi tertinggi,
kemudian dilanjutkan dengan perkalian, pembagian, pembagian bulat dan sisa
pembagian, sedangkan penjumlahan dan pengurangan mempunyai valensi yang
terendah.
^
: Pangkat
*
: Perkalian
/
: Pembagian real
\
: Pembagian integer
+
: Penjumlahan
-
: Pengurangan
Ø Operator
Relasi
Digunakan untuk mewakili
sebuah nilai logika (nilai boolean), dari suatu persamaan atau nilai.
Operator-operator
yang terlibat adalah :
=
: sama dengan
>
: lebih besar
<
: lebih kecil
<>
: tidak sama dengan
>=
: lebih besar atau sama dengan
<=
: kurang atau sama dengan
Ø Operator Boolean
Operator yang menyatakan suatu
kondisi tertentu.
Macam
dari operator boolean ini adalah:
1.
OR --> Prinsip kerja aliran listrik Paralel
2.
AND --> Prinsip kerja aliran listrik Seri
Ø precendence:
·
menentukan urutan operasi dari operator-operator dalam
ekspresi majemuk.
·
operator dgn tingkat hirarki lebih tinggi akan diproses
terlebih dahulu.
Ø Asosiatif:
·
urutan operasi jika operatornya setara.
Ø Operator logika:
·
True:jika tipe integer
bernilai tidak nol(#0)
·
False jika tipe integer bernilai nol(0)
Ø LAMBANG-LAMBANG:
Perioritas
|
Operator
|
Keterangan
|
I
|
()
|
Tanda kurung
|
II
|
++ --
|
Increment, Decrement
|
III
|
*
/ %
|
Kali, bagi dan sisa
|
IV
|
+
-
|
Tambah dan kurang
|
V
|
=
+= -= *=
/= %=
|
Operator pemberi nilai aritmatika
|
VI
|
!
|
|
VII
|
< >
<= >=
|
Operator relasional
|
VIII
|
&& ||
|
Operator logika DAN dan ATAU
|
EKSPRESI
Ekspresi adalah transformasi nilai menjadi keluaran
yang dilakukan melalui suatu perhitungan (komputasi). Ekspresi terdiri atas
operand dan operator, contoh ekspresi: “a + b”.Hasil Evaluasi dari sebuah
Ekpresi adalah nilai yang sesuai dengan type operand yang dipakai
MACAM – MACAM EKPRESI
Ø Ekspresi aritmatika
Ekspresi yang baik operand-nya bertipe numerik dan hasilnya
juga bertipe numerik.
·
Ekspresi
aritmatika memakai operator aritmatika.
Pada ekspresi aritmetik terdapat 2 buah operator yaitu :
·
Operator biner, yaitu ekspresi yang operatornya membutuhkan 2
buah operand. Contoh a + b
·
Operator Uner, yaitu “-” atau operator yang punya 1 operand
contoh “-2”
Contoh 2. (Penulisan ekspresi
dengan notasi algoritma)
T = 5/9 * (c + 32)
Z = (2*x + y) / (5 * w)
Y = 5((a+b) / (c*d) + m (p +
q))
Ø Ekspresi Perbandingan/
Relasional
Ekspresi relasional adalah ekspresi dengan operator <, ≤,
>, ≥, =, dan ≠, not, and, or dan xor dengan menghasilkan nilai bertipe
boolean (true atau false). Biasanya ekspresi Relasional disebut ekspresi
boolean.
Ø Ekspresi Logika (Menggunakan
Operator Boolean)
sebuah perintah yang akan mengeksekusi suatu perintah apabila
kondisi tertentu terpenuhi.
Operator boolean digunakan untuk menghubungkan dua buah
ekspresi logika. Pada kesempatan ini operator boolean yang akan dibahas adalah
AND dan OR.
Operator AND digunakan untuk
menghubungkan dua buah ekspresi logika dan hasilnya TRUE jika kedua ekspresi
tersebut bernilai TRUE.
Logika I
|
Operator
Boolean
|
Lgika II
|
Hasil Akhir
|
FALSE
|
FALSE
|
FALSE
|
|
FALSE
|
AND
|
TRUE
|
FALSE
|
TRUE
|
FALSE
|
FALSE
|
|
TRUE
|
TRUE
|
TRUE
|
Operator
OR dipergunakan untuk menghubungkan dua buah ekspresi logika dan hasilnya
bernilai TRUE jika minimal salah satu ekspresi logika bernilai TRUE.
Logika I
|
Operator
Boolean
|
Lgika II
|
Hasil Akhir
|
FALSE
|
FALSE
|
FALSE
|
|
FALSE
|
OR
|
TRUE
|
TRUE
|
TRUE
|
FALSE
|
TRUE
|
|
TRUE
|
TRUE
|
TRUE
|
|
Contoh01
1. Program
PenerimaanPegawai;
2. Uses
Crt;
3. Var
Umur : Integer;
4. Ket :
String;
5. Begin
6. ClrScr;
7. Write(‘Umur
calon pegawai : ‘); Readln(Umur);
8. If
(Umur >= 20) AND (Umur <= 30) THEN Ket:=’DITERIMA’
9. ELSE
Ket:=’DITOLAK’;
10. Writeln(‘Status
pegawai : ‘,Ket);
11. End.