Arredonde um número em Python

Syed Moiz Haider 30 janeiro 2023
  1. Use a função math.ceil() para arredondar um número no Python 2.x
  2. Use aritmética simples para arredondar um número em Python
  3. Use o operador de divisão de piso para arredondar um número em Python
  4. Use o método numpy.ceil() para arredondar um número em Python
Arredonde um número em Python

Este tutorial explica diferentes métodos para explicar o conceito de arredondamento de um número. Existem várias maneiras de arredondar um número da maneira correta. Por exemplo, um número pode ser arredondado usando o módulo math fornecido pelo Python, usando o módulo NumPy e assim por diante. O tutorial explicará esses métodos diferentes usando fragmentos de código de exemplo.

Use a função math.ceil() para arredondar um número no Python 2.x

Se estiver usando a versão Python 2.x, você pode usar a função math.ceil() para arredondar um número corretamente. A função ceil() é fornecida pela biblioteca math do Python. Portanto, precisamos primeiro importar a biblioteca math. A função ceil pega o número que precisa ser arredondado. Ele pode usar uma expressão e arredondar o número resultante de acordo com os resultados.

No entanto, deve-se notar que no Python 2.x, int/int produz int e int/float resulta em um float. Portanto, precisamos fornecer um dos valores em float para a função ceil para obter resultados precisos. Se ambos os valores de uma expressão na função ceil forem inteiros, podem produzir resultados errados.

Um exemplo de código para ilustrar o conceito de como usar math.ceil() para arredondar um número em Python 2.x é fornecido abaixo.

import math

print(math.ceil(27 / 4))
print(math.ceil(27.0 / 4))

Resultado:

6
7

Use aritmética simples para arredondar um número em Python

Um número também pode ser arredondado usando aritmética simples em Python. Este método é aplicável a todas as versões do Python. Ele converte a primeira expressão em um tipo de dados inteiro e adiciona 0 ou 1 valor com base no resultado de outra expressão. Outra expressão encontra o módulo do número com o mesmo denominador e verifica se é maior que 0 ou não. Se o resto for maior que 0, adiciona um à primeira expressão e, se for falso, adiciona 0 à primeira expressão.

Um exemplo de código é fornecido abaixo para explicar como usar aritmética simples para arredondar um número em Python sem importar a biblioteca math.

n = 22
div = 5
print(int(n / div) + (n % div > 0))

Resultado:

5

Use o operador de divisão de piso para arredondar um número em Python

O símbolo para o operador de divisão de piso é //. Funciona da mesma forma que um operador de divisão simples, /, mas também arredonda o número para baixo. Portanto, geralmente é usado para arredondar o número em Python. No entanto, também podemos modificar seu uso para arredondar um número. Podemos fazer isso negando a resposta dividindo os números negativos. Isso vai economizar o custo de qualquer importação ou uso de float e quaisquer outras condições. Funciona apenas com números inteiros.

Um exemplo de código é fornecido abaixo para elaborar sobre como usar o operador de divisão de piso para arredondar um número em Python.

n = 22
div = 5
answer = -(-n // div)
print(answer)

Resultado:

5

Da mesma forma, podemos arredondar um número adicionando o denominador ao numerador e subtraindo 1 dele. Então, toda a expressão será dividida no piso com o denominador. É um método direto que não envolve pontos flutuantes e módulos externos também. Um exemplo de código desse método é fornecido abaixo.

numerator = 22
denominator = 5
answer = (numerator + denominator - 1) // denominator
print(answer)

Resultado:

5

Use o método numpy.ceil() para arredondar um número em Python

Outro método para arredondar um número é usar o método numpy.ceil(). Primeiro, precisamos importar o módulo NumPy no script e então usar o método ceil() para arredondar um número. O tipo de retorno da função ceil() é float, então mesmo se a expressão for em inteiros, a saída será em float. A saída pode ser convertida explicitamente em um tipo de dados inteiro, convertendo-o explicitamente em um inteiro.

Um exemplo de código desse método para arredondar um número em Python é fornecido a seguir.

import numpy as nmp

n = 22
div = 5
answer = n / div
print(nmp.ceil(answer))
print(int(nmp.ceil(answer)))

Resultado:

5.0
5
Syed Moiz Haider avatar Syed Moiz Haider avatar

Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.

LinkedIn

Artigo relacionado - Python Number