infix posfix prefix

Assalamualaikum warahmatullah di postingan kali ini akan membahas tentang infix, posfix, dan prefix
Didalam struktur data ada notasi yang dilakukan untuk operasi aritmatika notasi tersebut disebut infix, postfix dan prefix, sebelum mengetahui lebih dalam dari notasi tersebut kita harus tahu hal yang mendasari notasi tersebut yaitu operand dan operator.
Operand adalah data atau nilai yang membantu dalam proses, sedangkan Operator adalah fungsi yang digunakan dalam proses.

Contoh :
A + B * C
2 + 3 * 5
Keterangan : A, B, C, 2, 3, 5 adalah operand
+, * adalah operator

selanjutnya kita harus mengerti tingkatan/level indikator dalam notasi tersebut,



1. ^ (pangkat)
2. * (kali) atau / (bagi)
3. + (jumlah) atau – (kurang)






1. Prefix
yaitu notasi yang terbentuk atas operator dengan operand, dimana operator berada didepan operand.
Contoh :  A + B * C (Infix)
maka notasi prefixnya adalah   +A*BC
    Pemecahannya :
                       A  +  B  *  C
diketahaui ada 3 operand yaitu : A, B, C, dan 2 operator yaitu : +, *. Proses dimulai  dengan melihat dari hirarkhi operator. Contoh diatas operator yang tertinggi adalah * kemudian +.
Tanda * diapit oleh dua operand yaitu B dan C yaitu B * C , prefixnya dengan menggabungkan operand dan memindahkan operator kedepan dari operand, sehingga fungsi B * C, notasi prefixnya menjadi *BC. Sehingga hasil sementara dari notasi prefix adalah
       A + *BC
selanjutnya mencari prefix untuk operator yang berikutnya, yaitu +, cara yang dilakukan sama seperti di atas, operator +, diapit oleh 2 operand, yaitu A dan *BC, gabungkan operand, sehingga menjadi A*BC, lalu pindahkan operator kedepan operand, sehingga hasil akhir menjadi
      + A * B C
Contoh yang lain:
1.  A + B  – C * D
        2     3    1   —–>    hirarkhi level
     A + B – *CD   —–>    1
     +AB – *CD     —–>    2
     – +AB *CD     —–>    3
2. A * B ^ C – D
       2   1    3      —–>    hirarkhi
    A * ^BC – D     —–>    1
    *A^BC – D       —–>    2
    -*A^BCD         —–>    3
3.  A + ( B – C ) * D
        3      1      2   —–> hirarkhi
     A + -BC * D      —–>  1 (karena diapit tanda paranthesis atau kurung buka/tutup,( ) )
     A + *-BCD        —–>  2
     + A *-BCD        —–>  3
2. Infix
yaitu notasi yang terbentuk atas operator dengan operand, dimana operator berada diantara operand. Notasi ini hanya dikenal oleh manusia dan selalu digunakan dalam perhitungan aritmatika.
     Contoh :  A + B * C
                    ( A + B ) * C
                    A – ( B + C ) * D ^ E
3. Postfix
yaitu notasi yang terbentuk atas operator dengan operand, dimana operator berada dibelakang operand. Notasi ini hanya dikenal oleh processor dan dipahami dalam ALU.
     Contoh :  A + B * C (Infix)
maka notasi postfixnya adalah   ABC*+
    Pemecahannya :
                       A  +  B  *  C
diketahaui ada 3 operand yaitu : A, B, C, dan 2 operator yaitu : +, *. Proses dimulai  dengan melihat dari hirarkhi operator. Contoh diatas operator yang tertinggi adalah * kemudian +.
Tanda * diapit oleh dua operand yaitu B dan C yaitu B * C , postfixnya dengan menggabungkan operand B dan C menjadi BC lalu memindahkan operator ke belakang operand C, sehingga fungsi B * C, notasi postfixnya menjadi BC*. Sehingga hasil sementara dari notasi postfix adalah
       A + BC*
selanjutnya mencari postfix untuk operator yang berikutnya, yaitu +, cara yang dilakukan sama seperti di atas, operator +, diapit oleh 2 operand, yaitu A dan BC*, gabungkan operand tersebut, sehingga menjadi ABC*, lalu pindahkan operator + ke belakang operand ABC*, sehingga hasil akhir menjadi
      ABC*+
Contoh yang lain:
1.  A + B  – C * D
        2     3    1   —–>    hirarkhi level
     A + B – CD*   —–>    1
     AB+ – CD*     —–>    2
     AB+CD*-       —–>    3
2. A * B ^ C – D
       2   1    3      —–>    hirarkhi
    A * BC^ – D     —–>    1
    ABC^* – D       —–>    2
    ABC^*D-         —–>    3
3.  A + ( B – C ) * D
        3      1      2   —–> hirarkhi
     A + BC- * D      —–>  1 (karena diapit tanda paranthesis atau kurung buka/tutup,( ) )
     A + BC-D*        —–>  2
     A BC-D*+         —–>  3





contoh source code :
codingan konversi postfix ke infix




nah itulah sedikit yang penjelesan dari postingan kali ini semoga membantu ya. terimakasih
Wassalamualaikum wr wb

Tidak ada komentar:

Posting Komentar