Lernpfad:Lerntheke Marsrover/18: Unterschied zwischen den Versionen

keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Karte}}
{{Karte|Hilfe=9}}


Wenn ein Algorithmus zu groß und komplex wird, dann ist es hilfreich, die Strukturierte Zerlegung (siehe dazu {{Pfad|17|Karte 17}}) anzuwenden, um ihn in kleiner Teilprobleme zu zerlegen. In Java nutzt man dazu ''Methoden''.
Wenn ein Algorithmus zu groß und komplex wird, dann ist es hilfreich, die Strukturierte Zerlegung (siehe dazu {{Pfad|17|Karte 17}}) anzuwenden, um ihn in kleiner Teilprobleme zu zerlegen. In Java nutzt man dazu ''Methoden''.
Zeile 17: Zeile 17:
* Bessere Lesbarkeit des Quelltextes.  
* Bessere Lesbarkeit des Quelltextes.  
* Leichtere Aufteilung im Team. ("Ich implementiere <code>fahre</code>, du implementierst <code>drehe</code>.")
* Leichtere Aufteilung im Team. ("Ich implementiere <code>fahre</code>, du implementierst <code>drehe</code>.")
{{Lösung:End}}
In Java wird eine ''Methode'' so definiert:
<syntaxhighlight lang="java">
public void dreimalFahre() {
fahre();
    fahre();
    fahre();
}
</syntaxhighlight>
Sie besteht aus einem ''Methodenkopf'' und einem ''Methodenrumpf''. Der Rumpf enthält die Befehle, die ausgeführt werden sollen. Der Kopf besteht aus den Schlüsselwörtern <code>public void</code> und einem ''Bezeichner'' für den neuen Befehl. Den Bezeichner kannst du frei wählen, aber er sollte aussagekräftig sein.
{{Aufgabe:Start|Icon=Greenfoot Rover.png}}
# Implementiere eine Methode <code>public void umdrehen()</code>, die den Rover um 180 Grad dreht.
# Implementiere eine Methode <code>public void vierVorUndRechts()</code>, die den Rover vier vor fahren lässt und ihn dann nach rechts dreht.
{{Aufgabe:End}}
{{Lösung:Start}}
<syntaxhighlight lang="java">
public void umdrehen() {
    drehe("rechts");
    drehe("rechts");
}
public void vierVorUndRechts() {
fahre();
    fahre();
    fahre();
    fahre();
    drehe("rechts");
}
</syntaxhighlight>
{{Lösung:End}}
{{Lösung:End}}


8.581

Bearbeitungen