Dalam setiap bahasa pemrograman, kita pasti selalu berhubungan dengan perubah / variabel yang berfungsi untuk menampung data di dalam memori. Pada bahasa Pascal setiap perubah yang hendak digunakan harus sudah didefinisikan tipe datanya. Sebagai akibat dari pendefinisian tipe data dari setiap perubah, maka :
1. menentukan batasan nilai perubah tersebut sesuai dengan tipe data yang dipilih.
2. menentukan pula jenis operasi yang dapat dilaksanakan oleh variabel tersebut.
Tipe data yang dipergunakan dalam bahsa Pascal versi 5.5 dapat digambarkan di dalam gambar berikut :
Gambar 3.1 Tipe Data dalam Turbo Pascal
Di dalam bab ini, hanya akan dibahas tipe sederhana dan tipe string, sedangkan tipe terstruktur dan pointer akan dibahas di dalam bab-bab selanjutnya. Disebut tipe sederhana atau skalar karena suatu variabel yang termasuk dalam tipe ini hanya dapat menyimpan satu nilai data saja. Tipe ordinal adalah tipe data yang nilainya dapat disusun menjadi suatu deret bilangan dari kecil ke besar sehingga setiap nilai mempunyai pendahulu (predecessor) yang pasti kecuali nilai pertama dan juga mempunyai pengikut (successor) yang pasti kecuali nilai terakhir. Yang char, subjangkauan dan tipe terbilang.
Contoh 3.1
Tipe contoh pendahulu
PRED ( )
pengikut
SUCC ( )
Integer
boolean
char
subjangkauan
terbilang
5
true
‘D’
7 dalam 1 .. 10
menit dalam
(jam, menit, detik)
4
false
‘C’
6
jam
6
false
‘E’
8
detik
Dalam tipe ordinal, pendahulu nilai pertama dan pengikut nilai terakhir tidak didefinisikan. Tipe real tidak termasuk dalam tipe ordinal sebab bilangan real tidak mempunyai pendahulu dan pengikut yang pasti.
1 Tipe Integer
Integer (bilangan bulat) merupakan tipe data angka yang tidak mengandung titik desimal. Ada lima macam data yang termasuk dalam tipe integer, yaitu :
macam Batas nilai
shortint
integer
longint
byte
word
- 128 … 127
- 32768 … 32767
- 21474 … 2147483647
0 … 255
0 … 65535
Operasi yang dapat berlaku untuk tipe data ini :
Operator Arti
+
-
*
div
mod
penjumlahan
pengurangan
perkalian
pembagian
sisa pembagian
Contoh 3.2
3 + 6 = 9
11 – 7 = 4
10 div 4 = 2 (bukan 2.5 sebab ini bilangan integer)
20 mod 6 = 2 sebab 20 : 6 = 3 sisa 2
2 Tipe Real
Berkebalikan dengan tipe integer, tipe real merupakan bilangan yang mengandung pecahan atau titik desimal. Tipe real dapat dinyatakan dengan dua notasi yaitu dengan notasi titik desimal biasa (contoh 0,00256) atau dengan notasi eksponensial (contoh 2.567E-3). Ada lima macam data tipe real yaitu :
macam batas nilai
real
single
double
extended
comp
2,9×10^-34 … 1,7×10^38
1,5×10^-45 … 3,4×10^38
5,0×10^-324 … 1,7×10^308
3,4×10^-4932 … 1,1×10^4932
-263+1 … 2^63-1
Operasi yang dapat berlaku untuk tipe real yaitu operator +,-,* sama seperti tipe integer serta operator / untuk pembagian real. Bedakan dengan pembagian integer.
Contoh 3.3
4.0 + 12.3 = 16.3
7.5 – 2.5 = 5.0
3.0 * 4.5 = 13.5
10.0 / 2.0 = 4.5
3 Tipe Boolean
Nilai boolean hanya berhubungan dengan dua keadaan nilai, yaitu true (jika logikanya benar) dan false (jika logikanya salah). Sebagai contoh, misalkan Tono hendak ikut ujian UMPTN maka langkah yang harus dipenuhinya adalah :
a. beli formulir
bernilai true jika Tono sudah membeli formulir, bernilai false jika belum membeli.
b. mengembalikan formulir
bernilai true jika Tono sudah mengembalikan dan false jika belum.
c. ikut tes UMPTN
bernilai true jika ikut tes dan false jika tidak ikut.
Variabel yang bertipe Boolean hanya dapat memiliki salah satu dari nilai logis atau false. Nilai boolean semacam ini biasanya diperoleh dari hasil perbandingan.
Contoh 3.4
4 = 6 adalah false
30 20 adalah true
11< 9 adalah false
Selain keenam operator relasional biasa ( =, , =, ), ada 4 operator boolean yang dapat dipergunakan yaitu AND, OR, NOT dan OR. Empat macam operator boolean ini didefinisikan dengan tabel kebenaran seperti yang terlihat di dalam bagan 6 ini ;
A B A AND B A OR B A XOR B NOT A
F
F
T
T F
T
F
T
F
F
F
T F
T
T
T F
T
T
F T
T
F
F
Gambar 3.2 Tabel kebenaran Operasi Boolean
Catatan :
Nilai T melambangkan TRUE, nilai F melambangkan FALSE
Dari bagan di atas kita dapat menarik kesimpulan sebagai berikut :
1. A AND B bernilai TRUE jika dan hanya jika A dan B keduanya mempunyai nilai TRUE.
2. A OR B bernilai TRUE jika A atau B atau kedua-duanya mempunyai nilai TRUE.
3. A XOR B bernilai TRUE jika hanya salah A atau B bernilai TRUE.
4. Operator NOT akan memberikan nilai kebalikan dari nilai semula
4 Tipe Char
Char atau huruf merupakan satu simbol dari himpunan karakter-karakter ASCII (American Standard Code for International Interchange). Jadi meliputi karakter huruf (A .. Z, a .. z), karakter angka (0 . . 9) atau karakter khusus (misal ., &, S, ! dll). Secara internal dalam sistem komputer, setiap karakter di dalam papan ketik diwakili oleh suatu kode numeris dalam bentuk kombinasi dari angka 0 dan 1 (kode biner). Secara umum, untuk setiap karakter disimbolkan dengan 8 bit biner (atau 1 byte). Contoh dalam bentuk tabel berikut merupakan simbol untuk karakter ‘A’, ‘B’ dan ‘C’ yaitu dalam bentuk angka desimal, biner, enambelas (heksadesimal) dan kode ASCII, yaitu :
Desimal Biner Heksadesimal ASCII
65
66
67
0100 0001
0100 0010
0100 0011
41
42
43
A
B
C
Dengan demikian, jika dua karakter dibandingkan maka sebenarnya yang dibandingkan adalah kode-kode numeris tersebut. Kaidah ini berlaku untuk semua karakter, jadi :
‘A’ < ‘B’ < ‘C’ < . . . . < ‘Z’ < . . . . . < ‘a’ < ‘b’ < . . . . < ‘z’
Di samping operator operasional, ada 4 macam fungsi standard yang dapat digunakan pemrograman untuk operasi tipe data jenis ini yaitu :
ORD ( C ) , yaitu fungsi Ordinal yang akan menghasilkan nilai desimal/ordinal suatu karakter.
Contoh ORD(‘A’) = 65
CHR ( I ) , yaitu fungsi char yang akan menghasilkan char dari suatu bilangan integer.
Contoh CHR(103) = ’g’
PRED ( C ) , yaitu fungsi predeccessor yang akan menghasilkan pendahulu dari suatu karakter.
Contoh PRED (‘H’) = ‘G’
SUCC ( C ) , yaitu fungsi successor yang akan menghasilkan pengikut dari suatu karakter.
Contoh SUCC (‘4’) = ‘5’
5 Tipe terbilang /enumerasi
Tipe data terbilang (enumerated data type) adalah suatu tipe data yang didefinisikan oleh pemrogram yang berisi sekumpulan urutan identifier atau nilai yang dipisahkan oleh tanda koma dan dibatasi oleh tanda kurung.
Contoh 3.5
TYPE warna = (biru, hijau, kuning, merah, putih)
pilihan = (1A, 2A, 3A, 4A, 00)
Dari contoh diatas, warna dan pilihan merupakan tipe data terbilang dengan warna berisi nilai identifier biru, hijau, kuning, merah dan putih; sedangkan pilihan berisi angka 1, 2, 3, 4 dan 0. Sehingga, variabel warna dapat berisi salah satu dari biru, kuning, hijau dst, sedang variabel pilihan dapat bernilai 1, 2, 3 dst. Perlu diperhatikan bahwa dalam tipe terbilang, urutan data sangat menentukan sehingga untuk warna berlaku :
biru hijau
dan berlaku pula fungsi PRED dan SUCC seperti :
PRED (merah) = kuning
PRED (biru) = tidak didefinisikan
SUCC (4A) = 00
SUCC (00) = tidak definisikan
6. Tipe Subjangkauan
Seringkali terjadi suatu variabel mempunyai nilai yang terbatas dalam suatu jangkauan nilai. Sebagai contoh suhu dalam derajat Celcius mempunyai jangkauan nilai dari 1 sampai dengan 100, atau misalnya nilai huruf dalam suatu ujian semesteran mempunyai jangkauan dari nilai A sampai dengan E. Tipe subjangkauan merupakan tipe data yang nilanya bervariasi dan batasan nilai dispesifikasikan oleh pemrogram dengan mencentumkan nilai awal sampai dengan (disimbolkan dengan tanda . . ) nilai akhir.
Contoh 3.6
TYPE Hari = (Senin, Selasa, Rabu, Kamis, Jumat, Sabtu)
Harikerja = Senin . . Kamis
bulan = 1 . . 12;
Nilaihuruf = ‘A’ . . ‘Z’ ;
SuhuCelcius = 1 . . 100 ;
Catatan : tentang bentuk deklarasi type seperti contoh pertama diatas akan dibahas di dalam deklarasi type pada sub bab berikut.
7 Tipe String
Data tipe string atau kalimat adalah data yang berisi sederetan karakter (lebih dari satu) yang mempunyai panjang yang berubah sesuai dengan panjang karakter yang dimasukkan. Jika tipe ini tidak dinyatakan panjang karakternya maka tipe string tersebut dianggap mempunyai panjang 255 karakter.
Contoh 3.7
VAR kalimat, kata, hari, NoPol : string ;
kalimat : = ‘SEKOLAH TINGGI KEUANGAN PERBANKAN’
kata : = ‘debet’
hari : = ‘SENIN’
NoPol : = ‘AB’
Dan untuk Kesimpulannya sekaligus contohnya yaitu :
1. Identifier (Pengenal)
Pengenal adalah suatu nama yang biasa dipakai dalam pemrograman untuk menyatakan variabel, konstanta, tipe data, dan fungsi.
Aturan untuk penulisan identifier sama dengan aturan dalam pascal, antara lain:
- Tidak boleh dimulai dengan karakter non huruf
- Tidak boleh ada spasi
Pengenal adalah suatu nama yang biasa dipakai dalam pemrograman untuk menyatakan variabel, konstanta, tipe data, dan fungsi.
Aturan untuk penulisan identifier sama dengan aturan dalam pascal, antara lain:
- Tidak boleh dimulai dengan karakter non huruf
- Tidak boleh ada spasi
- Tidak boleh menggunakan karakter-karakter ~ ! @ # $ % ^ & * ( ) + ` - = { } [ ] : " ; ' < > ? , . / |
- Tidak boleh menggunakan reserved words yang ada dalam C++.
2. Tipe Data
Berikut ini tipe data yang ada dalam C++
Tipe data bilangan bulat:
- char
- int (integer)
- short (short integer)
- long (long integer)
Tipe data bilangan real:
- float (real)
- double (real double)
- long double
Selain itu terdapat juga tipe data unsigned
Tipe data bilangan bulat:
- unsigned char
- unsigned int (integer)
- unsigned short (short integer)
- unsigned long (long integer)
Tipe data unsigned mirip dengan yang bukan unsigned. Bedanya adalah tipe data unsigned tidak mengenal bilangan negatif (nilainya selalu posisif).
3. Deklarasi Variabel
Seperti halnya Pascal, variabel yang digunakan dalam program harus dideklarasikan terlebih dahulu. Pengertian deklarasi di sini yaitu mengenalkan variabel ke program dan menentukan tipe datanya. Berikut ini contoh pendeklarasian variabel:
int jumlah;
float harga_satuan, variabel1;
char saya, kamu;
4. Assignment
Proses assignment adalah proses pemberian nilai kepada suatu variabel yang telah dideklarasikan.
Berikut adalah contoh assignment:
Jumlah = 10;
Harga_satuan = 23.456;
Saya = ‘B’;
Kamu = ‘2’;
Berikut ini contoh program yang menggambarkan deklarasi variabel dan assignment.
#include
#include
void main()
{
int var1, var2, var3;
char karakter;
var1 = 10;
var2 = 5;
var3 = var1 + var2;
karakter = ‘D’;
cout << “Nilai var3 = ” << karakter =" ”" real =" 182.2182713674821746;" real =" " nama_konstanta =" value;" phi =" 3.141592;">
#include
#include
void main()
{
const float phi = 3.141592;
float jari_jari, keliling, luas;
jari_jari = 7.2;
luas = phi * jari_jari * jari_jari;
keliling = 2 * phi * jari_jari;
cout <<>
Tidak ada komentar:
Posting Komentar