Math (matematik funksiyalar) — jiddiyroq hisob-kitoblar uchun mo’ljallangan o’rnatilgan funksiyalar. Oddiy qo’shish-ayirishni operatorlar bilan bajaramiz, biroq ildiz olish, darajaga oshirish, yaxlitlash yoki tasodifiy son hosil qilish uchun PHP’ning matematik funksiyalari ishlatiladi. Ular hech qanday ulanishni talab qilmaydi.
Matematik funksiyalar — PHP’ning o’rnatilgan, matematik amallarni bajaradigan funksiyalari va konstantalari. Ular to’g’ridan-to’g’ri nom bilan chaqiriladi.
Asosiy funksiyalar
Eng ko’p ishlatiladigan matematik funksiyalarni ko’rib chiqamiz:
<?php
echo sqrt(144) . "\n"; // kvadrat ildiz
echo pow(2, 10) . "\n"; // daraja
echo abs(-15) . "\n"; // modul
?>
12
1024
15
sqrt — kvadrat ildiz, pow(a, b) — a ning b-darajasi, abs — sonning musbat qiymati. Bular kundalik hisoblarda doimo kerak.
Yaxlitlash funksiyalari
PHP yaxlitlashning turli usullarini beradi. Ularni jadvalda solishtiramiz:
| Funksiya | Vazifasi | f(3.4) |
f(3.6) |
|---|---|---|---|
round() |
eng yaqin butunga | 3 |
4 |
ceil() |
yuqoriga | 4 |
4 |
floor() |
pastga | 3 |
3 |
Amalda:
<?php
echo round(3.5) . "\n"; // eng yaqinga
echo ceil(3.2) . "\n"; // doim yuqoriga
echo floor(3.9) . "\n"; // doim pastga
?>
4
4
3
round eng yaqin butunga, ceil har doim yuqoriga (3.2 ham 4), floor har doim pastga (3.9 ham 3) yaxlitlaydi.
Eng katta, eng kichik va tasodifiy son
max va min bir necha sondan keraklisini tanlaydi, rand esa tasodifiy son beradi:
<?php
echo max(42, 17, 99, 5) . "\n";
echo min(42, 17, 99, 5) . "\n";
echo rand(1, 6); // 1 dan 6 gacha tasodifiy
?>
99
5
4
max eng kattasini (99), min eng kichigini (5) berdi. rand(1, 6) esa 1 dan 6 gacha tasodifiy son — masalan, zar tashlash uchun.
Konstanta va aylana yuzasi
PHP M_PI konstantasida pi sonini saqlaydi. Uni aylana yuzasini hisoblashda ishlatamiz:
<?php
$radius = 5;
$yuza = M_PI * pow($radius, 2);
echo round($yuza, 2);
?>
78.54
M_PI — pi soni. Uni radius kvadratiga ko’paytirib, aylana yuzasini hisobladik, so’ng round bilan ikki kasr xonaga yaxlitladik.
Xulosa
Bu bo’limda matematik funksiyalarni — sqrt, pow, abs, yaxlitlash (round, ceil, floor), max/min, rand va M_PI — ko’rib chiqdik. Jiddiy matematik amallar uchun bu funksiyalar birinchi yordamchi. Keyingi darsda o’zgarmas qiymatlarga o’tamiz.