NOTASI INFIX, PREFIX, POSTFIX
Notasi Infix
ü Contoh : x + y
ü Operator ditulis diantara operand.
ü Sebagai contoh A* (B + C) / D yang biasa berarti “tambahkan B dan C terlebih dahulu, dan kalikan dengan A. Setelah itu bagi dengan D”.
ü Notasi infix membutuhkan informasi ekstra :
Ø Rule menngenai operator precendence
Ø Assosiatives dan tanda kurung ( )
Notasi Postfix
ü Dikenal juga dengan “Reverse Polish Notation” contoh : x y +
ü Operator ditulis setelah operand. Contoh lain : A B C + * D /
ü Operator selalu terurut dari kiri ke kanan, dan kurang tidak dapat dipergunakan untuk mengubah urutan operasi.
ü Contoh : pada notasi di atas, tanda + dikerjakan terlebih dahulu sebelum *.
ü Jika bertemu operator, maka operasi aritmetik akan sesegera mungkin dikerjakan. Contoh Jika ditemukan +, maka B dan C akan segera dijumlahkan.
Notasi Prefix
ü Dikenal juga dengan “ Polish Notation” contoh : + x y
ü Opeartor dituliskan sebelum operand. Pada contoh sebelumnya, jika dituliskan dalam prefix adalah : / * A + B C D
ü Sebagaimana postfix, operator dievaluasi dari kiri ke kanan.
ü Operator akan mengambil dua nilai operand terdekat pada kanan operator.
ü Meski pada prefix operator dievaluasi dari kiri ke kanan, namun prefix menggunakan nilai pada bagian kanan. Jika nilai operand melibatkan komputasi, maka akan mengubah urutan operator.
Contoh lain :
INFIX
|
POSTFIX
|
PREFIX
|
NOTE
|
A * B + C / D
|
A B * C D / +
|
+ * A B / C D
|
Kalikan A dan B. Bagi C dg D, tambahkan hasilnya.
|
A * (B + C) / D
|
A B C + * D /
|
/ * A + B C D
|
Tambahkan B dan C, kalikan dengan A, bagi dengan D.
|
A * (B + C / D)
|
A B C D / + *
|
* A + B / C D
|
Bagi C dengan D, tambahkan B, kalikan dengan A
|
Contoh Penulisan :
0 komentar:
Posting Komentar