Egy 100millió karakterű számot hány biten lehet tárolni?
Ilyen nagy számokhoz ezt használják:
Ha 1 karakternek 1 byte-ot veszünk, akkor az egész szám 100millió byte, azaz kb 95MB lenne. Számos programozási nyelvhez találsz könyvtárat ezen az oldal alján.
Minek neked akkor szám?
Az ismert univerzum részecskéinek a száma 10^72 és 10^87 közé esik.
Neked meg egy 10^100000000 méretű szám kell... :D
egy százmillió karakterből álló számot akarsz tárolni.
1 biten 2^1 számot tárolhatsz, ez ugye 1.
2 biten 2^2 számot tudsz tárolni, ez ugye 4
3 biten 2^3 számot tárolhatsz, ez a 8.
a kérdés hogy mennyire kell emelni a 2-őt hogy 100milliót kapj.
Az egyenleted tehát:
2^x=100.000.000
Ebből x nagyjából 26.5754. Tehát 27 biten tudod tárolni a 100.000.000-nál kisebb számokat
Pythonban például beépített típus a long, ami tetszőleges nagyságú egész szám. HA stringként akarjuk tárolni, akkor 100 millió karakter akkor kicsit több, mint 95 MByte.
Egyébként meg sokkal kevesebb ennél, kb 35-40 MBytera jön ki.
1 Byte 8 bit, 1 MByte 1024*1024 Byte.
Szóval a kérdéseidre:
1) Hány bit? Szorozd ki, kb hány biten tárolhatod, függ a tárolástól és magától a számtól is, nem mindegy, hogy az első karaktere 9 vagy 1.
2) Van ilyen változó? Igen, van. Lásd fentebb, Python. De a matematikai nyelvek is bizonyára képesek rá, Matlab stb.
3) A memória... manapság teljesen normális, hogy 4-8 GByte memória legyen egy gépben. A giga nagyjából milliárdszorost jelent. Ez felfoghatatlanul nagy mennyiség.
A letárolástól függ.
Letárolhatod:
-BCD kódban ((úgy 1 számjegy 4 biten fér el (1 byte-on kettő)))
-Simán bináris számként
-Valamiféle veszteségmentes tömörítési formátumba varázsolnád át azt a bináris számot
- Ha viszont nem baj egy kis kerekítés, akkor lebegőpontos számábrázolási módokat ajánlanék.
Van arra 4-5 féle gyakran használt módszer (persze nem lehetne egyben letárolni, hanem valami matematikai/logikai művelettel több szabványos lebegőpontos számban tárolnád.
- Ha lebegőpontos ábrázolásnál tartunk, akkor saját magad is csinálhatsz egy lebegőpontos számábrázolási módot annak a függvényében, hogy mekkora a számod és mennyire akarod, hogy pontos legyen.
Egyébként ilyen kérdések úgy születnek, hogy elméleti szinten elgondolkozik rajta valaki. De ha megoldandó problémaként merül fel a gyakorlatban valami ilyesmi, akkor az egy nyakatekert, túlbonyolított és hlyén megvalósított problémamegoldás következménye, aminél saját magunknak adunk mattot.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!