CodeVibe BBS · Node 1/1 · 14400 bps 8N1Gebruiker: Bezoeker · --------- --:--:--
>>> Denny's officiële homepage - in aanbouw sinds 1990 <<<
*** WELKOM OP MIJN HOMEPAGE *** BEST BEKEKEN IN NETSCAPE NAVIGATOR 3.0 OP 800x600 *** JIJ BENT BEZOEKER NUMMER ------ ***

* CodeVibe™ *

~ Denny's officiële homepage ~

NIEUW! In aanbouw sinds 1990 NIEUW!

In aanbouw

In aanbouw
» Home » Projecten » Priemgetallenspiraal

Schrijf de getallen 1, 2, 3, 4 … in een spiraal op een rooster en kleur de priemgetallen. Je verwacht een rommelige wolk. In plaats daarvan zie je rechte lijnen. Dit is de beroemde Ulam-spiraal, en je kunt hem hier zelf verkennen: schuiven, inzoomen en op elk puntje wijzen om te zien welk getal het is.

» Open de Priemgetallenspiraal

De Ulam-spiraal: priemgetallen als gele vierkantjes, met duidelijke diagonale lijnen
De Ulam-spiraal, beginnend bij 1 in het midden. Let op de schuine rijen gele vierkantjes.

» Het verhaal

De wiskundige Stanislaw Ulam zat in 1963 op een saaie bijeenkomst, zo wordt verteld, en begon uit verveling getallen in een spiraal op papier te schrijven. Hij omcirkelde de priemgetallen, en zag dat ze opvallend vaak op rechte lijnen lagen. Later liet hij een computer van het laboratorium in Los Alamos het voor veel meer getallen doen, en het patroon bleef zichtbaar. Martin Gardner schreef er in 1964 over in Scientific American, en zo werd het plaatje bekend.

» Zo gebruik je hem

  • Kijk rond. Sleep met je muis of vinger. Met het muiswiel of knijpen zoom je in en uit. Ver uitgezoomd zie je per pixel het aandeel priemgetallen.
  • Wijs iets aan. Je ziet welk getal het is, of het een priemgetal is, en anders uit welke priemgetallen het bestaat. Bij tweelingpriemen staat de partner erbij.
  • Vorm. Naast de vierkante Ulam-spiraal is er de ronde Sacks-spiraal en een gewoon raster met rijen van een breedte die je zelf kiest.
  • Begin bij. Start de spiraal niet bij 1 maar bij een ander getal. Bij 41 krijg je een hele lange diagonaal vol priemgetallen.
  • Kleur. Kleur op het laatste cijfer, of laat zien hoeveel verschillende priemfactoren elk getal heeft. Met de optie tweelingpriemen lichten priemparen als 11 en 13 op.

» Waarom die lijnen?

1. Een diagonaal is een formule.
Loop je in de spiraal langs een schuine lijn, dan horen de getallen bij een formule als 4n² + bn + c. Elke stap vooruit op de lijn verandert n met 1. Sommige zulke formules leveren veel priemgetallen op, andere bijna geen. Daarom zijn sommige diagonalen vol en andere leeg.
2. Even getallen vormen hele lijnen.
In een spiraal vanaf 1 liggen de even getallen op om-en-om-diagonalen. Op die diagonalen vind je dus nooit een priemgetal, behalve de 2. Dat verklaart een deel van het gestreepte beeld.
3. De formule van Euler.
De formule n² + n + 41 geeft een priemgetal voor n = 0 tot en met 39. Begin je de spiraal bij 41, dan ligt die reeks op één lijn, en dat is de lange diagonaal die je dan ziet.
De Sacks-spiraal: priemgetallen als gekleurde stippen op spiraalarmen
De Sacks-spiraal met 300.000 getallen, gekleurd op laatste cijfer. De vierkante getallen liggen op de rechter as. Die as is bijna leeg.
4. De Sacks-spiraal.
In 1994 bedacht Robert Sacks een ronde variant. Het getal n komt op afstand √n van het midden, en per kwadraat (1, 4, 9, 16 …) gaat de spiraal een volle ronde. Alle kwadraten liggen daardoor op dezelfde rechte lijn, en de priemgetallen vormen er bogen langs.
5. Rijen.
Zet je de getallen in rijen van 30, dan liggen alle priemgetallen (behalve 2, 3 en 5) in maar 8 kolommen. Dat zijn de getallen die geen veelvoud van 2, 3 of 5 zijn. Dit is dezelfde reden als bij de Ulam-spiraal, op een eenvoudiger plek.

