Universitas Gunadarma

Universitas Gunadarma

Sabtu, 27 Februari 2010

Array (Larik) dan Record



1. Pengertian

Salah satu Stuktur data yang teramat penting adalah Array atau larik. Array merupakan bagian dasar yang disebut dengan Blok, guna keperluan pembentukan suatu struktur dara yang lebih kompleks. Array merupakan suatu himpunan hingga elemen, terurut dan homogen.

1.1 Array Dimensi Satu

Sebuah Array berdimensi satu, yang kita misalkan dengan nama Nilai, seperti gambar berikut :

NILAI (1)

NILAI(2)

--------

NILAI(N)

Subskrips atau indeks dari elemen Array menyatakan posisi elemen pada urutan dalam array tersebut. Secara umum, suatu array dimensi satu A dengan tipe Data T dan subskrip bergerak dari L sampai dengan U, ditulis sebagai A(L:U) = A(I)), I =L, L+1, L+2,…., U dan setiap elemen A(I) bertipe Data T. Harga minimum dari subskrip dari Array disebut batas bawah atau lower bound, sedangkan harga maksimumnya disebut batas atas atau upper bound.


1.2 Array Dimensi Banyak

Sebuah Array dimensi banyak atau multi-dimensional Array didefinisikan sebagai sebuah Array yang elemennya berupa Array juga. Misalnya Array A mempunyai M elemen yang berupa Array yang terdiri dari N elemen. Jika diganbarkan akan berbentuk baris dan kolom, seperti berikut

1 2 N

















1

2

M

Untuk itu diperlukan dua buah subskrip, yang pertama digunakan untuk menyatakan baris,sedangkan yang kedua untuk posisi kolom.cross section atau penumpang suatu Array dimensi dua adalah pengambilan salah satu subskrip, misalnya subskripbaris tetap dan supskrip yang satunya lagi kita ubah-ubah sepanjang rangenya.Transposevdari suatu array dimensi dua adalah penulisan baris menjadi kolom dari suatu Array.


1.3 Mendeklarasikan Array Dalam Bahasa Pemograman

Misalnya kita hendak mendeklarasikan Array BARU yang merupakan Array berdimensi satu dengan nilai subskrip 1 sampai 24 dan masing-masing elemen bertipe Data integer (nilainya antara 0 hingga 99 derajat ).

Dalam Bahasa COBOL dapat ditulis :

01 TABEL- BARU

02 BARU OCCURS 24 TIMES

PIC 99

Dalam Bahasa Pascal :

var BARU : Array [1…24] of Integer

Dalam Bahasa Basic :

12 DIM BARU(24)

Untuk mendeklarasikan sebuah Array dari gaji 100 pekerja untuk 3 proyek, dalam COBOL ditulis

01 TABEL- GAJI

02 MHS OCCURS 100 TIMES

03 PROYEK OCCURS 3 TIMES

PIC 99V9

Dalam PASCAL ditulis

var gaji : Array[1..100,1..3] of real

Dalam BASIC dapat ditulis

08 DIM GAJI(100,8)


1.4 Pemetaan Array Dimensi Satu Ke Storage

Seperti halnya struktur data yang lain, ada beberapa cara untuk menyajikan Araay dindalam memori. Skema penyajian dapat dievaluasi berdasarkan 4 karakteristik, yakni

(1) Kesederhanaan dari akses elemen.

(2) Mudah untuk ditelusuri.

(3) Efisiensi dari utilitasistorage.

(4) Mudah dikembangkan.

Misalnya Array dimensi satu NOPEG dengan batas bawah subskrip 1 dan batas atas supskrip N. Salah satu cara untuk menyimpan Array ini adalahsedemikian sehingga urutan fisik dari elemen sama dengan urutan logic dari elemen. Untuk mengetahui alamat awal dari awal elemen NOPEG(I) dapat diketahui dengan 2 hal yakni :

(1) Address awal dari ruang storage yang dialokasikan bagi Array tersebut

(2) Ukuran dari masing-masing elemen Array.


1.5 Pemetaan Ke Storage Terhadap Array Dimensi Banyak

Karena memori komputer adalah linear, maka Array berdimensi banyak harus dilinearkan apabila akan dipetakan kedalam storage. Salah satu alternative untuk pelinearan tersebut adalah menyimpan pertama kali baris pada Array, kemudian baris kedua dan ketiga dan seterusnya disebut row major order.

Sebagai contoh, Array yang dideklarasikan sebagai BASE(1:4,1:6), yang secara logic dapat di gambarkan sebagai berikut :

1 2 3 4 5 6
























1

2

3

4

Rate (2,4)

Gambar 1.1 : Array BASE secara Logik dalam row major order

Gambar 1.2 berikut menggambarkan secara fisik

