REKAYASA PERANGKAT LUNAK PEMBELAJARAN POHON EKSPRESI (EXPRESSION TREE)

dokumen-dokumen yang mirip
APLIKASI MODUL PEMBELAJARAN POHON EKSPRESI MENGGUNAKAN VISUAL BASIC

BAB IV POHON. Diktat Algoritma dan Struktur Data 2

Algoritma Pemrograman

BAB II LANDASAN TEORI

Algoritma Pemrograman

Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

B C D E F G H I J K L M N O P Q R S T. Tinaliah, S.Kom POHON BINER

Algoritma Pemrograman

INFIX, POSTFIX, dan PREFIX Bambang Wahyudi

BAB IV IMPLEMENTASI DAN PENGUJIAN

Tree (Struktur Data) Nisa ul Hafidhoh, MT

BAB 2 LANDASAN TEORI

Pohon dan Pohon Biner

BAB VII POHON BINAR POHON

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 10 & 11

TREE STRUCTURE (Struktur Pohon)

Algoritma dan Struktur Data

TUGAS MAKALAH INDIVIDUAL. Mata Kuliah : Matematika Diskrit / IF2153 Nama : Dwitiyo Abhirama NIM :

Termilogi Pada Pohon Berakar 10 Pohon Berakar Terurut

BAB VII Tujuan 7.1 Deskripsi dari Binary Tree

Tenia Wahyuningrum, S.Kom. MT Sisilia Thya Safitri, S.T.,M.T.

Operator. Donny Reza, S.Kom Aplikasi IT 2 Program Studi Akuntansi

KUNJUNGAN PADA POHON BINER

KLASIFIKASI BINARY TREE

SEMANTIK. Sintak mendifinisikan suatu bentuk program yang benar dari suatu bahasa.

Politeknik Elektronika Negeri Surabaya

Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013

ALGORITMA-ALGORITMA PARALLEL RANDOM ACCESS MACHINE (PRAM = pea ram)

Algoritma dan Struktur Data. Binary Tree & Binary Search Tree (BST)

6. TREE / BINARY TREE

BAB II LANDASAN TEORI

Pohon. Bahan Kuliah IF2120 Matematika Diskrit. Program Studi Teknik Informatika ITB. Rinaldi M/IF2120 Matdis 1

BAB III ANALISA DAN PERANCANGAN

SOAL TUGAS STRUKTUR DATA

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator

Pohon (TREE) Matematika Deskrit. Hasanuddin Sirait, MT 1

SEMANTIK. Int vector[10];

Algoritma Euclidean dan Struktur Data Pohon dalam Bahasa Pemrograman LISP

Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF

T I P E D A T A P R I M I T I F V A R I A B E L D A N S T A T E M E N P E N U G A S A N E K S P R E S I D A N O P E R A T O R A R I T M A T I K A

20/01/2012. Oleh : Fiftin Noviyanto

Oleh : Fiftin Noviyanto

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Definisi. Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk terhubung)

Materi. Tipe, Variabel dan Operator Algoritma Pemrograman PENULISAN ALGORITMA PENULISAN ALGORITMA 15/03/2010 NAMA DAN EKSPRESI

Definisi. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon

Struktur Data & Algoritma

Algoritma dan Struktur Data

Buku Ajar Struktur Data

Binary Tree kosong Gambar 1. Binary Tree dalam kondisi kosong

SEKILAS JENIS-JENIS OPERATOR OPERATOR PENUGASAN OPERATOR ARITMATIKA OPERATOR MAJEMUK

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Jurnal Mahajana Informasi, Vol.1 No 2, 2016 e-issn: SIMULASI PENGURUTAN DATA DENGAN ALGORITMA HEAP SORT

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Bab III Semantik. Konsep Semantik Bahasa Pemrograman (Semantik Analisis)

TEKNIK KOMPILASI Tony Darmanto,ST / Smt V S1 TI / STMIK WIDYA DHARMA/ Hal 1

Mata Kuliah : Matematika Diskrit Program Studi : Teknik Informatika Minggu ke : 8

TERAPAN POHON BINER 1

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Algoritma dan Struktur Data I 2014

BAB II STACK (TUMPUKAN)

ANALISIS ALGORITMA PEMBANGUN POHON EKSPRESI DARI NOTASI PREFIKS DAN POSTFIKS

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

