// modulo
var mod = function (a, b) {
return a % b;
}
// integer division
var div = function (a, b) {
return (a - a % b) / b;
};
В книге Александра Шеня "Программирование: теоремы и задачи" приведен пример вычисления частного и остатка без использования данных функций
/*
* Вычисление частного q и остатка r при делении натурального (целого неотрицательного)
* числа a на целое положительное число d без использования операций mod и div.
*/
var a = 7, d = 3;
// a >= 0; d > 0
var r = a, q = 0;
// инвариант: a = q * d + r, 0 <= r
while (!(r < d)) {
// r >= d
r = r - d; // r >= 0
q = q + 1;
}
console.log('r = ' + mod(a, d) + ', q = ' + div(a, d)); // r = 1, q = 2
console.log('r = ' + r + ', q = ' + q); // r = 1, q = 2