Obliczenia na dużych liczbach z duża dokładnością

0

Mój problem polega na tym, że mam wzór na n-ty wyraz ciągu w postaci:
An = A2*(n-1) + (n-2)*(n-2);
A2 nie może być większe niż 1000, jednak n może sięgać liczb rzędu 1 000 000 000.
Obliczenie na typie double gubi dokładność dla wyższych liczb, a inty odpadają i z pewnością nie mieści się to w typie ull(unsig. long long), a jeszcze do tego mam dalsze obliczenia, które mogą być również ujemne, czyli "unsigned" już z woli odpada w kąt ;/ Macie jakiś pomysł jak to obliczac? Zależy mi też na szybkości działania tego programu...

0

Własna arytmetyka.
Trochę możesz poczytać o tym tutaj http://main.edu.pl/user.phtml?op=show&page=algorytmika&c=50000

0

O widzisz, chyba mi pomogłeś... :]

0

GOOGLE: vlong lub BigInt

0

Pozwole sie podlaczyc pod temat zeby nowego nie zakladac...
Czy ktos bedzie w stanie mi pomoc uruchomic vlong lub bigint w Microsoft Visual Studio ?

Pisze aplikacje podpisu cyfrowego na RSA i potrzebuje robic operacje na 128bitowym hashu md5 wiadomosci przesylanej.
Przypomne schemat działania algorytmu RSA:
1.Wybieram losowo dwie duże liczby pierwsze P i Q
2.Wyliczam iloczyn N=PQ oraz T=(p-1)(Q-1)
3.Wybieram e -względnie pierwsze do T, tzn. NWD(e,T) =1
4.Obliczam D, z kongruencji de = 1 (mod(T))
5. Otrzymuje:
Klucz publiczny(N,e)
Klucz prywatny(N,D)

[email protected]
6.Obliczam funkcję szyfrującą c=me mod(N) oraz funkcję deszyfrującą M = cD mod(N)

0

Aby ją podpiąc, wystarczy w tym pliku co masz zapisany projekt i gdzie go kompilujesz wrzucić całą bibliotekę i zainkludować jak w przykładach, nie wiem dokładnie nie zamierzam się tym bawić ;P

0

tez tak myslalem, ze wszystko zgrabnie pojdzie ale jakos mi nie idzie...

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