KKKF33110 STRUKTUR DATA

Pertemuan 15 REVIEW & QUIS

DEFINISI. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 2

FAKULTAS TEKNOLOGI KOMUNIKASI DAN INFORMATIKA UNIVERSITAS NASIONAL

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

OPERATOR. Percobaan 1: Mengimplementasikan Assignment operator dalam bahasa C.

ALGORITMA PEMROGRAMAN 1C SEMANTIKS

STRUKTUR DATA Pertemuan 4

APLIKASI PERANGKAT AJAR PENGELOLAAN DAN PERHITUNGAN EKSPRESI MATEMATIKA DARYANTO

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5

Aplikasi Rekursif dalam Analisis Sintaks Program

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

Perangkat Lunak Simulasi Langkah Kuda Dalam Permainan Catur

8/29/2014. Kode MK/ Nama MK. Matematika Diskrit 2 8/29/2014

PIRANTI LUNAK UNTUK MENDESAIN PROGRAM DALAM BAHASA PEMROGRAMAN C BERDASARKAN HOARE LOGIC

Fase-fase proses sebuah kompilasi

HARGA & EKSPRESI Input dan Output

MODUL 3 ALGORITMA PEMROGRAMAN

PENGANTAR KOMPUTER & SOFTWARE I REPRESENTASI DATA

BAB II STACK Atau TUMPUKAN

PENGANTAR KOMPUTER & SOFTWARE I REPRESENTASI DATA

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

Pohon Biner (Bagian 1)

Mata Kuliah : Struktur Data Semester : Genap Kode Mata Kuliah : 307 Waktu : 180 Menit Bobot : 4 sks. Jurusan : MI

