Primzahlen

Die wohl einfachste und elementarste Lösung ist folgende:

Man suchte eben alle Primzahlen zwischen ]2; n]. Und zwar prüft man die Zahl x, indem man jede Zahl zwischen ]2; x] mit den schon gefundenen Primzahlen prüft (auf eben restlose Teilbarkeit).

Eine schnellere Methode wäre, ein Array mit der Größe n (1 initialisiert) zu erstellen und dann 2 verschachtelte Schleifen die von 2 bis n/2 laufen und jeweils in array[index1*index2]=0 setzen.
Jede Position, an der eine 1 steht, stellt eine Primzahl dar.

Ich hoffe, das reicht,
Stefan!

Moin

Eine schnellere Methode wäre, ein Array mit der Größe n (1
initialisiert) zu erstellen und dann 2 verschachtelte
Schleifen die von 2 bis n/2 laufen und jeweils in
array[index1*index2]=0 setzen.
Jede Position, an der eine 1 steht, stellt eine Primzahl dar.

sagen wir er sucht alle Primzahlen

Hallo

Eine schnellere Methode wäre, ein Array mit der Größe n (1
initialisiert) zu erstellen und dann 2 verschachtelte
Schleifen die von 2 bis n/2 laufen und jeweils in
array[index1*index2]=0 setzen.
Jede Position, an der eine 1 steht, stellt eine Primzahl dar.

sagen wir er sucht alle Primzahlen

Hi ho,

moderne Compiler passen Byte-Werte auf 4-Byte-Adresswerte an, da diese von den aktuellen Prozessoren schneller verarbeitet werden können. Wenn Du „pech“ hast, dann wird Dein eigentlich platzsparen programmiertes Programm im Speicher doch wieder mehr Platz brauchen, als Du geplant hast…

Viele Grüsse,

Herb

Hallo Herb,

moderne Compiler passen Byte-Werte auf 4-Byte-Adresswerte an,
da diese von den aktuellen Prozessoren schneller verarbeitet
werden können. Wenn Du „pech“ hast, dann wird Dein eigentlich
platzsparen programmiertes Programm im Speicher doch wieder
mehr Platz brauchen, als Du geplant hast…

Da zeigt es sich halt ob man den Compiler und Linker beherscht oder nur etwas mit den Dafault-Einstellungen zu Wege bringt !! :wink:)

MfG Peter(TOO)

sagen wir er sucht alle Primzahlen