Hallo,
mein Informatik-Lehrer hat uns eine Aufgabe gegeben, die wie folgt heißt:
Funktionieren soll das Programm wie folgt: Es wird ein Array von booleschen Werten angelegt, indiziert von 2 bis zur benötigten Größe, alle Einträge werden mit true initialisert. Der Wert false an Stelle i soll bedeuten, dass Zahl i sicher keine Primzahl ist. Wir durchlaufen die Zahlen ab i=2 bis zum Maximalwert und machen jeweils folgendes: Wenn der Eintrag an der Stelle i den Wert true hat, dann ist i eine Primzahl und diese wird ausgegeben, und alle Vielfachen von i werden in der Tabelle mit false gekennzeichnet. Implementiere dieses Verfahren, das als Sieb des Eratosthenes bekannt ist.
Mein Code sieht bisher so aus:
package main
import "fmt"
import "math"
func main() {
var MAX_ZAHL int
fmt.Println("Geben Sie die Zahl an, bis zu dessen Grenze die Primzahlen ausgegeben werden sollen!")
fmt.Scanln(&MAX_ZAHL)
fmt.Println("Die Primzahlen werden bis zu einer Größe von ", MAX_ZAHL, "ausgegeben")
}
Wie Arrays funktionieren, weiß ich. Aber durch die momentane Situation bei mir konnte ich nicht viel nachholen (und da mein Lehrer uns eher ohne Hilfen ausstattet).
Den boolschen Wert verstehe ich ebenfalls nicht so ganz.
Könnte mir jemand bei dieser Aufgabe helfen?
Danke im Voraus.