» Hoe werkt het, simpel uitgelegd

1. Eerst de priemgetallen: de zeef van Eratosthenes.
Bij het openen zoekt de pagina alle priemgetallen tot 6 miljoen. Dat gaat met een truc van de Griekse wiskundige Eratosthenes, van ongeveer 250 v.Chr. Je hoeft niet elk getal apart te testen. Je streept gewoon af wat geen priemgetal kan zijn. Zo werkt het voor de getallen tot 30:
  1. Schrijf alle getallen van 2 tot en met 30 op.
  2. Pak het eerste getal dat nog niet is doorgestreept: 2. Dat is een priemgetal. Streep al zijn veelvouden door: 4, 6, 8, 10 enzovoort.
  3. Het volgende getal dat nog staat is 3, dus ook priem. Streep zijn veelvouden door: 6, 9, 12, 15 … Sommige waren al weg, dat geeft niet.
  4. Dan 5. Streep 10, 15, 20, 25 en 30 door.
  5. Ga zo door. Wat aan het eind overblijft is priem: 2, 3, 5, 7, 11, 13, 17, 19, 23 en 29.
Waarom klopt dat? Een getal dat wordt doorgestreept is een veelvoud van iets kleiners, dus het kan niet priem zijn. Een getal dat nooit wordt doorgestreept heeft geen kleinere deler, en dat is precies wat priem betekent.

Een handig detail: je hoeft maar door te strepen tot de wortel van de grens. Voor 30 is dat 5, want de wortel van 30 is ongeveer 5,5. Elk samengesteld getal tot 30 heeft namelijk een deler van 5 of kleiner, dus tegen die tijd is alles al weggestreept. Bij 6 miljoen zijn alleen de priemgetallen tot ongeveer 2449 nodig.

In de code is het letterlijk dit. Een lange rij van 6 miljoen vakjes begint met overal een 1, wat “priem” betekent. Voor elk getal dat nog op 1 staat, worden zijn veelvouden op 0 gezet (doorgestreept). Dat begint bij het getal keer zichzelf, want kleinere veelvouden zijn al door een kleiner priemgetal weggehaald. Dit kost de computer maar een fractie van een seconde. Daarom kan de pagina het bij het openen doen, en hoeft er geen lijst met priemgetallen mee te komen.
2. Van plek naar getal.
Elk vakje van het scherm heeft een plek (hoeveel naar rechts en omhoog). Een kleine formule rekent uit welk getal daar hoort. Daardoor hoeft de spiraal niet opgeslagen te worden, en kun je naar elk punt zoomen.
3. Kleuren.
Voor elk vakje kijkt het programma of het getal priem is en kiest daar een kleur bij. Als je zo ver uitzoomt dat een pixel meer dan één vakje beslaat, telt het programma hoeveel daarvan priem zijn.

» Wat het niet is

  • De grens ligt bij 6 miljoen. Verder zijn de getallen niet uitgerekend.
  • Het is geen bewijs van iets. De patronen zijn deels verklaard, maar niet volledig.
  • In de Sacks-spiraal werkt de optie “Aantal priemfactoren” niet, en de beginwaarde ook niet. Die spiraal begint altijd bij 0.
Gebouwd metHTML / CSS / JS / Canvas
TypePrivéproject, voor de lol
Jaar2026
Status● Online

» Open de Priemgetallenspiraal « Terug naar projecten

» Bronnen




Deze pagina is Y2K-proof • Geoptimaliseerd voor 800x600 • 256 kleuren
© 1990-2026 CodeVibe™ door Denny • Alle rechten voorbehouden
Laatst bijgewerkt: • webmaster@codevibe.nl • ^ terug naar boven ^

Deze pagina is Y2K-proof • Geoptimaliseerd voor 800x600 • 256 kleuren
~ SURF'S UP, GOEDGEKEURD DOOR DE WEBMASTER ~
CodeVibe BBS GeoCities AltaVista Netscape Now! Winamp XTree Pro Gold Yahoo! Lycos Made with Notepad Tucows Duke Nukem 3D Now! Get Java ICQ me Windows 3.1 Get Shockwave Flash Go NoNags HTML 3.2 certified No frames! In aanbouw
CodeVibe BBS © 1990-2026Laatst bijgewerkt: · webmaster@codevibe.nl