PERKENALAN STRUKTUR DATA
Firmansyah, S.Kom
A. TEMA DAN TUJUAN KEGIATAN PEMBELAJARAN 1. Tema
:Perkenalan Struktur Data
2. Fokus
:
1. Definisi Struktur Data 2. Tipe-tipe data 3. Algoritma
:
1. Mahasiswa memahami pengertian dari struktur data dan ruang lingkupnya. 2. Mahasiswa mampu mengenal dan menjelaskan tipetipe dari data 3. Mahasiswa mampu membuat algoritma sederhana
Pembahasan Materi Pokok
3. Tujuan Kegiatan Pembelajaran
Apa itu Struktur Data ?
Struktur Data adalah cara penyimpanan dan pengorganisasian data-data pada memori komputer maupun file secara efektif sehingga dapat digunakan secara efisien, termasuk operasi-operasi di dalamnya.
Struktur Data
Tempat Penyimpanan Data
Operasi terhadap data
• • •
Traversal (Traversing) : mengunjungi setiap elemen SD Pencarian (Searching) : menemukan elemen/lokasi pada SD Penyisipan (Inserting) : menambah elemen baru pada SD
•
Penghapusan (Deleting) : menghapus elemen dari SD
STRUKTUR DATA
Stuktur data juga meliputi : • larik (array) • record (rekaman) • berkas beruntun (sequential file)
TUJUAN
Struktur data bertujuan agar cara mempresentasikan data dapat dilakukan secara efisien dalam pengolahan di memori dan pengolahan penyimpanan dari program ke storage juga lebih mudah dilakukan.
ILUSTRASI STRUKTUR DATA Ilustrasi
Keterangan
nama
Alamat
No ktp
No telp
?
?
?
?
nama
Alamat
No ktp
No telp
Diza
Bandung
13458
0813766
nama
Alamat
No ktp
No telp
Diza
Bandung
13458
0813766
Ayu
Bandung
13452
0752234
Yaya
Bandung
13458
0813457
Leo
Bandung
12769
0852455
Misalkan ada sebuah data manusia yang terdiri dari: • Nama • Alamat • No_ktp(nomor KTP) • No_telp (nomor telepon) dan diperlukan untuk menyimpan data manusia, maka dalam logika akan dipersiapkan tempat untuk menyimpan sebuah data manusia, maka dibuat sebuah tipe data bentukan untuk menyimpan data manusia. misalkan dari data manusia yang ada diisi dengan data seorang manusia
misalkan dari data manusia yang ada digunakan untuk menampung beberapa data manusia.
ILUSTRASI STRUKTUR DATA Array (Larik) Dalam logika pemikiran manusia, array dapat dianalogikan sebagai kumpulan kotak (variabel) yang diikat menjadi satu sebagai sebuah kesatuan. Dimana setiap kotak memiliki nomor kotak untuk mengakses kotak yang dituju.
ILUSTRASI STRUKTUR DATA Record (rekaman) Rekaman (record) adalah data yang bertipe sama, misalnya ada beberapa data yang terdiri dari bagian-bagian tertentu seperti data nilai mahasiswa pada satu mata kuliah yang terdiri dari nomor induk, nama, dan nilai. Gambar di bawah terdiri dari tiga buah rekaman yang memiliki kolom-kolom nomor induk, nama, dan nilai. Sebuah baris yang berisi data dari tiap kolom disebut dengan sebuah rekaman. Nomor Induk
Nama
Nilai
1350109
Andik
A
1354137
Salahudin
A
1355667
Rosa
A
ILUSTRASI STRUKTUR DATA Sequential File (arsip beruntun) Adalah sebuah file yang berisi kumpulan rekaman dengan kolom-kolom data tertentu sesuai dengan kebutuhan, tapi dalam sebuah arsip beruntun, nama-nama kolom tidak ikut disimpan di dalam file sehingga file hanya berisi kumpulan rekaman saja. Contoh isi sebuah arsip beruntun dapat dilihat pada gambar di bawah. 1350109 Andik A 1354137 Salahudin A 1355667 Rosa A Xxxxxxxxx xxx x
Tipe Data ? Type Data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalam pemrograman komputer.
Tipe Data ORDINAL, meliputi integer, shortint, longint, char, boolean, byte,word, subrange dan enumerated TIPE SEDERHANA REAL, meliputi single, real, double, extended dan comp TIPE DATA
TIPE STRING
TIPE TERSRUKTUR, meliputi ARRAY, RECORD, SET DAN FILE
TIPE POINTER
TIPE DATA SEDERHANA TIPE ORDINAL
TIPE Shortint Integer Longint Byte word
JANGKAUAN
UKURAN
-128 … 127 -32768 … 32767 -2147483648 … 2147483647 0 … 255 0 … 65535
8 bit 16 bit 32 bit 8 bit 16 b
TIPE DATA SEDERHANA • • • •
Tipe Char Tipe boolean Subrange Enumerated
: menyimpan satu karakter : menyimpan data true dan false : data dalam range/jangkauan : data disebutkan satu per satu
TIPE BILANGAN REAL
Tipe
Jangkauan
Real
2.9*10-39…1.7*1038
Digit Ukuran Penting 11-12 6 byte
Single
1.5*10-45…3.4*1038
7-8
4 byte
Double
5.0*10-324…1.7*10308
17-18
8 byte
Extended 3.4*10-4932…1.1*104932 19-20 Comp
-263+1…263-1
19-20
10 byte 8 byte
TIPE STRING
• TIPE STRING menyimpan data string (deretan karakter). Panjangnya 255 karakter. • Contoh: var nama: string;
ALGORITMA Algoritma adalah langkah detil yang ditunjukkan untuk menyelesaikan suatu masalah dengan menggunakan komputer. Sebagai contoh, untuk menampilkan bilangan 1 sampai dengan 5. Dapat ditulis menjadi:
ALGORITMA Bilangan ← 1 ULANG SELAMA bilangan < 6 tampilkan (bilangan) bilangan ← bilangan + 1 AKHIR-ULANG
ALGORITMA Contoh kasus, seorang ibu hendak menggoreng kentang. Sebelum menggoreng kentang, ada beberapa hal yang harus diperhatikan berkaitan dengan aksi menggoreng kentang, yaitu: 1. Apakah kentang yang akan digoreng sudah tersedia atau harus dibeli terlebih dahulu? 2. Jika sudah dibeli, apakah kentang yang akan digoreng sudah dikupas kulitnya? 3. Ada berapa buah kentang yang harus digoreng? 4. Apakah semua kentang memiliki mutu yang baik atau ada yang busuk? 5. Jika ada yang busuk, apakah kentang tersebut akan tetap dipakai atau akan dibuang? 6. Jika kentang sudah selesai digoreng, bagaimana cara menghidangkannya? Apakah menggunakan saus tomat ataukah tidak?
ALGORITMA Input
Proses
Output
Semua kejadian di atas mengandung unsur input, proses, output
BENTUK –BENTUK DASAR ALGORITMA 1. Algoritma Sekuensial Algoritma sekuensial banyak dijumpai pada kehidupan sehari-hari, misalnya pada kasus “mengirim surat”. Pada kasus tersebut terdapat langkah-langkah yang harus dilakukan secara runut yaitu: a. Membeli amplop b. Membeli Perangko c. Memasang perangko ke amplop d. Menulis alamat pengirim dan alamat tujuan e. Pergi ke kantor pos atau memasukkan surat itu ke dalam kotak surat. f. Surat terkirim
BENTUK –BENTUK DASAR ALGORITMA 2. Algoritma Percabangan Pada contoh kasus algoritma sekuensial “ mengirimkan surat” dapat dilihat bahwa pada langkah ke-5 yang mana surat yang sudah siap dikirim dapat dikirim dengan pergi ke kantor pos atau dengan memasukkannya ke dalam kotak pos. dalam langkah tersebut terdapat kata ATAU, yang berarti pemilihan solusi. Algoritama untuk memilih salah satu dari beberapa pilihan yang ada disebut algoritma percabangan/pemilihan
BENTUK –BENTUK DASAR ALGORITMA 3. Algoritma Perulangan Algoritma perulangan berarti terdapat satu atau lebih kejadian/tindakan yang harus diulang terus-menerus sampai kondisinya tidak terpenuhi lagi. Contoh: Seorang ibu harus mengulang mengupas kentang secara terus–menerus sampai kondisi tercapai sebanyak 50 buah, yaitu kondisi di mana kentang mencapai 50 buah.
TUGAS
Buatlah contoh kasus dalam bentuk algoritma sekuensial, algoritma percabangan, algoritma perulangan. Pada beberapa kasus.