Buscar

Função para cálculo de um número elevado a outro

Código

Para resolver de uma vez por todas o problema de não existir, no Delphi, uma função que faça a potência de dois números, use a função abaixo.

Logo após a função, estou colocando a demonstração matemática da mesma.

function Potencia(Base, Expoente : Extended) : Extended;
begin
Potencia := Exp(Expoente * Ln(Base));
end;

Muito simples, não é mesmo. Aí vai então a demonstração:

1. Vamos supor que A = B^X (lê-se: B elevado a X)

2. Se aplicarmos LN (logaritmo neperiano) em ambos os lados da
equação, ela não se altera. Temos agora então:
LN(A) = LN(B^X)

3. Por propriedade dos logaritmos, podemos dizer que:
LN(A) = X * LN(B)

3. Se elevarmos os dois lados da equação ao neperiano E, também
não haverá mudança na equação. Temos então:
E^(LN(A)) = E^(X * LN(B))

4. Matematicamente, E^(LN(A)) é igual ao próprio A. Do outro lado
da equação não podemos fazer mais nada. Então chegamos a
conclusão que:
A = E^(X * LN(B))

No delphi, temos que E é a função Exp(), e LN é a função Ln()

 

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Arquivos
Adicionada dia: 05/05/05
Por: Miguel Machado
Visualizada: 3583 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009