Side 1 av 1

Å søke etter store primtall

Lagt inn: 19/07-2008 01:42
av Maple
Det er en belønning ute, på $100'000, til den som finner et primtall med minste en million sifre. Samt større premier for ti millioner sifre, og hundre.

Jeg lurer litt på hvordan programvare man bruker til å søke med en bygd opp. Dette handler vel minst like mye om informatikk som matematikk, men jeg tenkte ikke noen ble sure av den grunn. :)

Jeg har lekt litt med ulike algoritmer og programmeringsspråket Java. Der har du en variabel-type som heter long. Den lagrer heltall, og jeg vet at den i alle fall tar tall opp til 10^15.

Poenget mitt er at jeg har 15 sifre. Skal jeg finne et nytt største primtall og vinne premie må jeg ha minste én million sifre.

Hehe. Kanskje jeg skal installere og kjøre GIMPS jeg og. :)
http://en.wikipedia.org/wiki/GIMPS
Det er bare å starte programmet, så blir du en del av den store jakten. :)

Lagt inn: 19/07-2008 02:04
av Maple
Æh, OK.

Jeg fant visst ut av det finnes en klasse BigInteger i klassebiblioteket til Java som kan takle dette. :)

Beklager surringen.

Lagt inn: 19/07-2008 02:16
av Knuta
Ja lykke til, vanskelig å programmere det. Det skal jeg skrive under på.

Lagt inn: 19/07-2008 13:49
av Maple
Knuta skrev:Ja lykke til, vanskelig å programmere det. Det skal jeg skrive under på.
Det er bare for å leke seg litt da. :)

Lagt inn: 19/07-2008 13:54
av Emilga
Det finnes en liknende oppgave på Project Euler. (ID 7, tror jeg.) Der skal du finne det 10001. primtallet. :) Forskjellen er bare at du kun vinner heder og ære ...

Lagt inn: 19/07-2008 15:38
av MatteNoob
Med dagens dollarkurs er ikke $100,000 så mye heller. Det finnes nok enklere og raskere måter å skaffe en slik sum på. Jovisst får man æren av å finne primtallet, men med dagens utvikling, så er det ikke lenge før et større primtalle blir funnet, og da går man i glemmeboken igjen. :]

EDIT:
Men det hadde jo vært moro om en nordmann fant det, og enda bedre om personen hadde hatt tilknytning til matematikk.net, hehe :)

Lagt inn: 19/07-2008 16:04
av Maple
Emomilol skrev:Det finnes en liknende oppgave på Project Euler. (ID 7, tror jeg.) Der skal du finne det 10001. primtallet. :) Forskjellen er bare at du kun vinner heder og ære ...
Det 10001. primtallet er 104743. :)

Tok ikke et sekund å regne ut engang... :)

Lagt inn: 19/07-2008 16:57
av Karl_Erik
MatteNoob skrev:Med dagens dollarkurs er ikke $100,000 så mye heller. Det finnes nok enklere og raskere måter å skaffe en slik sum på. Jovisst får man æren av å finne primtallet, men med dagens utvikling, så er det ikke lenge før et større primtalle blir funnet, og da går man i glemmeboken igjen. :]

EDIT:
Men det hadde jo vært moro om en nordmann fant det, og enda bedre om personen hadde hatt tilknytning til matematikk.net, hehe :)
Pfft. Hva skjedde med motivasjonen "for en bedre verden og for kunnskapens skyld!"?

Lagt inn: 19/07-2008 17:39
av MatteNoob
@ Karl_Erik:
Tar den, innlegget mitt tok farge av min misnøye over dette

Lagt inn: 20/07-2008 16:28
av Maple
Jaja, nå gir jeg opp dette...

Hvorfor?

Fordi maskina mi ikke engang klarer å spare på så store tall... det går fint med tall med hundre tusen siffre, men når jeg prøver med én million da går det dårlig... og poenget var jo å finne et primtall med over _ti_ millioner siffre. :)

Mulig det hadde gått med et annet språk, eller med en annen klasse enn den BigInteger-klassa som følger med Java...

Lagt inn: 20/07-2008 16:33
av Emilga
Du må gjerne poste kildekoden din. :D

Lagt inn: 20/07-2008 16:59
av Maple
Vel... det er dette maskina sliter med:

Kode: Velg alt

BigInteger startValue = new BigInteger("10");
startValue = startValue.pow(10000000);
Rett og slett. :)

Klarer ikke opprette så store tall, i alle fall ikke med BigInteger-klassen.