Senin, 28 April 2025

Notasi Sisipan dan Notasi Akhiran dalam Kalimat Matematika

Pernahkah kalian memperhatikan perbedaan kalkulator dagang dengan kalkulator ilmiah? Bagaimana bisa kalkulator ilmiah menentukan urutan perhitungan? Loh, kalkulator yang di ponsel pintar itu kalkulator ilmiah?

Apa perbedaannya?

Perbedaan keduanya ada pada urutan menghitungnya. Kalkulator dagang memiliki keterbatasan memori dan daya komputasi sehingga perhitungan langsung dilakukan setiap tombol operator berikutnya ditekan (termasuk tanda sama dengan), sedangkan kalkulator ilmiah membaca kalimat matematika (KM) secara keseluruhan, menentukan urutan perhitungan, lalu melakukan perhitungan sesuai urutan seharusnya.

Sebagai contoh, berikut yang muncul ketika menekan tombol 2 + 3 × 7 = pada kalkulator dagang. Perhatikan bahwa perhitungan langsung dijalankan setiap tombol operator ditekan dan nilai itu yang disimpan dalam memorinya yang terbatas.

Tombol yang Ditekan Hasil pada Layar Memori Internal Kalimat Matematika
2202
+222 +
3322 + 3
×55(2 + 3) ×
775(2 + 3) × 7
=3535((2 + 3) × 7)

Bagaimana kalkulator ilmiah menentukan urutan perhitungan?

Sebagai manusia, kita biasanya akan mencari operator yang urutannya didahulukan, misalnya perkalian (×) lebih dahulu daripada penjumlahan (+). Kalimat matematika (KM) yang biasa kita pakai menggunakan notasi sisipan (infix notation), yaitu tanda operator berada di antara dua bilangan/KM yang akan dikenai operasi. Misalnya 2 + 3 berarti operasi penjumlahan antara 2 dan 3 dengan tanda tambah (+) berada di antara keduanya.

Salah satu cara yang lebih mudah bagi komputer adalah dengan menggunakan notasi akhiran (postfix notation atau reverse Polish notation/RPN), yaitu tanda operator berada di akhir dua bilangan/KM yang akan dikenai operasi. Misalnya 2 3 + berarti operasi penjumlahan antara 2 dan 3 dengan tanda tambah (+) berada di akhir/setelah keduanya.

Cara ini lebih mudah untuk diprogram dan dijalankan oleh komputer dengan menggunakan struktur data tumpukan/stack. Kita cukup memasukkan tiap bilangan/KM ke dalam tumpukan. Bila kita bertemu dengan tanda operator, kita ambil dua teratas dari tumpukan lalu melakukan operasi terhadap keduanya. Hasilnya ditaruh di atas tumpukan kembali. Setelah selesai, hasilnya adalah satu bilangan di tumpukan itu.

Sebagai contoh, berikut cara menghitung 2 3 7 × + dengan notasi akhiran. Perhatikan tumpukan setiap kita sampai tanda operator.

Tumpukan Kursor Sisa Kalimat
223 7 × +
3
2
37 × +
7
3
2
7× +
21
2
×+
23+

Bagaimana cara mengubah dari notasi sisipan ke notasi akhiran?

Ada beberapa cara untuk mengubahnya. Yang terkenal karena sederhana adalah algoritma shunting yard/depo gerbong karena bisa diilustrasikan dengan depo gerbong. Algoritma ini ditemukan oleh Edsger Wybe Dijkstra dalam artikelnya tahun 1961. Kita bahas lain kali, ya.

Potongan layar artikel yang menunjukkan diagram depo gerbong dengan masukan dari sisi kanan, keluaran di sisi kiri, dan depo gerbong di sisi bawah
Diagram depo gerbong

Eh, kalkulator di ponsel pintar bagaimana?

Oh, iya. Coba saja jalankan 2 + 3 × 7 = pada kalkulator di ponsel pintar kalian. Jawaban yang mana yang muncul?

Penutup

Itu yang bisa kutulis kali ini. Topik ini terpikirkan karena sempat ada masalah pada program pembuat soal di web TTL, khususnya pembuat soal operasi pecahan yang masih menggunakan cara kalkulator dagang dan belum menggunakan cara kalkulator ilmiah. Semoga bermanfaat!