GANJIL 2019/2020
Petunjuk Pengerjaan :
- Isilah identitas anda secara lengkap pada lembar jawaban yang telah disediakan !
- Tulislah jawaban anda dengan rapi dan huruf yang jelas (mudah dibaca) !
- Jawaban harus secara berurutan !
Soal:
1. Apa yang dimaksud dengan Struktur Data? sebutkan dan jelaskan jenis-jenis Struktur Data!
2. Tulis penggalan program untuk menghapus satu persatu data stack sebanyak 10!
if(tumpuk.top==-1)
cout<<"Tumpukan kosong";
else
cout<<"Data yang akan di pop = "<<tumpuk.data[tumpuk.top];
tumpuk.top--;
}
Jawaban
1. - Struktur data merupakan sebuah cara yang digunakan untuk menyusun data, menyimpan dan
mengatur data dalam sebuah media penyimpanan agar lebih efisien ketika akan digunakan.
2. #include <iostream>
#include <string>
#define MAX 10
using namespace std;
struct Tumpuk{
int top=-1;
int data[10];
} tumpuk;
void pop() {
if(tumpuk.top==-1)
cout<<"Tumpukan kosong";
else {
cout<<"Data yang akan di pop = "<<tumpuk.data[tumpuk.top];
tumpuk.top--;
}
}
int main(){
return 0;
string data_mhs[5][3] = {
{"1","Nina", "2000-05-02"},
{"2","Nani", "2000-02-01"},
{"3","Jeje", "2000-12-06"},
{"4","Juju", "2000-11-08"},
{"5","Diah", "2000-07-09"}
};
Return 0;
}
4.
Sisipkan 1 data di antara array ke-3 dan array ke-4.
#include <string.h>
#include <iostream>
int main()
{
string data_mhs[5][3] = {
{"1","Nina", "2000-05-02"},
{"2","Nani", "2000-02-01"},
{"3","Jeje", "2000-12-06"},
{"4","Juju", "2000-11-08"},
{"5","Diah", "2000-07-09"}
};
int size = 5, insertPos = 3;
mhs[insertPos][0] = "4.5";
mhs[insertPos][1] = "Satya";
mhs[insertPos][2] = "2001-04-04";
f. Lakukan Enqueue 4 elemen ke dalam antrian, dimanakah posisi Head dan Tail ?
head tail = 4
0
A B C D
1 2 3 4 5 6
g. Kemudian lakukan Dequeue 2 elemen dari antrian. Maka dimana posisi Head dan Tail ?
head tail = 4
0
C D
1 2 3 4 5 6
h. Dari keadaan diatas, bagaimanakah kondisi IsFull dan IsEmpty nya ?
Kondisi IsEmpty = Untuk memeriksa apakah Antrian sudah penuh atau belum
Dengan memeriksa nilai Tail, jika Tail = -1 maka empty.
Contoh pada no a adalah IsEmpty karena Tailnya bernilai -1.
Kondisi IsFull = Untuk mengecek apakah Antrian sudah penuh atau belum
Dengan mengecek nilai Tail, jika Tail >= MAX-1 itu artinya antrian sudah penuh.
Contoh pada no b itu tidak IsFull karena Tailnya tidak >= MAX-1.
Selamat Mengerjakan