Anda di halaman 1dari 4

LAPORAN RENCANA PRAKTIKUM STRUKTUR DATA

NAMA NIM KELAS MODUL

: EMMA PURNAMASARI : DBC 113 179 : G : I (STACK)

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS PALANGKARAYA 2014

MODUL I STACK

A. Tujuan Praktikum 1. 2. Mahasiswa mampu memahami konsep stack. Mahasiswa mampu mengimplementasikan stack untuk memecahkan masalah tertentu.

B. Landasan Teori Stack atau tumpukan bisa diartikan sebagai kumpulan data yang seolah-olah diletakkan di atas data yang lain. Satu hal yang perlu diingat bahwa kita bisa menambah (menyisipkan) data dan mengambil (menghapus) data melalui ujung yang sama, yang disebut sebagai ujung atas stack. Secara sederhana, sebuah stack bisa diillustrasikan seperti gambar dibawah ini : atas (top)

F E D C B A

Dari gambar diatas, bisa di lihat bahwa kotak B terletak di atas kotak A dan di bawah kotak C. Kotak D terletak diatas kotak C, kotak E terletak diatas kotak D dan seterusnya sampai kotak terakhir. Dari gambar diatas menunjukkan bahwa kotak lewat satu ujung, yaitu bagian atas. Apabila ada kotak lain yang akan disisipkan, maka kotak tersebut akan diletakkan diatas kotak F, dan jika ada kotak yang akan diambil, maka kotak F yang akan diambil untuk pertama kali.

Dengan demikian stack adalah struktur data yang menggunakan konsep Last In First Out (LIFO) dan bersifat dinamis dimana data bisa ditambah maupun diambil.

Stack dapat dideklarasikan dengan sebuah record yang mempunyai elemen sebuah array tabelemen untuk menyimpan elemen stack dan sebuah variabel top untuk menunjuk elemen stack teratas. Deklarasi selengkapnya sebagai berikut :

Operasi pada stack Berdasarkan sifat khusus stack, maka ada 2 operasi terhadap stack, yaitu : 1. Pengambilan elemen dilakukan pada top, yang disebut sebagai POP. 2. Penambahan elemen dilakukan pada top, yang disebut sebagai PUSH.

Implementasi stack : 1. Inisialisasi, adalah proses untuk membuat stack dalam keadaan kosong. Proses ini dilakukan dengan mengisi variabel top dengan nilai yang tidak menunjuk salah satu elemen array.

2. Empty/kosong, adalah operasi untuk mengetahui status stack, yaitu kosong atau tidak.

3. Full/penuh, adalah operasi untuk mengetahui status stack, yaitu penuh atau tidak.

4. Pop, dengan mempertimbangkan seleksi awal terhadap kondisi stack yaitu hanya berlaku untuk stack yang tidak kosong

5. Push, dengan mempertimbangkan seleksi awal terhadap kondisi stack yaitu untuk menghindari overflow.

C. Tugas Praktikum 1. Buatlah program menggunakan prinsip tumpukan (stack) dan beri tiga pilihan : push, pop dan quit. Jika dipilih push program akan meminta user menginputkan sebuah kata, dimana maksimal 6 karakter jika lebih dari 6 akan muncul pesan kesalahan. Jika dipilih pop maka karakter teratas akan dikeluarkan, bila belum ada kata yang dimasukkan maka waktu memilih pop akan tampil pesan kesalahan. Jika dipilih quit maka program selesai. Output : Pilihan : 1. Push 2. Pop 3. Quit Pilihan [1/2/3] = 1 Masukkan kata = Data Hasil Push : Data