Osaisko kukaan neuvoa kuinka tehdään ohjelma, joka lukee kokonaisluvun ja tutkii onko se täydellinen?
Täydellinen luonnollinen luku
Hukassako
5640
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 5
Vanhimmat
Jos a on parillinen täydellinen luku, se on muotoa 2^{p-1}(2^p-1). Siten riittää tutkia onko 2^p-1 alkuluku. Tämä on Mersennen luku, joten tämän luvun todistaminen alkuluvuksi on nopeaa Lucasin–Lehmerin testin avulla.
Jos a on pariton täydellinen luku, lienee ainoa keino etsiä luvun alkulukuhajotelma ja tutkia onko sigma(n)=2n. Voit kuitenkin nopeuttaa laskentaa havaitsemalla, että jos parittomia täydellisiä lukuja on olemassa, niiden on oltava suurempia kuin 10^300 ja sillä on oltava ainakin 75 tekijää, joista suurin > 10^8.
Osaakko vielä sanoa mistä löytys koodin pohjaa malliks tuon tyylisen ohjelman tekoon?
En tiedä valmiita ohjelmia. Mutta täydellisten lukujen aritmetiikka on varsin suoraviivaista, joten voithan tehdä tuollaisen itsekin. Minulla ei valitettavasti ole aikaa ylimääräisille koodausprojekteille.
Eikös nuo lehmer/rabin anna vain todennäköisiä alkulukuja?
En ole opiskellut Lehmerin–Rabinin testiä, voi olla, että se antaa vain pseudoalkulukuja. Nyt olikin kyse Lucasin-Lehmerin testistä, joka toimii Mersennen luvuille.
http://www.jt-actuary.com/lucas-le.htm