Prioritas Operator
Termasuk bagian Dasar-Dasar dalam perjalanan PHP di Coddy. Pelajaran 20 dari 71.
Saat sebuah ekspresi memuat beberapa operator, PHP mengikuti urutan tertentu yang disebut prioritas operator. Sama seperti dalam matematika, perkalian dan pembagian dilakukan sebelum penjumlahan dan pengurangan.
<?php
echo 5 + 3 * 2; // Output: 11, bukan 16
?>PHP mengalikan 3 × 2 terlebih dahulu (hasilnya 6), lalu menambahkan 5. Jika operator memiliki prioritas yang sama, PHP akan menghitung dari kiri ke kanan: 5 + 3 = 8, lalu 8 × 2 = 16. Namun, cara kerjanya tidak seperti itu.
Berikut urutan prioritas operator yang sudah kamu pelajari, dari tertinggi ke terendah:
| Prioritas | Operator |
| Tertinggi | ** (perpangkatan) |
| Tinggi | * / % |
| Rendah | + - |
Untuk mengubah urutan bawaan, gunakan tanda kurung. Operasi di dalam tanda kurung selalu dievaluasi terlebih dahulu:
<?php
echo (5 + 3) * 2; // Output: 16
echo 2 ** 3 * 2; // Output: 16 (8 * 2)
echo 2 ** (3 * 2); // Output: 64 (2^6)
?>Jika ragu, gunakan tanda kurung untuk memperjelas maksudmu. Kode jadi lebih mudah dibaca dan hasil yang tidak terduga bisa dicegah.
Tantangan
MudahBaca tiga angka dari input: a, b, dan c.
Hitung dan cetak hasil ekspresi berikut, gunakan tanda kurung untuk memastikan penjumlahan dilakukan sebelum perkalian:
(a + b) * c ** 2
Artinya: pertama, jumlahkan a dan b, lalu kalikan hasil penjumlahan itu dengan c yang dipangkatkan 2.
Contoh:
Jika inputnya adalah 2, 3, dan 4, outputnya harus berupa 80 karena:
- Pertama, jumlahkan 2 + 3 = 5
- Lalu, hitung 4 ** 2 = 16
- Terakhir, kalikan 5 * 16 = 80
Coba sendiri
<?php
// Baca input
$a = intval(fgets(STDIN));
$b = intval(fgets(STDIN));
$c = intval(fgets(STDIN));
// TODO: Tulis kodemu di bawah ini untuk menghitung (a + b) * c ** 2
// Tampilkan hasilnya sebagai output
echo $result;
?>Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Perbandingan & Logika
Operator PerbandinganKesamaan & IdentitasOperator Logika Bagian 1Operator Logika Bagian 2Rangkuman: Logika Sederhana2Variabel dan Tipe Data
AngkaString dan Tanda KutipBooleanKonvensi PenamaanRangkuman, Inisialisasi VariabelVariabel KosongPenggabungan stringMengambil input PenggunaKonversi ke Tipe Data Lain5Logika Percabangan
Pernyataan ifIf-elseOperator ternaryOperator koalesensi nullPernyataan switchRangkuman: Membuat Keputusan3Operator Dasar
Operator AritmetikaOperator ModuloOperator PangkatPenugasan GabunganInkrementasi/DekrementasiPrioritas OperatorUlasan: Perhitungan SederhanaOperator stringLatihan sendiri: Compiler PHP online