Genereren van priemgetallen in structuurtekst

Moderators: ArcherBarry, Fuzzwood

Reageer
Berichten: 126

Genereren van priemgetallen in structuurtekst

"Ontwerp een programma in structuurtekst dat de priemgetallen van 1 tot 100 afdrukt op het scherm."

Probleemstelling:

-------------------

Het probleem zit hem niet in of ik al dan niet structuurtekst snap, aangezien dit reeds in grote mate geëigend en bovendien ook zekere noties van Pascal en Java. Het probleem zit hem eerder in het verwoorden van de voorwaarde waarop getest moet worden om te zien of het getal in kwestie een priemgetal is.

Voor zover ik begrijp na wikipedia.org raad te plegen, is er geen eenduidige formule voor het generen van priemgetallen, afgezien van de methode trial division en polynomen voor n < 41. Ik zoek echter naar een eenvoudige manier om deze voorwaarde te implementeren in mijn iteratie.

Wat denk ik te doen:

-----------------------

Het programma kent een selectie (if then / else) binnen een iteratie (bepaalde iteratie for...do). Ik had reeds gedacht aan for i = 1 to 100 do: if 100 mod i = 0 then result = false else print(result). Deze voorwaarde klopt echter niet voor alle getallen (als ik bv 12 invul ter controle, krijg je 100 mod 12 = 4, en zou 12 als priemgetal worden afgedrukt wat natuurlijk niet mag.

Weten jullie hoe ik dit best kan oplossen? ;) alvast bedankt!

Berichten: 186

Re: Genereren van priemgetallen in structuurtekst

effe snel ingerammeld, zoiets..

for i:= 1 to 100 do

begin

K := 0;

for j := 1 to i do

if i mod j =0 then K := k+1

if k = 2 then print(i) //"alleen deelbaar door 1 en zichzelf"

end

Gebruikersavatar
Berichten: 7.390

Re: Genereren van priemgetallen in structuurtekst

Een formule om priemgetallen te generen, bestaat er niet. Aan de hand van de definitie kan je echter wel met een iteratie voor elk getal testen of de definitie voldaan is... Voor elke waarde van n laat je een nieuwe lus runnen, die de delers van 2 tot en met n-1 test. En elke keer als mod wel nul geeft, augment je de variabele aantaldelers, ten slotte evalueer je deze variabele na de lus en print n al dan niet.

Voila, je was me voor ;)

Als je nu eens de K vervangt door c en de =k+1 door ++ ;) :)
"C++ : Where friends have access to your private members." Gavin Russell Baker.

Berichten: 126

Re: Genereren van priemgetallen in structuurtekst

Bedankt aan beiden! ;)

Reageer