Baris 1 Baris 2 Baris 3 Baris 4

























Gambar 1.6 Array BASE secara fisik dalam row major order


1.6 Triangular Array (Array Segitiga)

Tringular array dapat merupakan Upper Traingular ( seluruh elemen di bawah diagonal utama = 0, ataupun Lower Triangular ( Seluruh elemen di atas diagonal uatama = 0). Dalam Array Lower Triangular dengan N baris, jumlah maksimum elemen <> 0 pada baris ke I, karena total elemen <> 0 tidak lebih dari :

N

SIGMA I = N(N+1)/2

I=I

Gambar 1.3 menunjukan Triangular Array berorder 6x6

X X X X X X X 0 0 0 0 0

0 X X X X X X X 0 0 0 0

0 0 X X X X X X X 0 0 0

0 0 0 X X X X X X X 0 0

0 0 0 0 X X X X X X X 0

0 0 0 0 0 X X X X X X X

(a) (b)

Ket : (a) Upper Triangular Array

(b) Lower Triangular Array


1.7 RECORD

Sebuh record merupakan koleksi satuan data yang heterogen, yakni terdiri dari berbagai type. Satuan data tersebut sering disebut sebagai field dari record. Field dipanggil dengan menggunakan namanya masing-masing. Suatu Field dapat terdiri atas beberapa subfield.

Sebagai contoh, Data personali dari seorang pegawai suatu perusahan di Amerika Serikat, merupakan sebuah Record yang terdapat terdiri dari berbagai field, dan subfield seperti berikut ini:

1. NOMOR JAMINAN SOSIAL

2. NAMA, yang terdiri atas

NAMA BELAKANG

NAMA PERTAMA

NAMA TENGAH

3.ALAMAT,terdiri atas

JALAN

NOMOR RUMAH

KOTA

NEGARA BAGIAN

KODE POS

3. MENIKAH

Seperti telah kita jelaskan terdahulu, Array berbeda dengan Record, yakni Array bersifat homogeny (terdiri dari type yang sama), dan komponen Array tidak memiliki mana sendiri, dan hanya diberi identifikasi oleh posisi mereka di dalam Array.

Pada umumnya record disimpan membentuk File, dalam urutan sesuai dengan nilai dari key masing-masing.

Hidup adalah Perjuangan


Ketika Fajar masih bersiap-siap membangunkan tidur ku

Namun, aku terbangun mendahulu sang fajar

Semangat untuk menghidupi diri dan keluarga ku

Ku coba tuk ku perjuangkan


Ketika aku keluar rumah dan menuju mencari makan dan mengukir masa depan

Diperjalanan ku selalu memikirkan

Apa aku dapat membahagiakan keluarga ku?

Sering terlintas dipikiranku tuk mencari cara cepat menjadi kaya


Tapi….

Hati ini tidak ingin darah yang mengalir dalam keluarga ku menjadi haram

Aku pun tidak ingin menjadi anak yang durhaka

Aku ingin menjadi orang yang baik dimata Tuhan


Maaf kan aku Tuhan…

Pikiran ini sering salah, namun ku tahu

Kau tidak akan pernah membiarkan diriku terjebak dunia hitam

Aku bersyukur menjadi diri ku yang sekarang


Kau Hilang Karena Facebook


Facebook adalah salah satu situs jejaring sosial yang dapat menghubungkan seseorang dengan teman-temannya. Pembuatan Facebook pada awalnya digunakan untuk para mahasiswa,mnamun kemudian dipakai bebas untuk usia diatas 13 tahun. Dengan kemajuan teknologi yang ada sekarang membuat semua kalangan ingin menggunakan Facebook, bahkan anak-anak membuat akun Facebook dengan umur diatas 13 tahun. Remaja adalah pihak yang rentan terhadap pengunaan yang berdampak negatif dari penggunaan Facebook. Hal ini terjadi karena para remaja masih mencari jati diri mereka yang sebenarnya. Usia remaja memiliki keinginan yang sangat kuaat untuk mencoba segala hal.


Kasus yang terjadi menimpa para remaja beberapa waktu lalu adalah penculikan dan prostitusi. Penculikan yang terjadi dilatar belakangi dengan perasaan cinta antara kedua belah pihak. Dalam facebook terkadang kita menjadikan seseorang menjadi teman tanpa mengetahui keadaan atau profil sebenarnya dari orang yang kita jadikan teman tersebut. Lama-kelaman orang yang kita jadikan teman itu melakukan percakapan secara maya, terkadang membuat kita berfikir bahwa dia adalah orang baik-baik.


Dalam perteman di Facebook, tidak sedikit yang melakukan pertemuan secara langsung guna mengenal lebih dekat dari orang yang kita jadikan teman dan dalam pertemuan itu banyak yang terhasut serta mengajak hubungan lebih lanjut. Apabila hal ini terjadi, maka remaja lah yang paling mudah terhasut. Untuk mengurangi kasus ini terjadi, maka pihak orang tua sangat berperan penting untuk mengawasi perkembangan pergaulan yang terjadi. Perhatian sangat dibutuhkan setiap remaja agar mereka tidak mencari penampung perhatian yang salah.

Minggu, 21 Februari 2010

JENIS-JENIS DATA


1.1 Pengertian Stuktur Data

Suatu Struktur Data adalah suatu koleksi atau kelompok Data yang dapat diakterisasikan oleh organisasi secara operasi yang didefinisikan terhadapnya. Struktur data sangat penting dalam sisitem computer. Terhadap setiap variable didalam program, secara eksplisit ataupun implicit, didefinisikan Struktur Data yang akan menentukan operasi yang berlaku terhadap variabel tersebut. Struktur data yang dibicarakan merupakan struktur data logik, bukan penyajian secara fisik di storage.

Pada garis besanya, Data dapat kita kategorikan menjadi :

(a). Tipe Data sederhana atau data sederhana, yang terdiri atas :

- Data Sederhana Tunggal, misalnya integer, Real, Boolean, serta karakter.

- Data Sederhana Majemuk, misalnya String.

Tipe Data ini dengan berbagai cara tertentu dapat diorganisasikan menjadi berbagai struktur data

(b.) Struktur Data, meliputi :

- Struktur Data Sederhana, misalnya Array dan Record.

- Struktur Data Majemuk, terdiri atas :

* Linear, misalnya Stack, Queue, serta Linear Linked List.

* Nonlinear. Misalnya Pohon Binar ( Binary Tree), Pohon Cari Binar (Binary

Search Tree), Pohon Cari M-way (M-way Search Tree), Trie, General Tree, serta Graph.

Kedua kategori diatas, terutama diperuntukan bagi data di dalam storage utama. Data yang diperuntukan bagi Storage tambahan, mempunyai struktur data yang dikenal sebagai Organisasi File.

1.2 Tipe Data Sederhana

Suatu jenis data tertentu aakan disimpan di dalam variabel yang sesuai jenisnya. Jenis variabel menentukan rangkaian nilai yang akan dibutuhkan sewaktuprogram dilaksanakan. Jenis-jenis tipe data sederhana adalah :

1. Integer

Yang dimaksud integer adalah bilangan bulat seperti -3,-2,-1,0,1,2,3,… Integer tidak mengandung pecahan dan biasanya disajikan dalam memoei computer sebagai anka bulat. Didalam aritmatika computer, integer tersebut mudah untuk disajikan dan diproses . Sebuah integer N, biasanya disajikan sebagai sebuah string di dalam memori komputer.

Rumusannya adalah

N<= 2n-1-1

Disini n merupakan jumlah bit di dalam computer yang bersangkutan. Hal ini disebakan karena satu bit dicadangkan untuk disajikan sebagai tanda. Pada Interger dapat dilaksanakan operasi penambahan, pengurangan, perkalian dan pembagian integer (DIV).

Misalnya 13 DIV 3 = 4.

2. Bilangan Real

Bilangan real seperti bilangan pecahan dan bilangan taksional. Jenis data real ditulis menggunakan titik atau koma, contohnya 3.26 43.00 -131.128 , dan sebagainya. Bilangan real dimasukkan kedalam komputer memakai floating point, merupakan versi yang disebut notasi ilmiah. Contoh : 123000 = 0.123 * 106 ., disini 0.123 adalah pecahan dan 6 adalah eksponennya. Rumusnya bilangan Real X adalah :

X = M*RE

Disini X adalah pecahan dan E adalah eksponennya.

3. Aritmatika Campuran

Jika di dalamsuatu pemrograman diperbolehkan memkai cara berhitung dengan aritmatika campuran, maka nilai-nilai numeric yang berbeda jenisnya dapat dicampur di dalam suatu ekspresi. Hal tersebut bahwa telah terjadi konversi anka integer menjadi real atau sebaliknya. Konversi tersebut dapat dilakukan dengan dua cara :

(1) Melalui pemotongan, yakni menghilangkan pecahan dari angka real yangbersangkutan.

(2) Melalui pembulatan kepada angka integer terdekat.

4. Bilangan Kompleks

Suatu bilangan kompleks mempunyai bentuk umum a + bi. Disinin a dan b adalah bilangan real. I adalah suatu bilanga khayal V(-1)

5. Bilangan Presisi Ganda

Didalam beberapa Bahas a Pemograman, bilangan ini tersedia dalam bentuk tipe

data, dan merupakan suatu bentuk khusus dari bilangan real.

6. Tipe Data Boolean atau Logikal

Suatu variabel Boolean atau logical hanya dapat berisikan nilai True atau False,

yang kerapkali dinyatakan pula sebagai I dan O. Operator pada tipe ini yaitu and, or,

dan not. Berikut ini table dari ketiga operator logical tersebut.

NOT

Nilai Operand

Not

True

False

False

True

AND

Nilai Operand 1

Nilai Operan 2

And

True

True

True

True

False

False

False

True

False

False

False

False

OR

Nilai Operand 1

Nilai Operand 2

Or

True

True

True

True

False

True

False

True

True

False

False

False

Di dalam tipe Boolean terdapat Operator Relaional yaitu = , <, >, <=, >=, <>. Contoh 6 <>

7. Tipe Data Karakter dan String

Karakter yang dikenal dalam komputer biasanya mencangkup :

(a) 26 huruf besar Latin

(b) 26 huruf kecil Latin

(c) 10 digit Arab

(d) Karakter khusus yang dapat dicetak, seperti tanda aritmetika, tanda baca, dan sebagainya.

(e) Ruang kosong atau blank

(f) Karakter pengendalian (tidak dapat dicetak), seperti pengendalian kursor, dan sebagainya.

Tipe Data majemuk yang terbentuk dari karakter adalah string. Suatu string adalah

barisan hingga symbol yang diambil dari himpunan. String merupakan tipe data yang sangat penting. String sangat luas pemakaiannya. String adalah media dasar, dengan mana program ditulis dan dimasukkan dalam komputer.

1.3 Deklarasi Data Dalam Bahasa Pemograman

Bahasa Pemograman mengharuskan pemogram menentukan tipe data bagi variabeln yang digunakan. Semua operasi yang dilakukan terhadap variabel tersebut harus sesuai dengan operasi yang berlaku pada tipe yang bersangkutan. Bahasa PASCAL dan COBOL mengharuskan kita secara eksplisit/ nyata mendeklarasikan tipe dari setiap variabel yang kiyta gunakan dalam program. Contoh deklarasi dalam Bahasa Pascal :

Var Hitung : integer;

P : Boolean;

Beta : Char;

String dapat dengan mudah dideklarasikan dalam bahasa COBOL. Misalnya ALAMAT dengan panjang String 25 karakter, dideklarasikan sebagai berikut /:

01 ALAMAT PIC X(25)

1.4 Pemetaan ( Mapping ) Ke Storage : Integer

Struktur Data secara Logik, dapat mempunyai beberapa storage mapping atau represtasi

fisik. Salah satu storage yang dapat dilakukan integer adalah apa yang disebut bentuk sign-and-magnitude. Jika sehari-hari bilangan dinyatakan dalam baris 10 (system desimal), maka dalam komputer dinyatakan dalam Bilalangan Binary ( baris 2). Mapping dalam integer ada 2 sistem two’s complement

( R = 2N) dan dan one’s complement (R<= 2N-1 - 1).

1.5. Pemetaan Ke Storage : Karakter dan String

Banyak aturanyang dapat kita gunakan untuk menyatakan Tipa Data Karakter dalam Storage adalah Extened Binary Coded Decimal Interchage Code ( EBCDIC) dan American Standard for Information Interchage (ASCII). EBCDIC dalah kode 8 bit. Dalam 8 bit terdapat 28 = 256. ASCII adalah pengkodean 7 bit, terdapat 27 = 128. Penggunaan ASCII yang lebih sedikit dari EBCDIC disebabkan karena lebih sedikitnya storage yang yang di pakai, serta lalu lintas data karakter lebih cepat, selain dengan dua cara pengkodean tersebut terdapat BCD (Binary Coded Decimal) yang menggunakan 4 bit setiap karakternya.

1.6 Organisasi Logik dan Fisik dari Struktur Data

Struktur Data terdiri dari Satuan Data sederhana yang cocok untuk program yang memakainya. Hubungan antara Satuan Data tersebut membentuk salah satu cirri dari Struktur Data tersebut. Jika Struktur Data tidak tersidia di komputer, makapemogram harus membuatnya terlebih dahuludari Tipe Data yang tersedia. Berhubung Struktur Data tersebut harus dimasukkan ke dalam memori komputer berupa untai bit, maka setiap struktur diberi cirri oleh Organisasi Logikal dari Organisasi Fisikal. Jika Satuan Data sederhana dapat membentuk sebuah Struktur yang lebih hemat dalam memori, maka Struktur Data tersebut disatukan : beberapa Satuan Data sebagai satu untaian atau byte.

Sumber :

D. Suryadi H.S., Pengantar Struktur data, Gunadarma, 1998

 

Be The Best Blak Magik is Designed by productive dreams for smashing magazine Bloggerized by Ipiet © 2009