Math.ceil vs Math.floor

Volta e meia me deparo com chamadas dos métodos ceil e floor, pertencentes à Math. Ambos os métodos possuem a finalidade de arredondamento de um floating point number para um integer number. Porém, uma pergunta que sempre me surge, quase que de forma a…


This content originally appeared on DEV Community and was authored by doug-source

Volta e meia me deparo com chamadas dos métodos ceil e floor, pertencentes à Math. Ambos os métodos possuem a finalidade de arredondamento de um floating point number para um integer number. Porém, uma pergunta que sempre me surge, quase que de forma automática, é:

Afinal, existiria alguma forma de comparar visualmente a lógica dessas duas functions?

Bom... Deixe-me tentar.

Imaginemos que exista um gráfico no qual possamos colocar cada argumento passado para essas functions:

graph1

Math.ceil(num)

Tem a função de arredondar um número para o valor inteiro mais próximo, maior ou igual (>=) ao número atual.

num === 1.3

graph2

Olhando o número inserido no gráfico acima, qual seria o número inteiro mais próximo >= à 1.3? O número 2, é claro!

num === -2.001

graph3

Olhando o número inserido no gráfico acima, qual seria o número inteiro mais próximo >= à -2.001? Como estamos agora perante uma escala negativa, o próximo número inteiro >= é -2.

Math.floor(num)

Tem a função de arredondar um número para o valor inteiro mais próximo, menor ou igual (<=) ao número atual. Resumidamente funciona igual à Math.ceil, porém com sentido inverso no gráfico.

num === 1.3

graph2

Olhando o número inserido no gráfico acima, qual seria o número inteiro mais próximo <= à 1.3? O número 1, é claro!

num === -2.001

graph3

Olhando o número inserido no gráfico acima, qual seria o número inteiro mais próximo <= à -2.001? Como estamos agora perante uma escala negativa, o próximo número inteiro <= é -3.

Assim, analizando o sentido do arredondamento dessas functions e levando o gráfico em consideração, temos:

graph4

Lembrar de conceitos utilizando imagens (como a mencionada acima) costuma me auxiliar bastante na fixação deles. 😉​

...


This content originally appeared on DEV Community and was authored by doug-source


Print Share Comment Cite Upload Translate Updates
APA

doug-source | Sciencx (2024-11-12T00:17:09+00:00) Math.ceil vs Math.floor. Retrieved from https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/

MLA
" » Math.ceil vs Math.floor." doug-source | Sciencx - Tuesday November 12, 2024, https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/
HARVARD
doug-source | Sciencx Tuesday November 12, 2024 » Math.ceil vs Math.floor., viewed ,<https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/>
VANCOUVER
doug-source | Sciencx - » Math.ceil vs Math.floor. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/
CHICAGO
" » Math.ceil vs Math.floor." doug-source | Sciencx - Accessed . https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/
IEEE
" » Math.ceil vs Math.floor." doug-source | Sciencx [Online]. Available: https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/. [Accessed: ]
rf:citation
» Math.ceil vs Math.floor | doug-source | Sciencx | https://www.scien.cx/2024/11/12/math-ceil-vs-math-floor/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.