Cálculos iterativos
Séries matemáticas
- somatórios
- produtórios (fatorial)
- fibonacci
Aproximações numéricas
Esses métodos são essenciais em computação científica, física e engenharia.
\(e^x = \sum_{k=0}^\infty \frac{x^k}{k!}\)
Integrações numéricas (regra dos trapézios)
raiz quadrada: método de Herão
def raiz_quadrada(n, iterações=10):
x = n/2 # Chute inicial
for _ in range(iterações):
x = (x + n/x) / 2
return x- Pi (Leibniz)
def aproxima_pi(n_termos):
pi_quartos = 0
for k in range(n_termos):
pi_quartos += (-1)**k / (2*k + 1)
return 4 * pi_quartos- Número de Euler (\(e\))
def aproxima_e(n_termos):
e = 0
fatorial = 1
for k in range(n_termos):
if k > 0:
fatorial *= k
e += 1 / fatorial
return eOutras
Conversão de bases
MDC
Potência por Exponenciação Rápida
def potencia(a, b):
resultado = 1
while b > 0:
if b % 2 == 1:
resultado *= a
a *= a
b //= 2
return resultado
print(potencia(2, 10)) # Saída: 1024 Algoritmo de Collatz (Conjectura de Collatz)
O Algoritmo de Collatz, também conhecido como Conjectura de Collatz, é uma sequência matemática simples com regras de iteração, mas que esconde um dos problemas não resolvidos mais famosos da matemática.
Definição e Regras
Dado um número inteiro positivo ( n ), a sequência é gerada da seguinte forma:
- Se ( n ) for par: Divida ( n ) por 2 (( n = n / 2 )).
- Se ( n ) for ímpar: Multiplique ( n ) por 3 e some 1 (( n = 3n + 1 )).
- Repita o processo até que ( n ) se torne 1.
Exemplo para ( n = 6 ):
( 6 )
A Conjectura de Collatz
A hipótese não provada é que:
> “Qualquer que seja o valor inicial ( n ), a sequência sempre atingirá o número 1 em um número finito de passos.”
- Status matemático: Apesar de testada para números absurdamente grandes (ex: ( 2^{60} )), ninguém conseguiu provar ou refutar a conjectura.
- Prêmio: Recompensas em dinheiro já foram oferecidas por sua solução (ex: Paul Erdős ofereceu US$ 500).
Implementação Iterativa (Python)
def collatz(n):
sequencia = [n]
while n != 1:
n = n // 2 if n % 2 == 0 else 3 * n + 1
sequencia.append(n)
return sequencia
print(collatz(6))
# Saída: [6, 3, 10, 5, 16, 8, 4, 2, 1] Características Interessantes
1. Comportamento Imprevisível
- Pequenas mudanças no valor inicial podem gerar sequências radicalmente diferentes
- Exemplo:
- Para
n = 12: sequência tem 9 passos
- Para
n = 13: sequência tem 9 passos
- Para
n = 27: sequência tem 111 passos, atingindo valor máximo de 9.232
- Para
2. Padrão de Crescimento e Decaimento
- Os números alternam entre:
- Redução rápida (quando pares são divididos por 2)
- Crescimento abrupto (quando ímpares viram 3n+1)
- Redução rápida (quando pares são divididos por 2)
- Paradoxo: A sequência sempre parece convergir para 1, apesar dos aumentos temporários
3. Ciclos Únicos
- O único ciclo conhecido é: 1 → 4 → 2 → 1