Abslotues Newb Prob
-
ändert aber nichts, gibts immer noch zahlen von 1-100 aus
-
Hast Du auch mal die Änderung an der Primzahl-Funktion durchgeführt?
-
@Fabez Hast du dir schon den Lösungsvorschlag angeschaut?
-
natürlich hab ich mir die lösungsvorschläge angeschaut. geänder hab ich als erstes
primfunktion:if (test==0) { return false; }
hat keine auswirkungen gehabt.
dann hab ich das hier geändert
hauptfunktion:if (test==1) { cout<<k <<endl; }
Das hat nur geändert, das nur noch die 1 angezeigt wird
-
Was soll ich sagen, wer nicht lesen will, muß leiden.
Den Kernfehler des Programms habe ich 7 Minuten nach der Frage bereits aufgezeigt. Solange das nicht stimmt, braucht auch keiner an der Primfunktion zu basteln.
-
ich glaube test sollte gerade nicht 1 sein
-
aso, jetzt kommt aber nur noch press any key to continue.
-
mach mal aus der letzten Zeile der Prim-Funktion statt false ein true...
Das wirkt wunder!MfG Jester
-
@jester
hab ich eigentlich nur hingemacht, weil ansonsten beim compilieren ne warnung kommtD:\Dokumente und Einstellungen\****\hallo.cpp(26) : warning C4715: 'istPrim' : Nicht alle Steuerelementpfade geben einen Wert zurück
sprich ich bin davon ausgegangen das das gar keine auswirkung hat. egal, mal probiert, ändert nichts
-
das muß so bleiben. Außerdem ist v=1 sehr ungünstig. Denn durch 1 ist jede Zahl teilbar. Es wäre also günstiger mit v=2 anzufangen. Allerdins hast Du dann sofern Du die Abbruchbedinung der while-Schleife nicht änderst bei 1 ne Endlosschleife.
Schau Dir mal an, was passiert wenn Du ne Primzahl p testest:
die Schleife läuft bis v==p-1 durch (nach der Korrektur mit dem Startwert), anschließend wird v erhöht, sodaß v==p. Dann kommt die Abfrage der while-Schleife: v==p, also wird die Schleife verlassen und nach Deiner alten Version kommt false raus... ungünstig.MfG Jester