2012-02-16 34 views
6

que debe tener un bloqueo mental, pero simplemente no puede encontrar la inversa de esta función matemática:¿Cuál es el inverso de x = pow (y, 5)

x = pow (y, 5);

Tengo x y 5, ¿cómo puedo encontrar y?

Aquí está un recorte de mi código actual:

+(float) linearVolumeToVolumeCurve:(float)volume 
{ 
    return pow(volume, 5); 
} 

+(float) volumeCurveToLinearVolume:(float)volume 
{ 
    return ??? 
} 
+3

supongo que llama raíz de nth poder. –

+1

No, sería un logaritmo si la base fuera 5 y el exponente fuera el y. –

+0

¡Sabía que podía contar con todos ustedes aquí en StackOverflow! ¡Gracias a todos por todas las respuestas! – Benjamin

Respuesta

11

Prueba esto (pseudo-código): y = pow (x, 1.0/5);

+2

incorrecta, 1/5 evaluará a 0 porque es una división entera (no importa el 'pow 'la función toma un doble). –

+3

@ H2CO3 Mencioné que es un pseudocódigo: no sé el Objetivo C. Sin embargo, tengo que administrarlo, es algo bastante obvio para cualquier lenguaje derivado de C. –

+1

Lo sentimos, tienes razón. –

5

Tienes que encontrar la quinta raíz de y, que es el/quinta potencia 1 :

return pow(volume, 1.0/5); 
0

Ej:

5 = pow(y, 5); 

=>

double y = pow(5, (1.0/5.0)); 
0

puede usar esto.

si x = y^5

entonces y = x^1/5 significa y = x^0,2

+(float) volumeCurveToLinearVolume:(float)volume 
{ 
    return powf(volume, 0.2); 
} 
3

Prueba este

Y=Math.Log(x)/Math.Log(5) 
Cuestiones relacionadas