Owszem, ale jak wspomniałem nie znam owego języka wiec nie wiem czy obsługa wyjątków jest zaszyta w użytej funkcji (tak, wiem ,nie funkcje tylko metody czy jak to zwał, ale tu działa jak funkcja)
Ponadto nie wiem czy zewnętrzny formularz nie wymusza poprawności danych.
Jeżeli nie to oczywiście należy obsługę wyjątków dopisać przed linią 25.
Ja osobiście odfiltrowałbym podstawy mniejsze lub równe zero.
Tyle że nie wiem czy naszej Koleżance to nie zaciemni sprawy.
Pewnie że używał. I to z kartami fortranowskimi.
Jajca były jak się zapomniało karty o etykiecie do której goto kierowało.
Na etapie testowania otrzymywało się stertę papieru z drukarki wierszowej jako wydruk błędu. I tam na którejś płachcie można było znaleźć przyczynę.
Gorzej, jeżeli etykietę się pomyliło. Jak się miało pecha to program się nie krzaczył tylko liczył jakieś cuda, a szukanie przyczyny to była detektywistyczna praca.
x < 0, ale nie NegativeInfinity ; y nie jest liczbą całkowitą, NegativeInfinity lub PositiveInfinity . Wtedy wartość to NaN
Więc jeżeli chcesz wynik to musisz sprawdzić czy liczba jest ujemna a stopień nieparzysty, a następnie policzyć pierwiastek z wartości bezwzględnej i dodać minus (czyli pomnożyć przez -1 na końcu)