TREE ALGORITMA & STRUKTUR DATA. Materi ASD Fakultas Teknik Elektro & Komputer UKSW ( Download Dari :

Variabel, Tipe Data, dan Operator. Oleh : Edi Sugiarto, S.Kom, M.Kom

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS

BAB XI Manipulasi Binary Tree

LAPORAN PRAKTIKUM STRUKTUR DATA

Optimalisasi Algoritma Pencarian Data Memanfaatkan Pohon Biner Terurut

PERTEMUAN 7 REVIEW (QUIZ)


Transkripsi:

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 REKAYASA PERANGKAT UNAK PEMEAARAN POHON EKSPRESI (EXPRESSION TREE) Sumardi Program Studi Teknik Informatika, Fakultas Ilmu Komputer Universitas ian Nuswantoro l. Nakula I No. 5-11 Semarang 50131 Telp : (024) 3517261, Fax : (024) 3520165 E-mail : mardis_2000@yahoo.com Abstract Tree ( tree) is a binary tree (binary tree) where the leaves contain operands contained in an arithmetic and roots contain operators contained in the arithmetic. The process of reading from the tree starting from the leftmost leaf to the main root. Operands and operators who are at lower levels will be read first. Writing an arithmetic consists of three forms, namely forms of, Suffix (Postfix) and infix. In the form of, the operator is written in front of operandnya, and in the form of Suffix (Postfix), the operator is written on the back of operandnya. While the infix form is a normal form of writing arithmetic s. ased on the research made, a learning software is designed to describe the tree ( tree) of an arithmetic that are input. After testing the system turns the system can work well, but still there are some things that should be corrected and added that the software is becoming more perfect. Keywords : Expression tree,, Suffix, Postfix, 1. PENAHUUAN Suatu komputer dapat melaksanakan sesuatu bila kepadanya diberikan sederetan perintah/instruksi yang dimengertinya yang diurut secara logika. eretan perintah ini disebut program. Sekumpulan aturan-aturan dalam membuat program disebut sebagai bahasa pemrograman (Programming anguage). Karena komputer itu adalah suatu mesin, maka insruksi dan bahasa yang dimengerti olehnya adalah juga instruksi dan bahasa mesin. ahasa mesin pada dasarnya hanya mengandung dua simbol yaitu simbol biner 0 dan 1 sehingga sangat sulit bagi manusia membuat program untuk komputer dalam bahasa mesin, terlebih lagi karena setiap jenis komputer mempunyai bahasa mesin sendiri yang berbeda dari satu komputer ke komputer lain. Untuk memudahkan manusia membuat program komputer, telah diciptakan bermacam-macam bahasa pemrograman. Secara garis besar, bahasa pemrograman dapat dibagi menjadi dua bagian besar yaitu, 1. ahasa Pemrograman Tingkat Rendah (ow evel anguage), contohnya bahasa pemrograman Assembly. 2. ahasa Pemrograman Tingkat Tinggi (High evel anguage), contohnya bahasa pemrograman 153

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 154 FORTRAN, OO, ASI, Pascal, RPG, dan sebagainya. Kelemahan semua bahasa pemrograman ini adalah dibutuhkannya proses penerjemah dan sarana penerjemah berupa Assembler, ompiler atau Interpreter. Selain itu, program yang dibuat dengan menggunakan bahasa pemrograman tingkat tinggi pada umumnya tidak dapat menjangkau keseluruhan bagian komputer dimana program tersebut dilaksanakan. Program yang dapat menjangkau dan memanfaatkan seluruh kemampuan komputer hanyalah yang dibuat dalam bahasa mesin atau bahasa Assembly. Tujuan dari pembuatan bahasa pemrograman tingkat tinggi pada awalnya hanya ditujukan untuk menyelesaikan ekspresi aritmatika. Sebuah bahasa pemrograman dikatakan baik apabila mampu untuk memberikan keleluasaan kepada para programmer untuk menuliskan ekspresi aritmatika dengan ketentuan yang hampir sama seperti penulisan matematika secara manual. Sebuah compiler dikatakan berkompeten apabila mampu untuk membaca ekspresi ekspresi berikut ini, (x + y) * exp(x z) 4.0 a * b + c / d c * (x + y) not (p and q) or (x <= 7.0) Pohon ekspresi ( tree) adalah sebuah pohon biner (binary tree) dimana daun berisi operand yang terdapat dalam ekspresi aritmatika dan akar berisi operator yang terdapat dalam ekspresi aritmatika tersebut. Proses pembacaan dari pohon ekspresi dimulai dari daun paling kiri hingga akar utama. Operand dan operator yang berada pada level bawah akan dibaca terlebih dahulu. Penelusuran pohon ekspresi ditujukan untuk menyelesaikan ekspresi aritmatika. Penulisan ekspresi aritmatika terdiri dari 3 bentuk, yaitu bentuk, Suffix (Postfix) dan. alam bentuk, operator ditulis di depan dari operandnya, dan dalam bentuk Suffix (Postfix), operator ditulis di belakang dari operandnya. Sedangkan bentuk merupakan bentuk penulisan normal dari ekspresi aritmatika. 2. TINAUAN PUSTAKA Ekspresi Aritmatika Sebuah ekspresi aritmatika terdiri dari operand dan operator. Operator dalam ekspresi aritmatika dapat dibagi menjadi 2 jenis, yaitu : inary operator (operator pasangan) dan Unary operator (operator tunggal) inary operator adalah operator yang memiliki 2 buah operand (diapit oleh 2 buah operand), sedangkan unary operator adalah operator yang hanya memiliki 1 buah operand (diikuti oleh sebuah operand). Operator operator yang termasuk dalam binary operator adalah operator penjumlahan (+), pengurangan (-), perkalian (*), pembagian (/), modulo (mod), divisor (div), pemangkatan (^), operator logika AN, operator logika OR, dan operator perbandingan (seperti operator lebih besar, lebih kecil, sama dengan, lebih besar sama dengan, lebih kecil sama dengan, dan tidak sama dengan). Sedangkan operator yang termasuk dalam unary operator adalah operator minus (~), operator faktorial (!), operator trigonometri (seperti operator sinus, cosinus, tangen, cotangen, secan, dan cosecan), operator logika NOT, operator exponential (exp) dan fungsi logaritma (log). Prioritas/kedudukan dari masing masing operator (baik unary operator maupun binary operator) dari tinggi ke rendah adalah sebagai berikut,

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 155 1. Operator pemangkatan (^) dan semua unary operator. 2. Operator perkalian (*), pembagian (/), modulo (mod) dan divisor (div). 3. Operator penjumlahan (+) dan pengurangan (-). 4. Operator perbandingan, yaitu operator lebih besar, lebih kecil, sama dengan, lebih besar sama dengan, lebih kecil sama dengan, dan tidak sama dengan. 5. Operator logika NOT. 6. Operator logika AN dan OR. 7. Assignment Operator (=). Ekspresi aritmatika akan diselesaikan berdasarkan urutan prioritas dari operator di atas dengan ketentuan operator yang memiliki prioritas yang lebih tinggi akan diselesaikan terlebih dahulu. Tahapan tahapan penyelesaian suatu ekspresi aritmatika dapat direpresentasikan dalam bentuk graph yang dinamakan pohon ekspresi ( tree). Notasi/Penulisan Ekspresi Aritmatika Polish Notation diperkenalkan oleh seorang ahli matematika Polandia bernama an ukasiewicz. Polish Notation merupakan notasi penulisan ekspresi aritmatika. Polish Notation terdiri dari 3 bentuk, yaitu : a. b. Suffix (Postfix) c. dengan dua buah infix. iagram bentuk infix dapat dilihat pada gambar di bawah ini. entuk prefix merupakan cara / bentuk penulisan ekspresi aritmatika dimana operator ditulis di depan dari operandnya. Suatu prefix dapat berupa operand tunggal, atau gabungan dari unary operator dengan prefix, ataupun berupa gabungan dari binary operator dengan dua buah prefix. iagram bentuk prefix dapat dilihat pada gambar di bawah ini. Suffix (Postfix) entuk suffix (postfix) merupakan cara / bentuk penulisan ekspresi aritmatika dimana operator ditulis di belakang dari operandnya. Suatu suffix dapat berupa operand tunggal, atau gabungan dari suffix dengan unary operator, ataupun berupa gabungan dari dua buah suffix dengan binary operator. iagram bentuk suffix dapat dilihat pada gambar di bawah ini. entuk infix merupakan bentuk penulisan normal dari ekspresi aritmatika. Suatu infix dapat berupa operand tunggal, atau gabungan dari unary operator dengan infix, ataupun berupa gabungan dari binary operator

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 156 Operand Unary operator inary operator Gambar 1 : iagram bentuk infix Operand Unary operator inary operator Gambar 2: iagram bentuk prefix Operand Suffix Suffix Unary operator Suffix Suffix inary operator Gambar 3: iagram bentuk suffix Pohon Ekspresi (Expression Tree) Pohon ekspresi ( tree) adalah sebuah pohon biner (binary tree) dimana daun berisi operand yang terdapat dalam ekspresi aritmatika dan akar berisi operator yang terdapat dalam ekspresi aritmatika tersebut. Proses pembacaan dari pohon ekspresi dimulai dari daun paling kiri hingga akar utama. Operand dan operator yang berada pada level bawah akan dibaca terlebih dahulu. Sebagai contoh, misalkan diketahui sebuah ekspresi matematika x * y + 2 * (z 3), maka pohon ekspresinya adalah sebagai berikut, x * y + 2 * - z 3 Gambar 4 : Pohon ekspresi untuk ekspresi aritmatika x * y + 2 * (z 3)

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 157 Proses Traversal pada inary Tree Pohon biner (inary Tree) dapat ditelusuri dengan 4 cara yakni: Preorder Traversal (Penelusuran Preorder) Preorder etak Node H A etak Node A (kosong) etak Node K etak Node etak Node etak Node (kosong) (kosong) etak Node (kosong) (kosong) (kosong) K (kosong) etak Node (kosong) (kosong) Gambar 5: Proses Preorder traversal dari binary tree Inorder Traversal (Penelusuran Inorder) Inorder A etak Node H (kosong) etak Node A etak Node (kosong) etak Node (kosong) etak Node (kosong) (kosong) etak Node (kosong) K etak Node K (kosong) (kosong) etak Node (kosong) Gambar 6: Proses Inorder Traversal dari binary Tree

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 158 Postorder Traversal (Penelusuran Postorder) (kosong) Postorder A K etak Node H (kosong) etak Node A Gambar 7: Proses Postorder Traversal dari binary tree etak Node K etak Node (kosong) etak Node (kosong) (kosong) etak Node (kosong) (kosong) etak Node (kosong) etak Node (kosong) 3. PEMAHASAN Algoritma Pembagian Ekspresi Aritmatika ke bentuk Sub Ekspresi Aritmatika Proses penggambaran pohon ekspresi membutuhkan sub sub ekspresi aritmatika pada setiap tahapnya. Oleh karena itu, ekspresi aritmatika yang diinput harus dibagi ke bentuk sub ekspresi aritmatika sebelum memasuki proses penggambaran pohon ekspresi. Algoritma pembagian ekspresi aritmatika ke bentuk sub ekspresi aritmatika terbagi atas 3 (tiga) algoritma yaitu, algoritma pembagian untuk bentuk prefix, suffix (postfix) dan infix. Algoritma Pembagian Ekspresi Aritmatika dalam entuk ke entuk Sub Ekspresi Aritmatika Sebagai contoh, penulis meng-input data sebagai berikut. Ekspresi Aritmatika dalam bentuk : - + ~ g ^ a 2 * 4 + * b c/ d e. Proses pembagian ekspresi aritmatika ke sub ekspresi aritmatika, adalah sebagai berikut : Gambar 8: Hasil Pembagian ke Sub Ekspresi Aritmatika dengan Input Ekspresi Aritmatika dalam bentuk -+~g^a2*4+*bc/de Algoritma Pembagian Ekspresi Aritmatika dalam entuk Suffix (Postfix) ke entuk Sub Ekspresi Aritmatika ontoh Input Ekspresi Aritmatika dalam bentuk Suffix (Postfix) : c a ^ b * z ~ c e * + / d -.

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 159 Proses pembagian ekspresi aritmatika ke sub ekspresi aritmatika, adalah sebagai berikut : aritmatika yang telah dihasilkan oleh algoritma pembagian. Hasil penggambaran struktur pohon ekspresi dalam bentuk prefix - + ~ g ^ a 2 * 4 + * b c / d e Gambar 9 : Hasil Pembagian ke Sub Ekspresi Aritmatika dengan Input Ekspresi Aritmatika dalam bentuk Suffix c a ^ b * z ~ c e * + / d - Algoritma Pembagian Ekspresi Aritmatika dalam entuk ke entuk Sub Ekspresi Aritmatika ontoh Input Ekspresi Aritmatika dalam bentuk (entuk iasa) : (a+b)/c*5-((3\d)^(e^2*b)). Proses pembagian ekspresi aritmatika ke sub ekspresi aritmatika, adalah sebagai berikut : Gambar 11 : Hasil Penggambaran Struktur Pohon Ekspresi dengan Input Ekspresi Aritmatika dalam bentuk -+~g^a2*4+*bc/de Hasil penggambaran struktur pohon ekspresi dalam bentuk infix (a+b)/c*5-((3\d)^(e^2*b)) Gambar 12 : Hasil Penggambaran Struktur Pohon Ekspresi dengan Input Ekspresi Aritmatika dalam bentuk (iasa) (a+b)/c*5-((3\d)^(e^2*b)) Algoritma Proses Traversal Pre Order Gambar 10 : Hasil Pembagian ke Sub Ekspresi Aritmatika dengan Input Ekspresi Aritmatika dalam bentuk (iasa) (a+b)/c*5-((3\d)^(e^2*b)) Algoritma Penggambaran Struktur Pohon Ekspresi Algoritma penggambaran berfungsi untuk menggambarkan struktur pohon ekspresi sesuai dengan sub ekspresi Algoritma proses traversal Pre Order mengunjungi semua data / node yang dimulai dari data akar, dilanjutkan ke sebelah kirinya, setelah itu dilanjutkan ke sebelah kanannya. Hasil proses traversal Pre Order menghasilkan ekspresi aritmatika dalam bentuk prefix. Hasil proses traversal Pre Order dari bentuk - + ~ g ^ a 2 * 4 + * b c / d e

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 160 Gambar 13: Hasil Proses Traversal Pre Order dengan Input Ekspresi Aritmatika dari bentuk -+~g^a2*4+*bc/de Algoritma proses traversal Pre Order adalah sebagai berikut : '--------- SIMUASI TRAVERSA PREORER Private Sub ProcPreOrder(pnNode As Integer, pcalur As String, yval pnspeed As Integer) 'Tree tidak kosong If pnnode <> 0 Then '----- Write (Aku.Isi) ShpNode(pnNode).Fillolor = &HFF& 'Merah lblnode(pnnode).fontold = True lblnode(pnnode).foreolor = pcalur = pcalur & ", " & lblnode(pnnode).aption 'elay 500 oevents Sleep pnspeed oevents ShpNode(pnNode).Fillolor = lblnode(pnnode).fontold = False lblnode(pnnode).foreolor = 0 'Hitam '------------------------------ 'Write (Aku.Kiri) all ProcPreOrder(ArrNode(pnNode).eft, pcalur, pnspeed) 'Write (Aku.Kanan) / Rekursif all ProcPreOrder(ArrNode(pnNode).Right, pcalur, pnspeed) End If End Sub Hasil proses traversal Pre Order dari bentuk Suffix ca^b*z~ce*+/d- Gambar 14: Hasil Proses Traversal Pre Order dengan Input Ekspresi Aritmatika dari bentuk Suffix ca^b*z~ce*+/d- Algoritma proses traversal In Order adalah sebagai berikut : '--------- SIMUASI TRAVERSA INORER Private Sub ProcInOrder(pnNode As Integer, pcalur As String, yval pnspeed As Integer) 'Tree tidak kosong If pnnode <> 0 Then 'Write (Aku.Kiri) / Rekursif all ProcInOrder(ArrNode(pnNode).eft, pcalur, pnspeed) '----- Write (Aku.Isi) ShpNode(pnNode).Fillolor = &HFF& 'Merah lblnode(pnnode).fontold = True lblnode(pnnode).foreolor = pcalur = pcalur & ", " & lblnode(pnnode).aption 'elay 500 oevents Sleep pnspeed oevents ShpNode(pnNode).Fillolor = lblnode(pnnode).fontold = False lblnode(pnnode).foreolor = 0 'Hitam '------------------------------ 'Write (Aku.Kanan) all ProcInOrder(ArrNode(pnNode).Right, pcalur, pnspeed) End If End Sub Hasil dari proses traversal In Order dikembalikan pada nilai variabel pcalur

Techno.OM, Vol. 10, No. 4, November 2011: 153-161 161 Hasil proses traversal Pre Order dari bentuk (iasa) (a+b)/c*5-((3\d)^(e^2*b)) Gambar 15 : Hasil Proses Traversal Pre Order dengan Input Ekspresi Aritmatika dari bentuk (iasa) (a+b)/c*5-((3\d)^(e^2*b)) Algoritma proses traversal Post Order adalah sebagai berikut : '--------- SIMUASI TRAVERSA POSTORER Private Sub ProcPostOrder(pnNode As Integer, pcalur As String, yval pnspeed As Integer) 'Tree tidak kosong If pnnode <> 0 Then 'Write (Aku.Kiri) all ProcPostOrder(ArrNode(pnNode).eft, pcalur, pnspeed) 'Write (Aku.Kanan) all ProcPostOrder(ArrNode(pnNode).Right, pcalur, pnspeed) '----- Write (Aku.Isi) ShpNode(pnNode).Fillolor = &HFF& 'Merah lblnode(pnnode).fontold = True lblnode(pnnode).foreolor = pcalur = pcalur & ", " & lblnode(pnnode).aption 4. SIMPUAN Setelah menyelesaikan perancangan perangkat lunak pembelajaran pohon ekspresi ( tree), peneliti berkesimpulan sebagai berikut : Perangkat lunak dapat melakukan validasi terhadap struktur prefix, infix dan postfix. Perangkat lunak didukung dengan visualisasi proses pembentukan pohon ekspresi, proses traversal, dan proses evaluasi. Perangkat lunak dapat digunakan untuk membantu pemahaman pembentukan pohon ekspresi. AFTAR PUSTAKA Alfred V.Aho, ohn E. Hopcroft, effrey. Ullman, 1983. ata Structures And Algorithms. Alfred V.Aho, Ravi Sethi, effrey. Ullman, 1986. ompilers, Principles, Techniques, and Tools Rahadian, Hadi, 2002. Pemrograman Windows API dengan Microsoft Visual asic 6.0, PT. Elex Media Komputindo. Rahmat Putar, 2005. The est Source ode Visual asic, PT. Elex Media Komputindo. Robert.Kruse, 1991. ata Structures & Program esign, Second Edition. 'elay 500 oevents Sleep pnspeed oevents ShpNode(pnNode).Fillolor = lblnode(pnnode).fontold = False lblnode(pnnode).foreolor = 0 'Hitam '------------------------------ End If End Sub