Laporan Praktikum Resmi Pohon (Cintia Yosfin Samalle_201301041).pdf
Click here to load reader
description
Transcript of Laporan Praktikum Resmi Pohon (Cintia Yosfin Samalle_201301041).pdf
-
LAPORAN PRAKTIKUM RESMI
ALGORITMA & STRUKTUR DATA 2
POHON atau TREE
Disusun oleh :
Cintia Yosfin Samalle
201301041
Dosen pengampu :
Yosef Murya Kusuma Ardhana.S.T., M.Kom
JURUSAN SISTEM INFORMASI
SEKOLAH TINGGI ILMU KOMPUTER YOS SUDARSO
PURWOKERTO
2014
-
2
BAB I
TEORI DASAR
Tree merupakan struktur data non linear. Struktur data dalam bentuk tree dapat diartikan
sebuah struktur data yang secara bentuk menyerupai sebuah pohon, yg terdiri dari serangkaian
simpul atau node yg saling berhubungan.
Simpul-simpul atau node tersebut dihubungkan oleh sebuah vector. Setiap simpul dapat
memiliki 0 atau lebih node anak (child). Yang memiliki node anak disebut node induk (parent).
Sebuah node Sebuah node anak hanya memiliki 1 node induk. Sesuai konvensi ilmu
computer, tree bertumbuh ke bawah, dengan demikian node anak akan di gambarkan berada di
bawah node induknya.
Node yg berada di pangkal tree disebut node akar/root, sedangkan node yg berada di paling
ujung pada piramida tree disebut node daun/leaf.
Akar/root adalah simpul yg tidak memiliki superordinat.
Daun/leaf adalah simpul yg tidak memiliki subordinat.
Tingkat/level : root dinyatakan berada pada level 0 (namun ada juga beberapa buku
literature lain menyebutkan level 1).
Degree pada suatu node menyatakan jumlah subordinat dari node tersebut.
-
3
BAB II
PENJELASAN PROGRAM
Pada penjelasan program bab ini akan dijelaskan mengenai bagaimana melakukan
pemrograman C++ dengan menggunakan Tree secara sederhana sesuai dengan modul praktikum.
Program Tree
/* * Tree.cpp * * Created on: Sep 10, 2014 * Author: LENOVO */ #include using namespace std; struct Node { int data; Node *kiri; Node *kanan; }; void tambah(Node **root, int databaru) { if((*root) == NULL) { Node *baru; baru = new Node; baru->data=databaru; baru->kiri=NULL; baru->kanan=NULL; (*root)=baru; (*root)->kiri=NULL; (*root)->kanan=NULL; coutkiri,databaru);
-
4
else if(databaru > (*root)->data) tambah(&(*root)->kanan,databaru); else if(databaru = (*root)->data) coutkiri); coutkanan); } } void postOrder(Node *root) { if(root != NULL) { postOrder(root->kiri); postOrder(root->kanan); cout
-
5
else cout
-
6
Pembahasan Program Tree
1. Tanda yang diawali dengan /* dan diakhiri tanda */ merupakan script untuk membuat
sebuah komentar pada pemrograman C++ yang jika didalamnya terdapat sebuah perintah
atau teks maka ketika program dirunning atau dijalankan tidak akan dibaca oleh compiler.
2. #include atau disebut sebagai pengarah preprocessor #include berfungsi untuk
menginstruksikan compiler untuk menyertakan berkas C++ sumber yang lain sebelum
kompilasi dimulai.
3. untuk memanggil fungsi cout dan cin dalam C++.
4. using namespace std; adalah standar deviasi dalam sebuah program dalam bahasa
pemrograman C++.
5. Tanda kurung kurawal {} dimaksudkan untuk mengawali dan mengakhiri bagian main.
6. Tanda ; digunakan untuk mengakhiri sebuah pernyataan.
7. int main(),menyatakan tipe nilai balik fungsi main.
8. cout dipakai untuk menampilkan teks/data ke layar monitor sehingga menjadi output.
9. struct Node { int data;
Node *kiri;
-
7
Node *kanan; };
Ini merupakan statement yang digunakan untuk membuat tipe data abstrak struct dalam C++. Data, Node *kiri, Node *kanan merupakan variable bertipe data integer yang berada dalam struct node.
10. void tambah(Node **root, int databaru) {
if((*root) == NULL) { Node *baru; baru = new Node; baru->data=databaru; baru->kiri=NULL; baru->kanan=NULL; (*root)=baru; (*root)->kiri=NULL; (*root)->kanan=NULL; coutkiri,databaru); else if(databaru > (*root)->data) tambah(&(*root)->kanan,databaru); else if(databaru = (*root)->data) cout
-
8
{ if(root != NULL) { inOrder(root->kiri); coutkanan); }
}
Ini merupakan statement untuk pembuatan prosedur inOrder.
13. void postOrder(Node *root)
{ if(root != NULL) { postOrder(root->kiri); postOrder(root->kanan); cout
-
9
break; case 2: if(pohon!=NULL) preOrder(pohon); else cout
-
10
BAB III
KESIMPULAN
Dari praktikum yang telah kita buat di atas, dapat disimpulkan bahwa dalam bahasa
pemrograman eclipse c++ #include tidak perlu menggunakan .h. Perintah clrscr() tidak
dapat digunakan atau sulit digunakan dalam eclipse, maka untuk mengatasinya digunakan perintah
\n atau endl. Karena, clrscr itu maksudnya adalah clear screen. Dan juga jika menggunkan switch-
case kita bisa lebih mudah dalam melakukan pemilihan dalam bahasa pemrograman C++. Dan
dalam eclipse juga disarankan untuk tidak memakai getch(), tapi sebaiknya menggunakan return
0.
-
11
DAFTAR PUSTAKA
1. Ardhana, YM Kusuma. 2013. Struktur Data dalam Ilustrasi Eclups Indigo C ++.
Yogyakarta: CAPS (Center of Academic Publishing Service).
2. Murya Kusuma Ardhana, Yosef dan Gregorius Airlangga. 2011. AlgoritmaPemrograman
C++ Dalam Ilustrasi. Jasakom : Yogyakarta.
3. Kadir, Abdul. 2012. Buku Pintar C++ Untuk Pemula. Yogyakarta: MediaKom.