Números infinitos no Python

Números / Tutorial Python

No Python, é possível representar números infinitos utilizando o módulo math ou o tipo especial float. O infinito é útil em diversas aplicações, como algoritmos matemáticos, comparações e limites.

Representação de infinito

O Python utiliza o valor especial float('inf') para representar o infinito positivo e float('-inf') para o infinito negativo. Veja um exemplo:

infinito_positivo = float('inf')
infinito_negativo = float('-inf')

print(infinito_positivo)  # Imprime: inf
print(infinito_negativo)  # Imprime: -inf

Expressões que resultam em infinito

Algumas operações matemáticas podem resultar em valores infinitos. Veja exemplos distintos:

1. Divisão por zero em ponto flutuante

A divisão de um número de ponto flutuante por zero gera um valor infinito. Isso ocorre porque, matematicamente, a divisão por zero tende ao infinito.

infinito_positivo = 1.0 / 0.0  # Gera: inf
infinito_negativo = -1.0 / 0.0  # Gera: -inf

2. Overflow em operações exponenciais

Quando realizamos operações exponenciais ou multiplicações com números muito grandes, o resultado pode ultrapassar o limite máximo representável pelo tipo float, gerando um valor infinito.

infinito_por_exponencial = 1e308 * 1e308  # Gera: inf

3. Operações com limites extremos

Operações envolvendo o valor infinito, como somar qualquer número a float('inf'), continuam resultando em infinito. Isso é útil para representar limites que não podem ser ultrapassados.

infinito_por_soma = float('inf') + 1  # Gera: inf

Essas expressões são úteis em cálculos que envolvem limites ou valores extremos.

Comparações com infinito

O infinito pode ser usado em comparações para determinar limites superiores ou inferiores:

x = 100

if x < float('inf'):
    print("x é menor que infinito")

Uso com o módulo math

O módulo math também fornece constantes para infinito:

import math

print(math.inf)  # Infinito positivo
print(-math.inf)  # Infinito negativo

Essas constantes são equivalentes a float('inf') e float('-inf').

Além disso, você pode comparar diretamente os valores para verificar se um valor é infinito:

import math

x = math.inf
y = float('inf')

print(x == math.inf)  # Imprime: True
print(y == math.inf)  # Imprime: True

Operações com infinito

Operações matemáticas envolvendo infinito seguem regras específicas:

  • Qualquer número somado a infinito resulta em infinito.
  • Qualquer número multiplicado por infinito (exceto zero) resulta em infinito.
  • Divisão por infinito resulta em zero.

Exemplo:

print(float('inf') + 1)  # Imprime: inf
print(float('inf') * 2)  # Imprime: inf
print(1 / float('inf'))  # Imprime: 0.0

Conclusão

O suporte a números infinitos no Python é uma funcionalidade poderosa para lidar com cálculos matemáticos avançados e limites. Use float('inf') ou math.inf para representar infinito em seus programas.