Bahasa pemrograman PHP datang dengan membawa banyak fungsi-fungsi yang berkaitan dengan matematika, seperti fungsi absolut, perpangkatan, akar kuadrat, konversi sudut derajat ke bentuk radian, dan sebagainya. Pada pertemuan kali ini kita akan mempelajari beberapa hal penting tentang fungsi-fungsi matematika pada PHP.
Fungsi Absolut: abs()
Fungsi abs()
akan mengembalikan nilai absolut dari nilai negatif mau pun positif. Nilai absolut adalah suatu keadaan yang mana nilai akan senantiasa dianggap positif.
<?php
$a = 10;
$b = 33;
$selisih = abs($a - $b); // 23
echo "Selisih: {$selisih}";
Output:
Selisih: 23
Fungsi Pi: pi()
Fungsi pi()
akan mengembalikan nilai konstanta PI.
<?php
echo "Nilai pi = " . pi();
Output:
Nilai pi = 3.1415926535898
Perpangkatan Bilangan: pow()
Fungsi pow()
bertugas untuk memangkatkan suatu bilangan pada PHP. Fungsi ini membutuhkan 2 parameter:
- Bilangan yang akan dipangkat
- Nilai eksponen
<?php
echo "2 pangkat 2 = " . pow(2, 2) . "<br>"; # 4
echo "2 pangkat 3 = " . pow(2, 3) . "<br>"; # 8
echo "5 pangkat 3 = " . pow(5, 3) . "<br>"; # 125
echo "3 pangkat 5 = " . pow(3, 5) . "<br>"; # 243
Output:
2 pangkat 2 = 4
2 pangkat 3 = 8
5 pangkat 3 = 125
3 pangkat 5 = 243
Akar Bilangan: sqrt()
Fungsi sqrt()
bertugas untuk menghitung akar kuadrat dari suatu bilangan. Dan ditinjau dari segi parameter, ia hanya membutuhkan satu parameter.
<?php
echo "Akar 0 = " . sqrt(0) . "<br>";
echo "Akar 1 = " . sqrt(1) . "<br>";
echo "Akar 4 = " . sqrt(4) . "<br>";
echo "Akar 9 = " . sqrt(9) . "<br>";
Output:
Akar 0 = 0
Akar 1 = 1
Akar 4 = 2
Akar 9 = 3
Membuat Angka Acak: rand()
Di dalam PHP, terdapat dua fungsi yang bisa kita gunakan untuk membuat angka secara acak. Dua fungsi tersebut adalah rand()
dan mt_rand()
. Pada versi PHP lawas, keduanya adalah dua fungsi yang berbeda. Ada pun setelah versi PHP 7.1, dua-duanya sama saja. Yang satu adalah alias dari yang lainnya.
Fungsi rand()
memiliki 2 parameter, dan dua-duanya bersifat opsional.
- min: bersifat opsional. Dia adalah nilai terendah yang akan dikembalikan dari fungsi
rand()
. Jika tidak didefinisikan, nilai default-nya adalah 0 - max: ia juga bersifat opsional. Adalah nilai terbesar yang akan dikembalikan dari fungsi
rand()
. Jika tidak didefinisikan, nilai default-nya adalah hasil kembalian dari fungsigetrandmax()
.
Perhatikan contoh berikut:
<?php
echo rand() . '<br>';
echo rand(0, 10) . '<br>'; # kemungkinan angka yang muncul adalah 0-10
Pada pembahasan tentang perulangan while, kita telah menggunakan fungsi ini sebagai contoh. Anda bisa kembali lagi ke pembahasan tersebut jika dirasa perlu.
Konversi Derajat ke Radian: deg2rad()
Fungsi deg2rad()
digunakan untuk mengkonversi nilai derajat kemiringan sudut ke dalam nilai radian. Fungsi ini menerima hanya satu parameter saja.
<?php
echo deg2rad(120) . '<br>';
echo deg2rad(30) . '<br>';
echo deg2rad(225) . '<br>';
Output:
2.0943951023932
0.5235987755983
3.9269908169872
Pembulatan Pecahan: round()
Jika kita memiliki angka desimal dengan angka di belakang koma yang sangat panjang sekali, kita pasti perlu untuk membulatkannya. Entah kita bulatkan dengan mengurangi jumlah angka di belakang koma, atau pun dengan membulatkan angka ke bilangan bulat terdekat.
Untuk melakukan hal tersebut, PHP telah menyediakan fungsi bawaan yang bernama round()
.
Fungsi round()
menerima 3 parameter:
- number: bersifat required. Ini adalah angka yang akan kita bulatkan.
- precision: berisfat opsional. Ini adalah jumlah angka di belakang koma, jika dikosongkan maka nilai default-nya adalah 0.
- mode: bersifat opsional. Kita tidak bahas parameter ini karena berkaitan dengan konstanta.
<?php
echo round(4.6789) . "<br>";
echo round(4.3234) . "<br>";
echo round(pi(), 2) . "<br>"; # kita bulatkan nilai pi
echo round(pi(), 4) . "<br>";
Output:
5
4
3.14
3.1416
Pembulatan Kebawah: floor()
Fungsi floor()
digunakan untuk membulatkan nilai pecahan ke nilai bulatan terkecil. Tidak peduli apakah nilai pecahan tersebut sebenarnya lebih dekat ke nilai bulatan setelahnya.
Perhatikan contoh berikut:
<?php
echo floor(3.9999) . '<br>';
echo floor(3.33) . '<br>';
Kedua nilai di atas akan sama-sama menghasilkan angka 3
.
Output:
3
3
Pembulatan Keatas: ceil()
Fungsi ceil()
adalah kebalikan dari fungsi floor()
. Jika fungsi floor()
bertugas untuk membulatkan pecahan ke bilangan bulat terkecil, maka fungsi ceil()
justru akan membulatkan bilangan pecahan ke bilangan bulat yang paling besar.
Perhatikan contoh berikut:
<?php
echo ceil(3.9999) . '<br>';
echo ceil(3.33) . '<br>';
Hasilnya seperti yang sudah diharapkan:
4
4
Pembahasan Selanjutnya
Pembahasan kita kali ini cukup sederhana akan tetapi sangat penting. Beberapa fungsi di atas akan sering kita jumpai dalam kasus-kasus sehari-hari.
Untuk pembahasan yang akan datang, insyaallah kita akan membahas tentang membuat dan memecahkan teka-teki bilangan fibonacci dengan PHP. Dan insyaallah juga pembahasan tersebut akan menjadi penutup seri tutorial php dasar ini sebelum kita lanjut ke seri tutorial PHP yang berikutnya yaitu seri tutorial php tingkat menengah.
Terima kasih banyak!