pow(a,b) , exp(log(a)*b), log(a) a. log (a) a <= 0 . a integer b / b=1/(some_integer). b, b=1/(some_integer) , .
, pow(-a,b) -pow(a,b)? , , .
duskwuff, "" log exp, "" ( ), ( cpow ). , pow() s.
, : , pow(a,b) , , , , ( - ), / .
, , pow(-1,.5). X , X^2==-1. , ? 2 : i -i. , pow(-1, 1/N) N , .
pow(a,b) , , . 1e-6 * max (abs (a), abs (b)) " " . " " pow(-1,0.5), 0 + 1i (0 , 1 ). , , .
In any reasonable implementation with one returns a result cpow(), cpow(-1,0.3333)probably will return something like -1+0.000001iand ignore the other two values with significant imaginary parts. Therefore, you can simply accept this real value and respond.