Alkeellista alkuluku ohjelmointia

Hupiohjelmointia

Mikä on suurin alkulu, minkä saatte selville omalla koodillanne? Millaisella?
Mä sain tällaisella Rebol koodilla selville, että suurin Rebol kielen integer 2147483647 sattuu olemaan myöskin alkuluku.

rebol[]
luvut: [] ;Taulukoidaan tähän alkulukuja
print " "
append luvut 1
append luvut 2
append luvut 3
luku: 5
while [true][
onalkuluku: true
foreach l luvut [
if l > 1 [
if (luku / l = round (luku / l)) [
onalkuluku: false
break
]
]
]
if onalkuluku [
append luvut luku
if luku >= 46341 [break] ; Alkuluuja ei tarvitse taulukoida kuin Maxintin neliöjuureen
]
luku: luku 2
]
print last luvut

luvut2: []
luku: 2147483647 ; Maxint
while [true][
print luku
onalkuluku: true
foreach l luvut [
if l > 1 [
if (luku / l = round (luku / l)) [
onalkuluku: false
break
]
]
]
if onalkuluku [
print luku
break

]
luku: luku - 2
]
halt

4

132

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Setä.neuvoo.taas

      Aihetta sivuaa tai hipaisee hieman tällainen keskustelu:
      http://keskustelu.suomi24.fi/t/14870994/neliot-alkuluvut-ja-mod-6

      Valitettavasti en muista, miten suuria alkulukuja on löytynyt itse tehdyillä ohjelmilla. Nimittäin niitä laitteita ja menetelmiä oli niin runsaasti. Oli isompaa konetta, ja PC:tä, ja ohjelmoitavia laskimia. Perinteistä lineaarista ohjelmointia, sekä olio-ohjelmointia. Jotain alkulukuja suosittelin muille käyttää parametrina kryptausohjelmaan, jota myös tuli tehtyä erilaisille koneille erilaisia versioita.

      Lähinnä kahdenlaista menetelmää alkulukujen etsinnässä:
      Ohjelma pantiin käymään läpi parittomia lukuja, ja sisemmässä luupissa, silmukassa testattiin mahdollisia jakajia. Ohjelma nopeutui huomattavasti, kun oivalsin käyttää jakolaskutestissä vain jo löytyneitä alkulukuja, taulukoituja.

      https://fi.wikipedia.org/wiki/Eratostheneen_seula
      Eratostheneen seulaa muistuttavalla menetelmällä tein ohjelmaa huvikseni, harrastuksen vuoksi, ohjelmoitavaan laskimeen - muistaakseni siten, että taulukossa alkion pituus oli yksi bitti, totuusmuuttuja eli vipu. Taulukkoon viitattiin luvulla, indeksillä, joka sitten oli sama kuin testattava luku, että onko tämä alkulukua vai ei. Eli taulukkoon muotoutui ykkösiä vastaaviin kohtiin kuin missä alkulukuja esiintyi. Bittien nollaamisessa, eli jaollisuuden merkitsemisessä taulukkoon, voitiin käyttää jo löytyneitä alkulukuja. Esim. turha kokeilla jakajaksi taulukkoon 8, jos on jo läpikäyty kakkosella.

      Silloin tällöin on tullut haaveiltua, löytyisikö vielä muitakin menetelmiä alkulukujen etsintään. Internetissä on PDF-tiedostoja ja Youtube-videoita aiheeseen liittyen. Hakukoneeseen esim. PDF prime numbers.

      Aiheesta lienee luvattu jonkinlainen palkintokin. Oliko se puoli miljoonaa dollaria aina sille, joka tekee alkulukujen etsinnässä uuden ennätyksen?

    • koodikaveri

      Tuossa ei ole speksattu, kuinka paljon teoriaa voi olettaa taakse. Siis vaikkapa Python-ohjelma

      print("2^74207281-1 on alkuluku") tulostaa toistaiseksi suurimman tunnetun alkuluvun, vaikka ohjelma ei laskekaan sitä.

    • krikridiipui

      empä ole koittanut pitäis suoraan hypätä jonnekin, hemmetin suoreen kahden potenisiin ja lisätä tai vähentää siittä muutama numero ja sitten jollain konstilla yrittää jakaa sitä, siis kokeilla onko alku luku, ja jos ei ole niin lisätä sitten kolme ja kokeilla uudestaan ja jatkaan näin kunnes löytyy alkuluku, Mutta miten testaa helposti onko luku alku luku.
      vai pitääkö vain nousta numeroita eteenpäin ykkösestä ja aina kun tulee alkuluku niin alkaa kertomaan sitä toisesses arrayssä ja sitten tarkistaa onko luku jo jossain ärräyssä niin se ei ole alku luku
      eli
      array1 12345 jne..
      ja arry2 2468
      ja arry3 369...
      ja arry5 5,10, 15
      ...
      siten mennä array1 eteen päin joka kierroksella ja takistaa että sen luku ei ole muissa ayissä ja ainakun löytyy uus niin tehdä sille oma array jossa, sitä kerrotaan isommaksi joka kieros tarkistuksia varten

      Olis aika huono tapa tää koko ajan veis lissää muistia pitäis olla joku super tietokonen. Jos tällasen tekis oikeesti pitäis varmaan perehtyä papereihin aiheesta päästä johonkin yliopistojen tietokantoihin, ja lukea vähän millaista tutkimusta on aiheeesta ja aikaisempia parametreja praimsien löytymisestä

      Olen sen verran lukenut että suurimmat primsit eli alkuluvut enlish on löydetty haku ammunta menetelmillä hypäämällä yli paljon pienempiä primsejä. En kyllä viitti tehdä mitään koodia tämmösestä kun i tarte

      • kikiriidididii

        jaa se olikin jo tuon erotuksen seula, ylempänä, näin hän se on että ennekuin itse alkaa mitään miettiä niin kannattaa katsoa jostain vanhasta, sitä on niin paljon pyöriä jo nykään että kokoajaan tuppaa keksimään pyörää uudestaan, ja mitä se vaikuttaa ellei sitten tykkää sellaisesta


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Naiset miltä kiihottuminen teissä tuntuu

      Kun miehellä tulee seisokki ja ja sellainen kihmelöinti sinne niin mitä naisessa köy? :)
      Sinkut
      110
      7936
    2. Haistoin ensin tuoksusi

      Käännyin katsomaan oletko se todellakin sinä , otin askeleen taakse ja jähmetyin. Moikattiin naamat peruslukemilla. Tu
      Ikävä
      37
      2892
    3. Olet sä kyllä

      ihme nainen. Mikä on tuo sun viehätysvoiman salaisuus?
      Ikävä
      35
      2472
    4. Teuvo Hakkaraisesta tulee eurovaalien ääniharava

      Persuissa harmitellaan omaa tyhmyyttä
      Maailman menoa
      120
      2198
    5. Hiljaiset hyvästit?

      Vai mikä on :( oonko sanonut jotain vai mitä?
      Ikävä
      17
      1855
    6. Miksi kohtelit minua kuin tyhmää koiraa?

      Rakastin sinua mutta kohtelit huonosti. Tuntuu ala-arvoiselta. Miksi kuvittelin että joku kohtelisi minua reilusti. Hais
      Särkynyt sydän
      11
      1616
    7. Musiikkineuvos Ilkka Lipsanen eli Danny TV:ssä - Blondeja, hittibiisejä, räjäyttävä Danny Show...

      Ilkka Lipsanen eli Danny on viihdyttänyt meitä jo kuusi vuosikymmentä. Musiikkineuvos on myös liikemies, jonka voidaan
      Suomalaiset julkkikset
      38
      1459
    8. Turha mun on yrittää saada yhteyttä

      Oot mikä oot ja se siitä
      Suhteet
      10
      1456
    9. Kyllä poisto toimii

      Esitin illan suussa kysymyksen, joka koska palstalla riehuvaa häirikköä ja tiedustelin, eikö sitä saa julistettua pannaa
      80 plus
      15
      1415
    10. "Joka miekkaan tarttuu, se siihen hukkuu"..

      "Joka miekkaan tarttuu, se siihen hukkuu".. Näin puhui jo aikoinaan Jeesus, kun yksi hänen opetuslapsistaan löi miekalla
      Yhteiskunta
      11
      1374
    Aihe