Dokładność obliczeń i nieskończoność

Odpowiedz Nowy wątek
2006-02-26 15:37
0

Mam do wykonania bardzo dokładne obliczenia. Chociaż korzystam z typu extended, nie wychodzi to tak jak powinno. W obliczeniach korzystam z pierwiastkowania i potęgowania głównie. Czy Delphi w trakcie takich obliczeń może zaokrąglać wartości? I jeżeli tak, to jak ten problem ominąć. Jaką największą dokładność można uzyskać.
Jest coś takiego jak Infinity, czyli nieskończoność
const Infinity = 1.0 / 0.0;
Jeżeli potrzebuję wielkości nieskończenie małej, to czy mogę skorzystać po prostu z 0.0 ?

Pozostało 580 znaków

2006-02-26 15:48
0

To nie Delphi zaokrągla tylko kooprocesor matematyczny. Extended daje największą możliwą dokładność wspieraną sprzętowo. Możesz to ominąć samemu, implementując działania na tak dużych obszarach pamięci jak chcesz (ale obliczenia oczywiście wolniejsze), ręcznie.

Jeśli wynik działania w kooprocesorze jest mniejszy niż najmniejsza liczba, jaką potrafi przedstawić w postaci niezerowej, on sam też zwraca zero (analogicznie - jeśli wynik jest większy niż największa dostępna, zwraca nieskończoność).


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-02-27 00:31
0

Przede wszystkim: Chcąc rozwiązywać coś z nieskończoną dokładnością, musiałbyś robić to analitycznie. Stąd wniosek, że zwykłe zapisywanie liczb Ci nie pomoże. Musisz jakoś zaimplementować liczenie analityczne, przy czym "liczba" musiałaby mieć możliwość zawierania dowolnej liczby, którą można zapisać analitycznie, co może być dość skomplikowane...


Grunt to uziemienie...

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0