Divisão Inteira em JavaScript
-
Obtenha o quociente e o restante de uma divisão inteira usando a biblioteca
Math
em JavaScript - Obtenha o quociente e o restante de uma divisão inteira usando os operadores bit a bit em JavaScript
Este tutorial irá discutir como obter o quociente e o resto de uma divisão usando a biblioteca Math
e operadores bit a bit em JavaScript.
Obtenha o quociente e o restante de uma divisão inteira usando a biblioteca Math
em JavaScript
Em JavaScript, podemos dividir duas variáveis facilmente, e o resultado está em números de ponto flutuante, mas se quisermos obter o quociente e o restante da divisão, podemos usar a biblioteca Math
, que nos fornece várias funções . Por exemplo, podemos obter o quociente de uma divisão usando a função Math.floor()
ou Math.trunc()
que converte o número de ponto flutuante em um inteiro, e para obter o resto, podemos usar o %
personagem. Por exemplo, vamos encontrar o quociente e o resto de 13 dividido por 5. Veja o código abaixo.
var a = 13;
var b = 5;
var quo = Math.floor(a / b);
var rem = a % b;
console.log('Quotient = ', quo, 'Remainder = ', rem);
Resultado:
Quotient = 2 Remainder = 3
Observe que a biblioteca Math
falhará se os números forem muito grandes. Você também pode usar a função Math.trunc()
que pode lidar com grandes números em comparação com a função Math.floor()
. A função Math.floor()
falhará no caso de números negativos, mas Math.trunc()
não falhará no caso de números negativos.
Obtenha o quociente e o restante de uma divisão inteira usando os operadores bit a bit em JavaScript
Em JavaScript, podemos obter o quociente e o restante de uma divisão usando os operadores bit a bit. Por exemplo, podemos obter o quociente de uma divisão usando o bit a bit NOT
~~
ou bit a bit OR
|0
, que converte o número de ponto flutuante em um inteiro. E para obter o restante, podemos usar o caractere %
. Por exemplo, vamos encontrar o quociente e o resto de 13 dividido por 5. Veja o código abaixo.
var a = 13;
var b = 5;
var quo = ~~(a / b);
var rem = a % b;
console.log('Quotient = ', quo, 'Remainder = ', rem);
Resultado:
Quotient = 2 Remainder = 3
Como você pode ver, a saída é a mesma do método acima. O desempenho dos operadores bit a bit é maior em comparação com a biblioteca Math
, mas a capacidade de lidar com grandes números é menor. Portanto, se você tiver números pequenos, poderá usar os operadores bit a bit; caso contrário, use a biblioteca Math
. Os operadores bit a bit também podem lidar com números negativos. Você também pode usar a função parseInt()
para converter um número de ponto flutuante em um inteiro. Se você não quiser usar nenhuma função, pode usar uma fórmula simples com o operador restante %
, conforme mostrado abaixo.
var a = 13;
var b = 5;
var rem = a % b;
var quo = (a - rem) / b;
console.log('Quotient = ', quo, 'Remainder = ', rem);
Resultado:
Quotient = 2 Remainder = 3
Como você pode ver, a saída é a mesma dos métodos acima.