AntMe! - Auf der Nahrungssuche: Unterschied zwischen den Versionen
K |
K |
||
Zeile 47: | Zeile 47: | ||
{ Mit welcher Methode könnte die Ameise den Zucker in ihren Bau bringen? } | { Mit welcher Methode könnte die Ameise den Zucker in ihren Bau bringen? } | ||
- <div style="border: 2px solid #dfdfdf;"><tt>public override void Sieht(Zucker zucker)<br />}<br />if (AktuelleEnergie > 5)<br />{<br />GeheZuZiel(zucker);<br />}<br />}</tt></div> | - <div style="border: 2px solid #dfdfdf;"><tt>public override void Sieht(Zucker zucker)<br />}<br />if (AktuelleEnergie > 5)<br />{<br />GeheZuZiel(zucker);<br />}<br />}</tt></div> | ||
− | + <div style="border: 2px solid #dfdfdf;"><tt>public override void Sieht(Zucker zucker)<br />{<br /> | + | + <div style="border: 2px solid #dfdfdf;"><tt>public override void Sieht(Zucker zucker)<br />{<br /><span style="color:white">OO</span>if (AktuelleLast == 0)<br /> {<br /> GeheZuZiel(zucker);<br /> }<br />}</tt></div> |
- <div style="border: 2px solid #dfdfdf;"><tt>public override void ZielErreicht(Zucker zucker)<br />{<br />Nimm(zucker);<br />DreheUmWinkel(180);<br />GeheZuBau();<br />}</tt></div> | - <div style="border: 2px solid #dfdfdf;"><tt>public override void ZielErreicht(Zucker zucker)<br />{<br />Nimm(zucker);<br />DreheUmWinkel(180);<br />GeheZuBau();<br />}</tt></div> | ||
</quiz> | </quiz> | ||
Zeile 63: | Zeile 63: | ||
public override void Sieht(Zucker zucker) | public override void Sieht(Zucker zucker) | ||
{ | { | ||
− | + | GeheZuZiel(zucker); | |
} | } | ||
Version vom 10. Februar 2010, 01:15 Uhr
Lernpfad
|
public override void Sieht(Zucker zucker) { GeheZuZiel(zucker); } public override void ZielErreicht(Zucker zucker) { Nimm(zucker); GeheZuBau(); } |
Ziel dieses Lernpfads: Unsere Ameisen wollen das auch können. |
|
Die Ameisen bringen den Zucker in ihren Bau. Vergleiche deine Lösung mit dem Video. |
In der Methode Sieht(Zucker zucker) wenden wir einen Trick an. Das Problem ist: die Ameisen bleiben mit ihrem Zucker am Berg stehen. Sie machen das, weil sie den Zucker aufnehmen und beim Weggehen erneut die Methode Sieht(Zucker zucker) aufgerufen wird. Mit einer if-Bedingung überprüfen wir, ob die Ameise bereits eine Last trägt.
Den alten Code:
public override void Sieht(Zucker zucker) { GeheZuZiel(zucker); }
ändern wir wie folgt ab:
public override void Sieht(Zucker zucker) { if (AktuelleLast == 0) { GeheZuZiel(zucker); } }
AktuelleLast ist ein Attribut der Klasse Ameise, welches das getragene Gewicht der Ameise speichert.
|
Finde die Wörter! (Waagrecht (von links nach rechts), senkrecht (von oben nach unten)
und schräg (von links unten nach rechts oben oder von oben links nach unten rechts),
gefundene Wörter werden grün markiert)
|
Ameise |
ZielErreicht |
AktuelleLast |
SiehtFeind |
WirdAngegriffen |