deepthroat
Erfahrenes Mitglied
Ja, und trotzdem stimmt die Ausgabe und der grundsätzliche Algorithmus nicht. Du müßtest die Schleife abbrechen wenn du einen Teiler versch. von 1 gefunden hast und du kannst erst nach Beendigung der Schleife (wenn kein Teiler gefunden wurde) sagen, das die Zahl eine Primzahl ist. Auch du bist offensichtlich mit der Komplexität des Algorithmus in dieser Form überfordert. Deswegen verstehe ich nicht warum du den Algorithmus nicht modular mit Hilfe einer Funktion implementierst. Diese Art der Hilfestellung ist meiner Meinung nach auch nicht besonders hilfreich, da sie den Lerneffekt völlig zunichte macht.Bedingt geb ich dir Recht, die 2 hab ich übersehen, aber sonst:
Ich überprüfe, ob eine zahl < 2 ist. 0 und 1 sind keine Primzahlen.
Je nach Mathe Prof war bei mir 0 manchmal bei den natürlichen zahlen dabei, oder nicht.
Danach mit || schmeiss ich alle geraden Zahlen raus. Bis auf die 2 stimmts ja.
Und danach lauf ich alle ungeraden Zahlen durch und schau, ob meine gestestete dadurch Teilbar ist. Die ungeraden Zahlen muss ich nur bis Wurzel(i) durchlaufen. Sonst mach ich tests doppelt.
Für die 2 kann man ja noch ein "else if (i == 2)" einbauen
Gruß
Zuletzt bearbeitet: