Cómo resolver para x ? Donde estamos interesados en el rango de $0 < x < 1$$C \neq 0$.
$$ B = x^c - (1 - x)^c.$$
La única cosa que se me ocurrió es sustituir $$ x = \sin^2y $$
pero yo no podía llegar a ninguna parte. $$ B = (\sin^2y)^C - (1 - \sin^2y)^C $$ $$ B = (\sin^2y)^C - (\cos^2y)^C $$ $$ B = (\sin y)^{2C} - (\cos y)^{2C}$$
Edit: supongo que tendremos que calcular los valores.
Ejemplo de uso de Java:
public class Calculate {
public static void main(String args[]){
for(double c = 0.5; c < 3; c += 0.5){
for(double x = 0.5; x < 1; x += 0.1){
double b = Math.pow(x, c) - Math.pow(1 - x, c);
System.out.format(" x= %.2f c= %.2f b= %.3f %n", x, c, b);
}
}
}
Edit2:
$$ x^z - (1 - x)^z $$
http://www.wolframalpha.com/input/?i=+x%5Ez+-+%281+-+x%29%5Ez
Edit3: Dado C y B, este código se encuentra x.
import java.util.Scanner;
public class Z{
public static void main(String args[]){
double c, b;
double x = 0.000001;
boolean outB = false;
Scanner input = new Scanner(System.in);
System.out.println("Enter a value for C");
c = input.nextDouble();
System.out.println("Enter a value for B");
b = input.nextDouble();
while((b - Math.pow(x, c) + Math.pow(1 - x, c)) > 0.00001){
x += 0.00001;
if(x <= 0 || x >= 1){
outB = true;
break;
}
}
if(outB){
System.out.println("Out of bounds!");
} else {
System.out.format(" x= %.3f c= %.3f b= %.3f %n", x, c, b);
}
}
}