Npm : 22001053007
Prodi : Teknik Elektro
Laporan Tugas 2 Struktur Data (STACK)
#include <iostream>
#define MAX 5
using namespace std;
struct Stack {
int atas, data[MAX];
} tumpuk;
2.Struct Data
Pada struct mendeklarasikan top(atas) untuk menunjukkan data teratas pada
tumpukan dan array data [] dengan jumlah array dari data maksimum yang telah didefiniskan
sebelumnya yaitu MAX
void init() {
tumpuk.atas = -1;
}
4. Memeriksa Tumpukan
Kedua fungsi ini digunakan untuk memeriksa apakah tumpukan penuh isFull()
(fungsi pertama) dan tumpukan kosong isEmpty(), keduanya mengembalikan nilai Boolean,
jadi cukup mengembalikan nilai perbandingan pada fungsi masing-masing.
Pada fungsi isEmpty()akan mengembalikan nilai true jika tumpuk.atas sama dengan -
1 atau false jika tidak sama.
Pada fungsi isFull() akan mengembalikan nilai true jika nilai tumpuk.atas sama
dengan maksimum data array yang telah ditentukan dikurang satu MAX-1 atau false
jika tidak sama.
void clear(){
tumpuk.atas = -1;
cout <<"Tumpukan data sudah kosong" << endl;
}
5. Mengosongkan Tumpukan
Fungsi yang digunakan untuk mengosongkan stack dengan cara mengeset Top
dengan - 1. Jika Top bernilai kurang dari nol maka stack dianggap kosong
void push() {
if (isFull()) {
cout << "\nTumpukan penuh" << endl;
}
else {
tumpuk.atas++;
cout<< "\nMasukkan data = ";
cin >> tumpuk.data[tumpuk.atas];
cout<< "Data " << tumpuk.data[tumpuk.atas] << " masuk ke stack"
<< endl;
}
}