belarusweb.net
© Петр Романовский Минск, 2016-2018.



belarusweb.net

Основы создания сайтов...
PHP >>>

2.1.4. Математические расширения

Как и в других языках программирования, в PHP имеется как набор математических констант, так и набор стандартных математических функций. Найти их можно в подразделе 'Математические расширения' -> 'Math'. При этом следует помнить, что функции данного подраздела работают только с числами в диапазонах типов integer и float. Если же возникает необходимость в работе с большими числами, следует обращаться к подразделу 'BC Math', содержащему математические функции произвольной точности. Рассмотрим некоторые из математических функций на примере 8.5.

<?php

echo '-------- is_nan() -------- <br><br>';

//is_nan() - проверяет, является ли значение "не числом", тогда true, иначе false  
echo is_nan(sqrt(-1)).'<br><br>'; //Выведет 1, т.е. true


echo '-------- abs() -------- <br><br>';

//abs() - возвращает модуль числа 
echo abs(-4.2).'<br>'; //Выведет -4.2


echo '-------- ceil() -------- <br><br>';

//ceil() - округляет дробь в большую сторону  
echo ceil(2.01).'<br><br>'; //Выведет 3


echo '-------- floor() -------- <br><br>';

//floor() - округляет дробь вниз 
echo floor(3.9).'<br><br>'; //Выведет 3


echo '-------- round() -------- <br><br>';

//round() - округляет дробь
echo round(2.01).'<br>'; //Выведет 2
echo round(3.9).'<br>'; //Выведет 4
echo round(3.546349, 4).'<br>'; //Выведет 3.5463
echo round(3.55, 1).'<br>'; //Выведет 3.6
echo round(3.55, 1, PHP_ROUND_HALF_DOWN).'<br><br>'; //Выведет 3.5 (см. справочник)


echo '-------- sqrt() -------- <br><br>';

//sqrt() - извлекает квадратный корень
echo sqrt(9).'<br>'; //Выведет 3
echo sqrt(-9).'<br><br>'; //Выведет NAN


echo '-------- pow() -------- <br><br>';

//pow() - возведение в степень. Можно также использовать оператор ** 
echo pow(3, 4).'<br>'; //Выведет 81 (можно также 3**4)
echo pow(3, -2).'<br>'; //Выведет 0.11111111111111 (т.е. 1/(3e2))
echo pow(0, 0).'<br>'; //Выведет 1
echo pow(-2, 0).'<br>'; //Выведет 1
echo pow(-2, 3).'<br>'; //Выведет -8 
echo pow(-2, -2).'<br>'; //Выведет 0.25 (т.е. 1/(-2e2))
echo pow(4, 0.5).'<br>'; //Выведет 2 (т.е. sqrt(4))
echo pow(-4, -0.5).'<br><br>'; //Выведет NAN (т.к. 1/[sqrt(-4)]==NAN)


echo '-------- max() -------- <br><br>';

//max() - возвращает наибольшее значение (также см. min())
echo max(0.5, 3, -2).'<br>'; //Выведет 3
echo max('10.5', pow(3,2), abs(-2)).'<br><br>'; //Выведет 10,5


echo '-------- mt_rand() -------- <br><br>';

//mt_rand() - генерирует случайное значение методом 'Вихря Мерсена'  
echo mt_rand(10, 20).'<br><br>'; //Выведет число из отрезка [10,20]


echo '-------- pi() -------- <br><br>';

//pi() - возвращает число Пи, как и константа M_PI
//Смотри также log1p(), log10(), log(), exp(), expm1() 
echo pi().'<br><br>'; //Выведет 3.1415926535898


echo '-------- base_convert() -------- <br><br>';

//base_convert() - переводит число из одной системы счисления в другую
//Может теряться точность представления больших чисел (см. справочник)
echo base_convert('13', 10, 16).'<br>';//Выведет d (см. также статью о переводах чисел)
echo base_convert('13', 10, 2).'<br><br>'; //Выведет 1101 


echo '-------- hexdec() -------- <br><br>';

//hexdec() - переводит число из шестнадцатеричной системы счисления в десятичную 
//dechex() - переводит число из десятичной системы счисления в шестнадцатеричную
//decbin() - переводит число из десятичной системы счисления в двоичную
//bindec() - переводит число из двоичной системы счисления в десятичную
//decoct() - переводит число из десятичной системы счисления в восьмеричную
//octdec() - переводит число из восьмеричной системы счисления в десятичную
echo hexdec('2ED').'<br><br>'; //Выведет 749 (см. также статью о переводах чисел)


