To nie Scanner ma problem a pow, poniewaz dochodzi do matematycznej sprzecznosci. W Twoim obliczeniu dochodzi do podobnej sytuacji:
(-5)^(1/2) czyli pierwiastek z (-1/5) - nie ma pierwiastka kwadratowego (a takze pierwiastka o stopniu parzystym) dla liczby ujemnej
Ale chyba w Twoim obliczeniu nie dochodzi do tego. Bo np. kalkulator pokazuje wynik dla (-5)^0.16 i po rozpisaniu na kartce wszystko sie zgadza, takze to pow ma jakies ograniczenia, ktorych poki co jeszcze nie rozumiem do końca.
Tutaj masz dokldaniejsze wyjasnienia tego:
http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#pow-double-double-
W Twoim przypadku chyba bedzie ten ostatni if:
If the first argument is finite and less than zero
[...]
if the second argument is finite and not an integer, then the result is NaN.