Tutorial Belajar Pascal Part 35: Urutan Prioritas Operator dalam Bahasa Pascal

Posted on

Dari sekianlah banyak operator di di bahasa pemrograman Pascal, Pascal mempunyai aturan operator mana yang akan didahulukan, atau dikenal pun dengan urutan prioritas operator. Di panduan ini akan kita bahas dengan lebih detail.


Urutan Prioritas Operator di Pascal

Selaku contoh kasus, silahkan sobat tebak apa hasil ahir dari kode program dibawah ini:

Apakah isi dari variabel hasil1 dan hasil2?

Untuk variabel hasil1 mungkin dapat kita tebak, yakni 26. Seperti yang kita pelajari di matematika, oparator perkalian lebih kuat daripada penambahan dan pengurangan. Sehingga yang akan dijalankan yaitu: 12 + (6 * 3) – 4 = 12 + 18 – 4 = 30 – 4 = 26.

Bagaimana dengan hasil2? Apakah hasilnya berupa angka (integer) atau boolean? Inilah peran dari prioritas operator. Hasilnya yaitu boolean FALSE. Operator perbandingan lebih besar dari “>” mempunyai tingkat prioritas yang lebih rendah daripada operator aritmatika. Oleh karena itu yang akan dijalankan Pascal yaitu: (12 + 6) > (6 * 4), menjadi 18 > 24 = false.

Berikut tabel urutan prioritas di di bahasa pemrograman Pascal:

Operator Tingkat Prioritas

, not, Betul-betul Tinggi
*, /, div, mod, and,
|, !, +, -, or,
=, <>, <, <=, >, >=, in
or else, and then Betul-betul Rendah

Selaku bahan latihan, bisakah sobat menebak hasil dari kode program berikut?

Hasilnya yaitu…. Error: Incompatible types: got “Boolean” expected “LongInt”.

Error diatas terjadi karena Pascal akan mencoba menjalankan operasi berikut:

Perhatikan bahwa di di Pascal operasi lintas tipe data seperti “1 and true” tak dapat diproses (error). Ini karena tingkat prioritas operator perkalian dan operator logika and lebih tinggi daripada yang lain.

Jadi, bagaimana solusinya?

Kita dapat menggunakan tanda kurung “(” dan “)” untuk meningkatkan urutan prioritas sebuah operasi, seandainya dari contoh sebelumnya saya ingin menjalankan seluruh operator aritmatika terlebih dahulu, saya dapat menulisnya seperti berikut ini:

Atau lebih jelas lagi seandainya ditulis selaku berikut:

Ini akan diproses menjadi: (18 > 17) and true, kemudian: true and true, yang hasilnya yaitu true. Berikut contoh penulisan kode program lengkapnya:

Walaupun bersifat opsional, menambahkan tanda kurung untuk operasi seperti diatas benar-benar disarankan, terutama untuk menghindari “salah prediksi” dari urutan operator.


Panduan kali ini menutup panduan mengenai operator di di pascal. Untuk operator bitwise, set/himpunan, dan pointer tak akan saya jelaskan karena penggunaannya benar-benar jarang.

Berikutnya kita akan masuk ke panduan mengenai struktur percabangan kode program dan perulangan, yang akan dimulai dengan cara penulisan struktur percabangan IF THEN di dalam bahasa pemrograman pascal.


Sumber https://www.duniailkom.com/