laporan stack

18
LAPORAN PRAKTIKUM STACK MODUL 4 Disusun untuk Memenuhi Mata Kuliah Praktikum Algoritma dan Struktur Data dibimbing oleh Bapak Aji Prasetya Wibawa. Oleh: Muhamad Ainurrahman 130533608096 UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO S1 PENDIDIKAN TEKNIK INFORMATIKA

Upload: alikhadafi

Post on 24-Nov-2015

193 views

Category:

Documents


10 download

DESCRIPTION

laporan tugas asd bab 4

TRANSCRIPT

LAPORAN PRAKTIKUM STACKMODUL 4

Disusun untuk Memenuhi Mata KuliahPraktikum Algoritma dan Struktur Datadibimbing oleh Bapak Aji Prasetya Wibawa.

Oleh:Muhamad Ainurrahman130533608096

UNIVERSITAS NEGERI MALANGFAKULTAS TEKNIKJURUSAN TEKNIK ELEKTROS1 PENDIDIKAN TEKNIK INFORMATIKA maret, 2014

STACKA. TUJUAN Memahami terminologi yang terkait dengan struktur data stack Memahami operasi-operasi yang ada dalam stack Dapat mengidentifikasi permasalahan-permasalahan pemrograman yang harus diselesaikan dengan menggunakan stack, sekaligus menyelesaikannya

B. Dasar TeoriA. Pengertian Stack Stack adalah sebuah kumpulan data dimana data yang diletakkan di atas data yang lain atau menggunakan konsep LIFO (Last In Fisrt Out). Dengan demikian, elemen terakhir yang disimpan dalam stack menjadi elemen pertama yang diambil. Dalam proses komputasi, untuk meletakkan sebuah elemen pada bagian atas dari stack, maka kita melakukan push dan untuk memindahkan dari tempat yang atas tersebut, kita melakukan pop.

Gambar 1.0 Ilustrasi Sebuah StackOperasi push merupakan proses penyisipan/pemasukkan data ke dalam suatu tumpukan. Dimana tumpukkan tersebut akan dicek, apakah sudahpenuh atau belum. Jika sudah penuh, maka data tidak akan dimasukkan ke dalam tumpukkan, tetapi jika masih kosong maka data akan disisipkan di tumpukkan paling atas.Algoritma Operasi Push:If atas = maxelemen then penuh: true (Tumpukan sudah penuh)else penuh false (Tumpukan masih kosong) Atas atas + 1 Isi[Atas] xEndif

Operasi pop adalah operasi untuk menghapus elemen dengna yang terletak pada posisi paling atas dari sebuah tumpukan. Algoritma Operasi Pop:If atas = 0 then(Tumpukan sudah kosong)else Atas atas - 1 (hapus 1 elemen pada tumpukan)Endif

Gambar 2. Contoh Penggunaan Push dan POPAda beberapa cara untuk menyajikan sebuah stack tergantung pada permasalahan yang akan kita selesaikan. Dalam bab ini kita akan menggunakan cara yang paling sederhana, tipe data yang sudah kita kenal, yaitu array. Kita dapat menggunakan array untuk menyajikan sebuah stack, dengan anggapan bahwa banyaknya elemen maksimum dari stack tersebut tidak akan melebihi batas maksimum banyaknya elemen dalam array.Pada saat memberikan ukuran stack, kalau kita teruskan akan menambah data lagi, hingga terjadi overflow. Dengan demikian perlu data tambahan untuk mencatat posisi ujung stack. Dengan kebutuhan seperti ini, kita dapat menyajikan stack dengan menggunakan tipe data struktur (struct) yang terdiri dari dua field. Field pertama bertipe array untuk menyimpan elemen stack, medan kedua bertipe integer untuk mencatat posisi ujung stack.B. Operasi Stack pada Arraya. Operasi data abstrak STACK

b. Fungsi yang melakukan pengecekan apakah stack dalam kondisi kosong

c. Fungsi yang melakukan pengecekan apakah stack dalam kondisi penuh

d. Fungsi untuk menghapus seluruh stack

e. Fungsi untuk mencetak isi stack

Latihan Algoritma dan Struktur Data

Nama Program : troubleshooting stack.Bahasa Pemrogramam : C++ Compiler : Code BlockScript program :

#include #include #include #include #define maxstack 5using namespace std;

struct STACK {//Membuat jenis data abstrak 'STACK'int top;float data[5];}stackbaru;float dta;

void inisialisasi(){stackbaru.top=-1;}

bool isfull()//menanyakan : penuhkah ?{if(stackbaru.top ==maxstack) return true;else return false;}bool isempty(){//menanyakan:kosongkah?

if(stackbaru.top==-1) return true;else return false;}

int push(float dta){//mengisi stack(menyimpan data di stack)if(isfull()==true){puts("Maaf,stack penuh");}else{stackbaru.top++;stackbaru.data[stackbaru.top]=dta;}}

void pop(){//mengambil isi stackif(isempty()==true){cout