Mo?żliwie DUŻA zmienna liczbowa

0

Standardowe zmienne liczbowe w Delphi są zdecydowanie zbyt małe, do tego, co jest mi potrzebne (liczby sięgające 10 do setnej :-8 ), czy jest jakiś sposób na zaalokowanie większej niż standardowa ilości pamięci do zmiennej? Nie obchodzi mnie, ile to może zająć pamięci, niech se nawet będzie miało 50MB.

0

a poco ci taka duża zmienna ?

0

Do dużych potęg. Po przekroczeniu jakiegoś progu (chyba 10 do dziesiątej) wyniki to same bzdury.

0

heh, to wszyscy wiedzą, ponieważ zmienna przekracza swój zakres. Jednak problem dużych liczb nie jest od pamięci, tylko mocy obliczeniowej komputera.

0

1Ghz i 256MB DDR to słaby komputer? To co ja mam zrobić, kupić Cray X1 żeby obliczać durne potęgi? ;)

0

masz costakiego jak float i odpowiedniki, i tych typach ukryta jest moc duzych liczb :)

0

to niestety wynika z architektury systemów 32-bitowych. Jakbyś miał Intel Itanium to byś miał większe zmienne. Np word w 16-bitowym Pascalu to 0..około 65535 a w 32-bitowym Delphi już od 0 do 4 miliardów.

0

Nie mówcie w czym problem tylko podawajcie rozwiazanie.
Jeżeli ma być liczba całkowita to możesz co najwyżej użyć Int64. Największa możliwa liczba to 264, czyli znacznie mnie niż 10100
Jeżeli chcesz operować na liczbach nieskończonej precyzji to zapisuj je tak jak wielomiany. Np. rezerwujesz tablicę:

var
Liczba: array [0..100] of Byte;

Która reprezentuje poszczególne współczynniki wielomianu przy podstawie np. 10 (czyli kolejne cyfry liczby w systemie dziesiętnym).

Jeżeli chcesz szybkie narzędzie do operacji na takich liczbach (zapisywanych zdaje się w stringach...) to na www.torry.net jest moduł do obsługi takich liczb (w większości w asm, więc porządnie chodzi).

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