Informatică, întrebare adresată de Shalii3049, 8 ani în urmă

2^255 am nevoie va rog mult urgent.


andrei750238: Ce doresti mai exact ?

Cat este 2 la puterea 255 ? E un numar astronomic, in niciun exercitiu nu ti se va cere asa ceva.

Cat este 2 XOR 255 ?
robloxscmasdetector: 253?

Răspunsuri la întrebare

Răspuns de andrei750238
1

► Daca cerinta este determinarea valorii expresiei 2^{255} (ceea ce e improbabil deoarece e un numar absolut astronomic cu 77 de cifre) atunci raspunsul este  57896044618658097711785492504343953926634992332820282019728792003956564819968

Determinarea numarului in baza 10 folosind un program C++/Python/Java  (nu ai precizat limbajul de programare, te rog specifica in comentariu daca asta iti trebuie) e o bataie de cap suplimentara, numarul NU incape in niciuna din tipurile de date predefinite. Aflarea numarului in baza 2 e foarte simpla, afisezi un 1 urmat de 255 de zerouri.

Sau in notatie stiintifica 5.7896045e+76 (aproximativ 5.7896045*10^{76})

Stiai ca ....

  • daca mai inmultesti numarul acesta cu 2 inca odata si obtii numarul de valori diferite care pot fi folosite intr-un algoritm de criptare standard folosit in practica, "military grade encryption" (algoritm AES-256)

► Daca se cere ultima cifra a lui 2^{255}, cerinta mult mai decenta pentru scoala/liceu atunci stiind ca

U(2^{4k})=6\\U(2^{4k+1})=2\\U(2^{4k+2})=4\\U(2^{4k+3})=8\\

Si ca 255 = 63*4 + 3, rezulta ca ultima cifra a lui 2^{255} este 8.

Daca ai nevoie de mai mult de ultima cifra (sau ultima cifra in alta baza) poti folosi teorema Fermat-Euler.

► Daca vrei sa afli 2 XOR 255 (simbolul ^ e operatorul XOR pe biti in multe limbaje de programare) atunci :

255 se scrie ca 11111111 in baza 2 pe 8 biti

2 se scrie ca 00000010 in baza 2 pe 8 biti

11111111 ^ 00000010 = 11111101, numar care inseamna 253 in baza 10.

Amintim regulile XOR :

0 XOR 0 => 0

1 XOR 0 => 1

0 XOR 1 => 1

1 XOR 1 => 0

Alte întrebări interesante