echo '-------- deg2rad() -------- <br><br>';

//deg2rad() - преобразует значение из градусов в радианы 
//rad2deg() - преобразует значение из радианов в градусы
echo deg2rad(30).'<br><br>'; //Выведет 0.5235987755983


echo '-------- sin() -------- <br><br>';

//sin() - вычисляет синус. См. также cos(), tan() и др. тригонометрические ф-ции
echo sin(30).'<br>'; //Выведет -0.98803162409286
?>

Пример 8.5. Использование математических функций

Быстрый переход к другим страницам

Словарь новых английских слов

dump [dʌmp] – куча хлама, вывод подробной
информации на экран.
print [prɪnt] – печатать.
serialize [ˈsɪərɪəlʌɪz] – издавать сериями, выпусками.
long [lɔːŋ] – длинный.
real [rɪəl] – реальный, настоящий.
import [ˈɪmpɔːt] – ввозить, импортировать
export [ɪkˈspɔːt] – вывозить, экспортировать.
debug [diːˈbʌɡ] – отладка, устранять ошибки.
flip [flɪp] – транспонировать, перевернуть.
reverse [rɪˈvəːs] – менять направление.
unique [juːˈniːk] – уникальный, особенный.
shift [ʃɪft] – сдвигать, перемещать, переключать.
push [pʊʃ] – толкать, продвигать.
pop [pɒp] – выбирать, извлекать из стека.
slice [slʌɪs] – часть, доля, резать ломтиками.
splice [splʌɪs] – сращивать, соединять внакрой.
product [ˈprɒdʌkt] – продукт, результат, произведение.
sum [sʌm] – сумма, суммировать.
random [ˈrandəm] – случайный, произвольный.
shuffle [ˈʃʌf(ə)l] – перемешивать.
sort [sɔːt] – сортировать.
filter [ˈfɪltə] – фильтр, фильтровать.
walk [wɔːk] – ходить, гулять.
reduce [rɪˈdjuːs] – уменьшать, сокращать.
search [səːtʃ] – искать, поиск.
merge [məːdʒ] – сливать, соединять.
fill [fɪl] – заполнять.
intersect [ɪntəˈsɛkt] – пересекать, перекрывать.
pad [pæd] – блокнот, набивать, увеличивать.
extract [ˈekstrækt] – извлекать, вытягивать.
register [ˈrɛdʒɪstə] – регистрировать, отмечать, реестр, ведомость.
entity [ˈɛntɪti] – сущность, существование.
shut [ʃʌt] – закрывать.
chunk [tʃʌŋk] – ломоть, большой кусок.
split [splɪt] – расщеплять, раскалывать.
implode [ɪmˈpləʊd] – интегрировать, концентрировать.
explode [ɪkˈspləʊd] – взрывать, разрушать, разбивать.
chop [tʃɒp] – рубить, крошить, нарезать.
join [dʒɔɪn] – соединять, объединять.
compare [kəmˈpɛː] – сравнивать.
convert [kənˈvɜːt] – конвертировать, перестраивать, переоборудовать.
handler [ˈhandlə] – обработчик.
internal [ɪnˈtəːn(ə)l] – внутренний.
encoding [ɪnˈkəʊdɪŋ] – кодировка, кодирующий.
send [send] – посылать, передавать.
cut [kʌt] – резать, разрезать, порез.
alias [ˈeɪlɪəs] – кличка, прозвище, другое имя.
match [mætʃ] – искать соответствие, соответствовать, спичка.
floor [flɔː] – пол, дно.
ceil [siːl] – потолок.
round [raʊnd] – круглый, округлять.
pow [paʊ] – башка.
Комментарии (0)
Петр Романовский
1. Приветствуются комментарии, которые содержат дополнения к материалу текущей страницы, а также ваши ответы на вопросы других пользователей.
2. Если вам что-то непонятно - спрашивайте, не забывая написать, что именно и с какого места.
Показаны все комментарии
Чтобы оставить свой комментарий, авторизуйтесь, пожалуйста!    
     
belarusweb.net © Петр Романовский, Минск, 2016-2018.
Связаться с автором
Наверх