Деление по модулю

На днях столкнулся с проблемой в PHP. Невозможность получить остаток от деления на число 2^32 при помощи стандартного оператора %. Хотел попробовать использовать функцию gmp_div_r(), но библиотека GMP не была установлена на сервере. В итоге выход был таким:


// функция вычисления остатка от деления для больших чисел
function mod($a,$b=4294967296){ // 4294967296 = 2^32
while($c<$a){
$c_old=$c;
$c+=$b;
}
return $a-$c_old;
}

Конечно это все просто, но может кому-нибудь прогодиться.

This entry was posted in PHP and tagged , , . Bookmark the permalink.

One Response to Деление по модулю

  1. Дизайнер says:

    Привет, нашел этот пост через гугл и уже не вылажу с сайта пол часа. Все отлично, только у меня из Украины он чего-то медленно открывается. А вообще — так держать, спасибо за информацию.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>