[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: curiosidade
On Tue, 8 Aug 2000, Olimpiada Brasileira de Matematica wrote:
> >From: "Fabio Jose Brandimarte Ariano" <ariano@mirassol.com.br>
> >To: <obm@impa.br>
> >Subject: curiosidade
> >Date: Tue, 8 Aug 2000 15:53:27 -0300
> >X-MSMail-Priority: Normal
> >X-Mailer: Microsoft Outlook Express 4.72.3110.5
> >X-MIMEOLE: Produced By Microsoft MimeOLE V4.72.3110.3
> >
> > Em primeiro lugar, meus parabéns pelo trabalho e pelo site
> >www.obm.org.br. Meu nome é José Ricardo Ariano. Sou Engenheiro Civil,
> >formado pela Escola de Engenharia de Lins, no ano de 1.974. Naquela época,
> >não dispúnhamos de calculadoras científicas do tipo HP ou similares.
> >Utilizávamos calculadoras comuns com raiz quadrada e nos foi passado uma
> >dica de como efetuar calculos exponenciais, utilizando as mesmas. É um
> >cálculo empírico, que dá certo, porém nunca ficamos sabendo quais as bases
> >matemáticas para que os mesmos funcionassem. Vou passar um exemplo para
> >vocês, e se alguém puder explicar como e porque, eu ficaria agradecido.
> >Exemplo: Calcular o valor de 8 elevado de 1/3 ( o que seria o mesmo que
> >raiz cubica de 8 e o resultado é 2) passo 1: Digita-se 8 e extrai-se a
> >raiz quadrada várias vezes (por exemplo 15 vezes) e teremos o resultado
> >1,00006346. passo 2: Subtrai-se o número 1 (temos o resultado
> >0,00006346) passo 3: Multiplica-se este resultado pelo expoente (1/3) e
> >teremos 0,000021153 passo 4: soma-se o numero 1 (teremos 1,000021153)
> > resultado 1,999940565 o que é uma aproximação excelente para cálculos de
> >engenharia NB: a aproximação na quarta casa é determinada pela quantidade
> > de zeros após a unidade no passo 1. Curioso, não é? Funciona para
> >qualquer base e para qualquer expoente. Espero ter sido útil José
> >Ricardo H. Ariano ariano@mirassol.com.br
>
Para x próximo de 0, temos e^x ~= 1 + x.
Assim, para x próximo de 0 temos
(1+x)^a = e^(a log(1+x)) ~= e^(ax) ~= 1 + ax.
Assim, para calcular z^a o seu algoritmo é o seguinte.
Tome 1+x = z^(1/2^n), o que garante que x é pequeno.
Usamos a aproximação acima para obtermos
(z^(1/2^n))^a ~= 1 + ax.
Finalmente elevamos ao quadrado n vezes para obter
z^a = ((z^(1/2^n))^a)^(2^n) ~= (1+ax)^(2^n).
[]s, N.