Problema com EXPONENCIAL :(

3 respostas
K

Estou tentando dividir os seguintes valores.

f(440.8616562103653) = f(x) = 8259.509811786575
f’(440.8616562103653) = f’(x) = ?

O resultado seria f(x)/f’(x), o Java considera o resultado como Infinito, pois não estou conseguindo calcular f’(x), aqui está dando 0.
f’(k)=-2(k+1).e^(-(k+1)²)

Eu fiz assim.

Para k=440.8616562103653;

public double derivadaf(double k) {

double aux=Math.exp(-((k+1)<em>(k+1))); [color=red] //o resultado está dando ZERO aqui, ERRADO, pois é uma função exponencial![/color]

double aux2=-2</em>(k+1);[color=red] // aqui o resultado está dando -883.7233124207306, CORRETO! [/color]

return (aux*aux2);

}

O valor retornado tem que ser diferente de 0, me ajudem.

3 Respostas

T

Puxa, você só arranja contas chatas de fazer (que exigem transformação da fórmula para serem calculadas corretamente).

K

Nem me fale, diga isso pro meu professor de Cálculo Númerico :lol: . Sabe o que é o pior pra mim? O meu professor não sabe nada de programação, pediu que fizéssemos este trabalho, que na verdade é mais complicado do que parece. Ele quer que o programa calcule um intervalo que contenha a raíz de uma função monstruosa com vários valores minúsculos e enormes interagindo entre si, e o pior, com precisão 10 na menos 12. Ele quer que façamos isso usando dois métodos, o da Bisseção que felizmente consegui fazer e o de Newton-Raphson, que estou extremamente empacado. :?

T

Amigo, você nunca vai conseguir calcular adequadamente esse valor. É que esse valor é cerca de 2,52 x 10^-84792 e isso não pode ser representado em um double.

Criado 20 de abril de 2009
Ultima resposta 20 de abr. de 2009
Respostas 3
Participantes 2