Kamis, 14 Oktober 2010

TIPE DATA DAN STRUKTUR DATA


Latar Belakang
Pembuatan artikel ini bertujuan untuk menerangkan tentang tipe-tipe organisasi serta strukturnya dalam mata kuliah teori organisasi umum.
Pembahasan
1.      Tipe data
2.      Struktur data
Di setiap bahasa pemrograman telah disediakan berbagai tipe data dan sebagai programer dipersilakan untuk memilihnya. Tentu saja kita akan memilih tipe data yang sesuai dengan karakteristik data yang akan kita olah.

Pada intinya simbol-simbol yang digunakan di komputer terdiri atas huruf, angka, dan tanda baca lainnya. Simbol-simbol tersebut merupakan elemen dari data dan memiliki tipe data. Umumnya tipe data terdiri atas karakter, teks atau string, dan numerik.Namun sesuai dengan kebutuhan pengguna yang terus bertambah, maka tipe data terus berkembang. Banyak bahasa pemrograman menambahkan tipe data dengan boolean (logical), binary, float, date, memo dan sebagainya.

a. Tipe Data Numerik
Besar angka yang bisa diterima komputer sangat tergantung dengan jumlah bit (N) prosesor komputernya. Umumnya batasan angka yang bisa diterima adalah –(2^(N-1)) sampai dengan 2^(N-1)-1. Untuk komputer 32 bit batasannya adalah -2.147.483.648 sampai dengan 2.147.483.647.

Untuk menampung nilai data ke variabel dalam suatu bahasa pemrograman tertentu, maka kita harus memahami fasilitas apa saja (statements dan jenis variabelnya) yang disediakan oleh bahasa pemrograman yang kita gunakan. Juga kita perhatikan fasilitas operasi untuk tipe data numeriknya, misalnya apakah ada MOD, DIV, AVERAGE, MAX, MIN dan sebagainya.

Adapun jenis numerik (bilangan) yang biasa digunakan terdiri atas :

- bilangan kompleks
- bilangan real
- bilangan rasional
- bilangan irasional
- bilangan bulat
- dan sebagainya

Bilangan real adalah bilangan yang menggunakan nilai pecahan. Bilangan bulat adalah bilangan tanpa pecahan (integer), baik positif maupun negatif. Di luar bilangan-bilangan itu ada juga yang merupakan bagian dari bilangan-bilangan di atas seperti bilangan prima, bilangan cacah, bilangan ganjil, bilangan genap, dan lain-lain.

Untuk keperluan penempatan berapa banyak jumlah digit yang bisa digunakan oleh bilangan-bilangan di dalam variabel dapat menggunakan variabel berpresisi tunggal maupun berpresisi ganda. Misalnya di suatu bahasa pemrograman, untuk bilangan integer single precision (presisi tunggal) disediakan panjang 8 digit, dan untuk double precision (presisi ganda) disediakan panjang 16 digit. Untuk bilangan real sigle precision disediakan 16 digit, dan untuk real double disediakan 32 digit.


Operasi terhadap tipe data numerik sama halnya melakukan perhitungan matematis. Ada penjumlahan, pengurangan, perkalian, perpangkatan, dan sebagainya. Berikut macam-macam operasi (operator) yang ada sesuai urutan pengerjaannya :
^ : perpangkatan
* : perkalian
/ : pembagian
+ : penjumlahan
- : pengurangan
Urutan pengerjaan akan berubah jika terdapat tanda kurung. Tanda kurung menjadi prioritas utama yang dikerjakan.
Contoh :
2 ^ 3 * 4 – 6 / 2 + 5 = ((2 ^ 3 )* 4) – (6 / 2) + 5
= (8 * 4) – (3) + 5
= 32 – 3 + 5
= 34

2 ^ 3 * (4 – 6) / 2 + 5 = (2 ^ 3 )* ((4 – 6) / 2) + 5
= 8 * (-2) / 2 + 5
= -16 / 2 + 5
= -8 + 5
= -3
Ada pula operasi tambahan yang biasanya disediakan bahasa pemrograman, seperti :

http://1.bp.blogspot.com/__wKSIY9nq2Q/SyILVBYMAUI/AAAAAAAAAZ8/Tm2KlhKogiM/s320/New+Picture+%2824%29.jpg

Kondisi (disebut juga dengan operator relasional) yang biasa mengikutinya adalah :
= sama dengan
> lebih besar dari
<> tidak sama dengan
>= lebih besar atau sama dengan
<= lebih kecil atau sama dengan

