Funções Matemáticas em Python: math, arredondamento, logaritmos

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Funções Matemáticas em Python: arredondamento, logaritmos e fatorial

Trabalhar com números em Python é essencial tanto para tarefas aplicadas quanto para cálculos científicos. Seja analisando dados, criando aplicações financeiras ou atuando em machine learning, conhecer as funções matemáticas do Python simplifica muito o desenvolvimento. Essas funções também aumentam a precisão dos seus cálculos.

Neste artigo, vamos detalhar as principais operações matemáticas em Python. Exploraremos diferentes formas de trabalhar com números e veremos exemplos práticos de uso das funções.

Módulo math: a ferramenta principal para cálculos matemáticos

O módulo nativo math em Python oferece um conjunto completo de funções para realizar cálculos matemáticos. Ele contém todas as ferramentas necessárias para manipular números.

import math

Principais recursos do módulo math

O módulo math inclui diversas funções úteis:

  • Funções trigonométricas (sin, cos, tan)
  • Funções hiperbólicas (sinh, cosh, tanh)
  • Funções de arredondamento (floor, ceil, trunc)
  • Funções logarítmicas (log, log2, log10)
  • Funções de potência (pow, sqrt)
  • Constantes matemáticas (pi, e)

Arredondamento de números em Python

Função round() para arredondamento básico

A função round() é usada para arredondar um número para uma quantidade específica de casas decimais. É a forma mais simples de arredondamento em Python.

numero = 3.14159265
arredondado = round(numero, 2)
print(arredondado)  # Resultado: 3.14

Formato de chamada da função round():

round(numero, casas_decimais)

Parâmetros da função:

  • numero — o número a ser arredondado
  • casas_decimais — quantidade de casas decimais (padrão é 0)

Particularidades da função round()

A função round() usa a regra de "arredondamento para o par". Quando o valor é exatamente 0.5, o número é arredondado para o inteiro par mais próximo:

print(round(0.5))  # Resultado: 0
print(round(1.5))  # Resultado: 2
print(round(2.5))  # Resultado: 2

Arredondamento matemático com math.floor() e math.ceil()

As funções math.floor() e math.ceil() garantem um arredondamento direcionado:

  • math.floor() — arredonda para baixo (em direção ao menor inteiro)
  • math.ceil() — arredonda para cima (em direção ao maior inteiro)
import math

print(math.floor(3.7))   # Resultado: 3
print(math.ceil(3.7))    # Resultado: 4
print(math.floor(-3.7))  # Resultado: -4
print(math.ceil(-3.7))   # Resultado: -3

Função math.trunc() para truncar a parte decimal

A função math.trunc() remove a parte decimal do número sem arredondamento:

print(math.trunc(3.7))   # Resultado: 3
print(math.trunc(-3.7))  # Resultado: -3

Arredondamento de alta precisão com o módulo decimal

Para cálculos financeiros precisos, recomenda-se usar o módulo decimal. Este módulo oferece controle total sobre a precisão dos cálculos e elimina erros de arredondamento de ponto flutuante.

from decimal import Decimal, ROUND_HALF_UP

valor = Decimal('3.4567')
valor_arredondado = valor.quantize(Decimal('0.01'), rounding=ROUND_HALF_UP)
print(valor_arredondado)  # Resultado: 3.46

O módulo decimal oferece vários modos de arredondamento:

  • ROUND_HALF_UP — arredonda para longe de zero quando o valor é 0.5
  • ROUND_HALF_DOWN — arredonda para zero quando o valor é 0.5
  • ROUND_HALF_EVEN — arredonda para o número par mais próximo
  • ROUND_UP — sempre arredonda para cima
  • ROUND_DOWN — sempre arredonda para baixo

Blogs

Book Recommendations