Hogyan számolnak millió hosszúságú számokkal ha a szám típusú változóknak (legalábbis amiket én ismerek) sokkal kisebbek a korlátai?
Figyelt kérdés
Pl a PÍ-t kiszámolták valami 5 millió tizedesjegyig azt mégis hogyan?2016. nov. 11. 15:20
1/14 anonim válasza:
A "szám típusú" változók, amikről beszélsz, leginkább architekturális okokból olyan rövidek. Arra célzok, hogy a processzornak számolni könnyebb egy 32 bites inttel, ha ő maga 32 bites szóhosszal rendelkezik (vagy akár 64-gyel).
Ettől még lehet saját típusokat gyártani, lehet string reprezentációkkal számolni stb. Nem a cpu szóhossza fogja behatárolni, hogy tudsz-e találni egy 10000 jegyű prímszámot.
példa: [link]
2/14 A kérdező kommentje:
java-ban lehet ilyet csinálni?
2016. nov. 11. 15:40
3/14 anonim válasza:
Nem, javaban nem. Bármely másik programnyelven lehet, de a javaban PONT NEM!
4/14 anonim válasza:
És azon felül, hogy a fent említett módokon gyakorlatilag bármilyen hosszú számot lehet reprezentálni, ha esetleg még így is korlátba ütköznének (elfogy a memória), akkor lehet részeredmények fájlba írásával memóriát felszabadítani, részegységeket számolni, miegyéb (amikor a technika kevésnek bizonyul, a matematika új utakat mutat) :D
5/14 Hominida válasza:
Meg lehet azt csinálni bármilyen nyelven, amelyik tud stringeket és logaritmust kezelni, de a sebessége persze igen változatos skálán mozoghat. A Java speciel nem tartozik a villámgyors cuccok közé, de feltételezem, hogy te is inkább az élményért csinálnád, nem a világ csúcsszámítógépeit akarod lepipálni. :-))
6/14 A kérdező kommentje:
Hát az igazság az hogy apám ki akarja számolni a gyök kettőt.
2016. nov. 11. 17:09
7/14 anonim válasza:
Oszt mégis milyen pontossággal?
8/14 A kérdező kommentje:
Hát elég sokáig szeretné apám szóval eléggé. Meg műveletet is végezni a számmal.
2016. nov. 11. 17:21
9/14 dq válasza:
Nem változóban tárolják a számot.
Hogy mást ne mondjak: az alapműveletekre (osztás, kivonás) az az algoritmus, amit alsóban tanulsz (írásban), az működik lokálisan, a számoknak csak kis részét használva egyszerre.
(Egyébként minden algoritmus működik így, vagy legalábbis emulálható így, hiszen egy Turing gép emulálható így)
10/14 anonim válasza:
Ha ügyesen guglizik, megtalálhatja 1millió jegyig: [link]
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
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!