shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Potencia de número decimal


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Potencia de número decimal
Date: Mon, 19 Nov 2007 18:45:23 -0200

Cristiano,

a calculadora bc possui uma opção -l que incorpora uma biblioteca de funções
matematicas

entre elas estão as funções e(x) e l(x) que são, respectivamente,
exponencial de x e logaritmo natural de x

é facil chegar a uma expressão simples para X ^ ( 1 /Y)

--- a partir de agora é matemática, mas mostra a versatilidade do aplicativo
bc ---

Z = X ^ ( 1 / Y )   # Z é um valor qualquer

se
exp(log(Z)) = Z   # no bc seria e(l(Z))

então
exp(log(X^(1/Y))) -> exp((1/Y)* log(X)) -> exp((log(X))/Y)

para fazer 10^(1/5) seria o mesmo que:

bc -l <<< "scale = 5 ; x = 10 ; y = 5 ; e((l(x))/y)"
1.58488

[]´s T

On 11/19/07, Cristiano Ferrari <address@hidden> wrote:
>
> Salve galera.
>
> Preciso obter o resultado de um número elevado à potência decimal em
> um script. Na realidade é um número elevado à ao inverso do outro.
> Algo tipo
>
> $X ^ ( 1 / $Y)
>
> Via $(()) não dá pois ele trunca apenas a parte inteira do resultado.
>
> Tentei algo como
>
> Z=`echo "scale = 5 ; $X ^ ( 1 / $Y ) " | bc`
>
> Mas também não deu, pois o bc não suporta potência com expoente
> fracionário.
>
> Alguém tem alguma sugestão?
>
> Abraço
>
> Cristiano
>
> 
>



-- 
Tiago B Peczenyj
Linux User #405772

http://peczenyj.blogspot.com/
"what does not kill us makes us stronger"


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]