mój problem wygląda tak. Napisałam skrypt obliczający miejsca zerowe funkcji za pomocą metody siecznych. Dane wejściowe to dwa punkty startowe, dopuszczalny błąd obliczeń i max liczba iteracji. Wszystko działa ok dopóki nie wpiszę np takich danych:
x1 = 0 x2=5 blad = 0.99 liczba iteracji = np 200
wtedy otrzymuje dosyc dziwny wynik Miejsce zerowe funkcji: 12833090813.989
przy
x1 = 0 x2=8 blad = 0.99 liczba iteracji = np 200
Miejsce zerowe funkcji: -24.022540007882
Można jakoś uniknąć podobnych rewelacji?
kod skryptu:
<? function fun($x) { return 2*sin($x+2); } $f1 = fun($x1); $f2 = fun($x2); { { $it = 0; break; } $x0 = $x1 - $f1 * ($x1 - $x2) / ($f1 - $f2); $f0 = fun($x0); $x2 = $x1; $f2 = $f1; $x1 = $x0; $f1 = $f0; } ?>
link do skryptu w praktyce:
http://www.akadna.pl/sieczne/
DRUGA sprawa. wczesniej uruchamiałam ten skrypt na innym serwerze (mam dostęp do kilku kont na kilku roznych serwerach), do tej pory działał. Teraz nie działa(dodam ze nic nie zmienialam w miedzyczasie w kodzie). Przyjmuje dane z formularza ale nie wyswietla efektów strony. Wie ktoś może co jest grane?
link do niedzialajacego (2006-11-02 18:56 ) skryptu:
http://www.margot.webd.pl/pk/sieczne/
z gory dzieki