Wie kann die Implementation einer Methode den Wert eines Attributs vermindern?

mathilda712

Mitglied
Hallo,

ich habe folgende Aufgabe und hänge momentan ein wenig daran:
Wenn der Parameter reductionOfThirst vom Typ int positiv ist, vermindert die Implementation der Methode welcome den Wert des Attributs degreeOfThirst um reductionOfThirst, aber maximal bis zum Wert 0, sodass der negative Bereich nicht erreicht wird. Ansonsten hat welcome keinen Effekt.

Ich soll dabei nicht mit Verzweigungen arbeiten, lediglich mit einer einzigen Zuweisung, auf dessen rechte Seite der Bedingungsoperator steht.

Meine Idee wäre ich jetzt folgende gewesen:
Java:
public void welcome(int reductionOfThirst) {
   reductionOfThirst > 0 ? degreeOfThirst - reductionOfThirst : (degreeOfThirst > 0 ? reductionOfThirst-- : 0);
  }

Aber ich bin mir ziemlich sicher, dass besonders der letzte Teil noch nicht wirklich sinnvoll ist. (Besonders der letzte Teil, dass eine Verminderung maximal bis zum Wert 0 stattfindet.)

Hat da jemand womöglich einen Rat für mich? 🙂
 
Ich würde zuerst subtrahieren und dann prüfen wenn es keine als 0 ist dann auf Null setzen.

Was machst du wenn dein degreeOfThirst gleich 0 ist und dein reductionOfThirst 1, was kommt raus - 1
Den minuenden zu prüfen macht für mich keinen Sinn.


Edit
Sorry ich meinte den Subtrahend zu prüen macht hier keinen Sinn.
Minuend − Subtrahend = Differenz
 
Zuletzt bearbeitet:
Also irgendwie macht das noch gar keinen Sinn.

a) Du hast keinerlei Zuweisung! Du sollst aber doch mit einer Zuweisung arbeiten, bei der auf der Rechten Seite der Bedingungsoperator steht!
b) Was arbeitets Du mit einem Post-Decremement? Was willst Du denn damit überhaupt erreichen?

Ich würde dir Raten, die einzelnen Fälle erst einmal aufzuschreiben sowie die jeweiligen Werte, die dann zugewiesen werden. Wenn Du Dir das verdeutlicht hast, dann sollte es einfacher sein, das umzusetzen.
 
Ich würde auch dazu raten erst einmal eingie Schritte zurückzugehen und mal zu überlegen wie man, selbst mit if shcleifen,d as sinnvoll strukturieren würde und welche fälle es gibt.
reduction positiv ist ein fall.
dass rate-reduction positiv ist, ist ein anderer fall


Wie könnte man die 2 bedingungen sinnvoll kombinieren und was kommt raus in den verschiedenen fällen?
 

Zurück
Oben