Greenfoot Informatik?

2 Antworten

Man darf wohl davon ausgehen, dass in vorherigen Aufgaben schon eine Klasse Katze entwickelt wurde, die Felder und Methoden zur Verfügung hat, um ihren Zustand auszudrücken und zu wechseln.

Beispiel:

class Cat : Actor {
  private boolean tired;

  public void setTired(boolean tired) {
    this.tired = tired;
  }

  /* ... */
}

// usage:
Cat cat = new Cat();
cat.setTired(true); // cat is tired now

Das, was von dir in den Folgeaufgaben lediglich verlangt wird, ist das Prüfen dieser Zustände. Wenn ein Zustand wie erwartet eintrifft, soll irgendeine Aktion ausgeführt werden. Sicherlich habt ihr dafür auch schon Methoden implementiert. Im einfachsten Fall werden hierbei nur Konsolenausgaben gemacht:

public void sleep() {
  System.out.println("Sleep");
}

Beispielprüfung (in act) folgendermaßen:

if (this.isTired) {
  sleep();
}

So wie es schon die Überschrift über der Box sagt: Es geht bei diesen Aufgaben lediglich darum, if (und vermutlich noch weitere Verzweigungstypen wie if-else, if-else if-else) zu üben.

Versuche es aufgrund meiner Erklärungen zunächst selbst. Wenn du dann noch an Teilaufgaben scheiterst, schildere konkreter: Wie sieht dein Ansatz aus, was wurde bisher implementiert und woran hapert es?


Overthinker16 
Fragesteller
 09.09.2021, 22:19

Vielen Dank für die große Mühe :)

0

Das sind alles Dinge, die man mit Bedingungen (if-else, wobei der else-Block auch optional sein kann) lösen kann. So vom Prinzip im Pseudocode für 2.34:

if katze.istMüde:
  katze.schlafen()

Das ganze wendest du eben mit "echtem" Java-Code auf deine Methode an - für jede der Aufgaben...


Overthinker16 
Fragesteller
 09.09.2021, 22:20

Vielen Dank :)

0