b. Tipe Data Logika Operator logikal (boolean) biasa digunakan untuk melakukan pengecekan suatu kondisi suatu program. Kondisi yang dicek bisa berhubungan dengan variabel numerik maupun variabel string.

Nilai data dari variabel boolean adalah kondisi benar atau salah (true or false). Operator logika dasar terdiri atas AND, OR dan NOT.

1. AND AND adalah operasi yang melakukan pengecekan atas 2 kondisi atau variabel yang ada. Jika kedua kondisi bernilai true, maka hasil operasi AND adalah true, selain itu false. Berikut tabelnya : Kondisi (Variabel 1) | Kondisi (Variabel 2) | AND True (terpenuhi) | True (terpenuhi) |True True (terpenuhi) | False (tidak terpenuhi) | False False (tidak terpenuhi) | True (terpenuhi) | False False (tidak terpenuhi) | False (tidak terpenuhi) | False 2. OR OR adalah operasi yang melakukan pengecekan atas

2 kondisi atau variabel yang ada. Jika salah satu kondisi bernilai true, maka hasil operasi OR adalah true, selain itu false. Berikut tabelnya : Kondisi (Variabel 1) | Kondisi (Variabel 2) | OR True (terpenuhi) | True (terpenuhi) | True True (terpenuhi) | False (tidak terpenuhi) | True False (tidak terpenuhi) | True (terpenuhi) | True False (tidak terpenuhi) | False (tidak terpenuhi) | False

3. NOT NOT adalah operasi yang melakukan pengecekan atas 1 kondisi atau variabel yang ada. Jika kondisi bernilai true, maka hasil operasi NOT adalah false, dan sebaliknya. Berikut tabelnya : Kondisi (variabel) | NOT True (terpenuhi) | False False (tidak terpenuhi) | True Tipe data logikal adalah variabel atau record yang bernilai logikal (true atau false). Operasi AND, OR dan NOT dapat digabung-gabungkan untuk mendapatkan suatu kondisi yang diinginkan.

c. Tipe Data String String merupakan salah satu tipe data di komputer, dan merupakan kumpulan dari karakter. Nilai data string tentunya harus ditampung di variabel atau field yang berjenis string pula. String umumnya digunakan untuk menyimpan data yang tidak perlu diproses secara matematis, namun banyak pula orang yang lebih suka menyimpan data numerik ke dalam tipe data string.

Umumnya bahasa pemrograman menyediakan fasilitas untuk mengubah nilai data numerik yang disimpan dalam tipe data string menjadi tipe data numerik. Sehingga nilai data tersebut dapat diproses secara matematis kembali. Nomor Pokok Mahasiswa (NRP) adalah sebuah contoh yang nilai datanya merupakan kode-kode yang dapat dijabarkan.

Misalnya NRP = ‘5198100084’. Nilai tersebut dapat dijabarkan menjadi : karakter pertama menunjukkan fakultas, karakter kedua menunjukkan jurusan, karakter ketiga dan keempat menunjukkan tahun masuk dan sebagainya. Penjabaran kode seperti di atas lebih sulit dilakukan jika menggunakan tipe data numerik.

Bagian dari string disebut dengan substring, seperti pada contoh NRP di atas, tahun masuk (karakter ketiga dan keempat) merupakan substring dari NRP. Macam-macam operasi string adalah: pemenggalan, penggabungan, pencarian posisi, perhitungan banyak karakter, dan kombinasi dari semua operasi.
Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien atau struktur data adalah cara penyimpanan, penyusunan dan pengaturan data di dalam media penyimpanan komputer sehingga data tersebut dapat digunakan secara efisien.
Dalam teknik pemrograman, struktur data berarti tata letak data yang berisi kolom-kolom data, baik itu kolom yang tampak oleh pengguna (user) atau pun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak tampak oleh pengguna. Setiap baris dari kumpulan kolom-kolom tersebut dinamakan catatan (record). Lebar kolom untuk data dapat berubah dan bervariasi. Ada kolom yang lebarnya berubah secara dinamis sesuai masukan dari pengguna, dan juga ada kolom yang lebarnya tetap. Dengan sifatnya ini, sebuah struktur data dapat diterapkan untuk pengolahan database (misalnya untuk keperluan data keuangan) atau untuk pengolah kata (word processor) yang kolomnya berubah secara dinamis. Contoh struktur data dapat dilihat pada berkas-berkas lembar-sebar (spreadsheet), pangkal-data (database), pengolahan kata, citra yang dipampat (dikompres), juga pemampatan berkas dengan teknik tertentu yang memanfaatkan struktur data.
http://id.wikipedia.org/wiki/Struktur_data