Werte innerhalb Funktion über ganze Laufzeit speichern

Also ein return -2; im Fehlerfall (?)
Nur welcher Fehlerfall? Unpassende Parameter oder irgendwas anderes?
 
Ich habe folgenden Rahmenbedingungen:

- keine globalen Variablen
- innerhalb der Funktion keine Ein- und Ausgabe erlaubt
- die Kommunikation muss über die Schnittstelle erfolgen

Also das Programm mit der Primfaktorzerlegung muss in folgende Schnittstelle gepackt werden:
int primfaktor ( int );

Die Funktion gibt bei jedem Funktionsaufruf mit einem Parameter n den nächsten Primfaktor von n
zurück (also numerisch aufsteigend, mehrfach vorkommende Faktoren werden auch mehrfach zurückgegeben). Sobald sich der Wert der übergebenen Zahl n ändert beginnt die Funktion wieder von vorne mit der Primfaktorzerlegung. Hat die Funktion alle Primfaktoren für ein n errechnet und zurückgegegeben so gibt sie (bis zum Aufruf mit einem neuen Wert n) immer -1 zurück.

Im Fehlerfall gibt die Funktion immer den Wert -2 zurück.

Wie mach ich das jetzt mit dem Wert -1 und dem Fehlerfall -2 ? Mehr weiß ich auch nicht :D
 
innerhalb der Funktion keine Ein- und Ausgabe erlaubt
...wie ich dir schon oben gesagt habe (nicht weil ich es weiß, aber weil das bei solchen Aufgaben immer so ist...)
Also das Programm mit der Primfaktorzerlegung muss in folgende Schnittstelle gepackt werden:
int primfaktor ( int );
Und diese Aufgabe fördert leider schlechten Stil, aber da kann man wohl nichts machen.
Ich schreibs nur damit du nicht evt. glaubst, dass so eine Lösung gut ist, aber anders gehts mit den Vorgaben nicht.

Wie mach ich das jetzt mit dem Wert -1 und dem Fehlerfall -2 ?
Hast du schon die Ausgaben aus der Funktion weggebracht, wie oben geschrieben?
Zumindest dabei sollten die vorhandenen Beiträge helfen.
 
Also die Ausgaben lösche ich noch raus und für den schlechten Stil kann ich nichts :) sind eben die Vorgaben :D

Was meinst du mit ob ich die Ausgaben aus der Funktion weggebracht habe?
 

Neue Beiträge

Zurück