Java Hamster if else Aufgabe hilfe?

2 Antworten

Nun, es ist prinzipiell egal, in welche Richtung der Hamster schaut. Der Algorithmus ist immer:

  1. Laufe solange in aktueller Richtung geradeaus, bis Du an das Ende des Ganges gelangst (kein weiterer Schritt möglich)
  2. Lege ein Korn ab und gehe einen Schritt zurück.
  3. Wiederhole Schritt 2, bist Du am Ausgangspunkt angekommen bist.
  4. Drehe Dich nach rechts und beginne bei 1.
  5. Wenn nur noch 1 Korn da ist, lege es ab (denn wegen Schritt 3 ist der Hamster dann am Ausgangspunkt)

Und ja, Du brauchst für die Umsetzung sowohl Schleifen als auch Bedingungen als auch eine Repräsentation des "Parcours".


Kartoffelsac396 
Beitragsersteller
 15.12.2020, 09:59

danke für die antwort, kannst du mir vllt die lösung sagen? als beispiel? ich muss auch noch andere aufgaben machen und finde das voll kompliziert :)

0
ohwehohach  15.12.2020, 10:00
@Kartoffelsac396

Könnte ich schon, aber es ist ja Deine Aufgabe - Programmieren bedeutet auch Probieren ;-)

1

Beispiel für die main:

void main() {
    for (int kurven = 0; kurven < 4; kurven++) {
        gibBisEnde();
        kehrt();
        vorZurMitte();
        linksUm();
    }
    gib();
}

Die Funktionen gibBisEnde, kehrt und vorZurMitte musst du halt selbst bauen.

gibBisEnde: So lange vorne frei ist, gehe vor und lege ein Korn ab

kehrt: Zweimal links.

vorZurMitte: So lange auf dem aktuellen Feld ein Korn liegt, gehe vor.