Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung |
faecher:informatik:mittelstufe:bauernhof:ab5:start [18.06.2024 09:25] – Marco Kuemmel | faecher:informatik:mittelstufe:bauernhof:ab5:start [26.02.2025 08:47] (aktuell) – Marco Kuemmel |
---|
</callout> | </callout> |
| |
Unsere Figuren haben nur eine beschränkte Anzahl von Methoden, die die Umwelt der Figur wahrnehmen (z.B. ''istVorneFrei()'', ''istVorne("Wasser")''). In diesem Arbeitsblatt lernst, du neue (komplexere) Sensoren selbst zu erstellen. Schaue dir dazu die Methode ''istAufLeeremAcker()'' des AB5_Bauer an. Im Gegensatz zu den Methoden, die du bisher implementiert hast, gibt diese eine Antwort zurück (wie z.B. auch ''istVorneFrei()''). | Unsere Figuren haben nur eine beschränkte Anzahl von Methoden, die die Umwelt der Figur wahrnehmen (z.B. ''istVorneFrei()'', ''istVorne("Wasser")''). In diesem Arbeitsblatt lernst du, neue (komplexere) Sensoren selbst zu erstellen. Schaue dir dazu die Methode ''istAufLeeremAcker()'' des AB5_Bauer an. Im Gegensatz zu den Methoden, die du bisher implementiert hast, gibt diese eine Antwort zurück (wie z.B. auch ''istVorneFrei()''). |
| |
{{:aufgabe.png?nolink |}} | {{:aufgabe.png?nolink |}} |
{{:aufgabe.png?nolink |}} | {{:aufgabe.png?nolink |}} |
=== (A3) Erntebereit === | === (A3) Erntebereit === |
Reife Tomaten kann man mit ''ernte("Tomate");'' abernten. Damit dabei kein Fehler passiert, muss man testen, ob man überhaupt auf einer Tomate steht und ob diese reif ist. Den Reifegrad kann man mit ''pruefe("Tomate")'' bestimmen. Hat er den Wert 100, kann die Tomate geerntet werden. | Reife Tomaten kann man mit ''ernte("Tomate");'' abernten. Damit dabei kein Fehler passiert, muss man testen, ob man überhaupt auf einer Tomate steht und ob diese reif ist. Den Reifegrad kann man mit ''pruefe("Tomate")'' bestimmen. Hat er den Wert 100, kann die Tomate geerntet werden (Tipp: nutze ''=='' zum Prüfen des Werts). \\ |
**Implementiere die Methode ''boolean istAufReiferTomate()'', die diesen Test vornimmt.** | **Implementiere die Methode ''boolean istAufReiferTomate()'', die diesen Test vornimmt.** |
| |
| |
{{:aufgabe.png?nolink |}} | {{:aufgabe.png?nolink |}} |
=== (A4) Gießen === | === (A4) Gießen? === |
Die Tomaten wachsen leider nicht so leicht wie Gras. Tomaten haben einen sehr hohen Wasserbedarf. Daher muss man sie mit ''benutze("Giesskanne")'' gießen. Vorher sollte man aber prüfen, ob man auf einer Tomate steht und sie Wasser benötigt (''pruefe("Tomate")'' liefert dann den Wert -1). \\ | Die Tomaten wachsen leider nicht so leicht wie Gras. Tomaten haben einen sehr hohen Wasserbedarf. Daher muss man sie mit ''benutze("Giesskanne")'' gießen. Vorher sollte man aber prüfen, ob man auf einer Tomate steht und sie Wasser benötigt (''pruefe("Tomate")'' liefert dann den Wert -1). \\ |
**Implementiere die Methode ''boolean istAufDurstigerTomate()'', die diesen Test vornimmt.** | **Implementiere die Methode ''boolean istAufDurstigerTomate()'', die diesen __Test__ vornimmt.** (Es soll nicht gegossen werden.) |
| |
| |
{{:aufgabe.png?nolink |}} | {{:aufgabe.png?nolink |}} |
=== (A9) Positionslauf === | === (A9) Positionslauf === |
Implementiere eine Methode ''laufeBisY(int y)'', die den Bauern so lange vorwärts gehen lässt, wie die durch den Parameter angegebene y-Koordinate (''getY()'') noch nicht erreicht ist. Du kannst davon ausgehen, dass die angegebene y-Koordinate vor dem Bauern liegt und er sich dafür nicht drehen muss. Teste deine Methode. Welche Art von Parameter erwartet sie? | Implementiere eine Methode ''laufeBisY(int y)'', die den Bauern so lange vorwärtsgehen lässt, wie die durch den Parameter angegebene y-Koordinate noch nicht erreicht ist (das kannst du mit ''getY()'' überprüfen). Du kannst davon ausgehen, dass die angegebene y-Koordinate vor dem Bauern liegt und er sich dafür nicht drehen muss. Teste deine Methode. Welche Art von Parameter erwartet sie? |
| |
| **Tipp zum Testen:** In der Informatik haben Koordinatensysteme ihren Ursprung (0|0) immer links oben. Nach rechts und nach unten werden die x- und y-Koordinaten größer. |
| |
Für Experten: Drehe den Bauer zusätzlich zunächst in die richtige Richtung. | Für Experten: Drehe den Bauer zusätzlich zunächst in die richtige Richtung. |