Verzeigungen
1) Karasensor2
import JavaKaraProgram;
/**
*<hr>
*Aufgabe für Kara: Kara steht vor einem Baum oder nicht.
*Wenn sie nicht vor einem Baum steht, soll sie einfach einen Schritt
*weitergehen. Wenn sie vor einem Baum steht, prüft sie, ob sie auf einem
*Kleeblatt steht. Steht sie auf einem Kleeblatt, hebt sie es auf und geht links
*um den einzelnen Baum herum. Steht sie nicht auf einem Kleeblatt, legt sie ein
*Kleeblatt nieder und geht rechts um den Baum herum.
*<hr>
*@see <a href="Javakara.html">Alle Programme</a>
*@author Dorothea Steinhauer
*@version 1.0/ 28.1.2002
*/
public class KaraSensor2 extends JavaKaraProgram
{//Anfang von KaraSensor2
public void myProgram()
{//Anfang von myProgram
if (!kara.treeFront())
{kara.move();
}
else
{ if (kara.onLeaf())
{kara.removeLeaf();
kara.turnLeft();
kara.move();
kara.turnRight();
kara.move();
kara.move();
kara.turnRight();
kara.move();
kara.turnLeft();
}
else
{kara.putLeaf();
kara.turnRight();
kara.move();
kara.turnLeft();
kara.move();
kara.move();
kara.turnLeft();
kara.move();
kara.turnRight();
}
}
}//Ende myProgram
}//Ende von KaraSensor2
2) Java-Struktogramm-Übung
a) if (B1) {
A1; A2; } else {
if (B2) {
A3; } else
{
A4; }; } A5;
|
b) A0; if
(B1) { A1; } else {
A2; if
(B2) {
A3; } else {
A4; } A5; }
|
|
|
|
3) Struktogramm in Java_Anweisungen:
|
a)
Lösungen
if (!kara.treeFront()) {
kara.move(); }
oder
if (!kara.treeFront()) kara.move();
da nur eine einzige Anweisung im wahr-Teil.
|
b)
Lösungen
if (!kara.treeFront()) { kara.move(); kara.turnLeft(); } else {
kara.turnLeft(); kara.turnLeft(); }
|
Karasensor3
import JavaKaraProgram;
/**
*<hr>
*Aufgabe für Kara: Kara prüft, ob sie vor einem Pilz steht. Wenn sie vor einem
*Pilz steht, soll sie um den Pilz herum gehen,prüfen, ob vor ihm ein Baum steht.
*Falls dies möglich ist, schiebt sie den Pilz ein Feld weiter. Verhindert ein
*Baum dies, legt sie ein Kleeblatt neben den (einzelnen) Baum. Steht Kara zu
*Beginn nicht vor einem Pilz, soll sie ein Tänzchen tanzen.
*<hr>
*@see <a href="Javakara.html">Alle Programme</a>
*@author Dorothea Steinhauer
*@version 1.0/ 28.1.2002
*/
public class KaraSensor3 extends JavaKaraProgram
{//Anfang von KaraSensor3
void dancing()
{// Anfang von dancing
kara.turnLeft();
kara.turnLeft();
kara.turnLeft();
kara.turnLeft();
}//Ende von dancing
public void myProgram()
{//Anfang von myProgram
if (!kara.mushroomFront())
{ this.dancing();
}
else
{ kara.turnLeft();
kara.move();
kara.turnRight();
kara.move();
kara.move();
if (kara.treeRight())
{kara.putLeaf();
}
else
{kara.turnLeft();
kara.turnLeft();
kara.move();
kara.move();
kara.turnLeft();
kara.move();
kara.turnLeft();
kara.move();
}
}
}//Ende myProgram
}//Ende von KaraSensor3
|
Karasensor4
import JavaKaraProgram;
/**
*<hr>
*Aufgabe für Kara:Programmiere, dass Kara genau dann keinen Schritt macht, wenn
*sie rechts und links keinen Baum neben sich hat.
*<hr>
*@see <a href="Javakara.html">Alle Programme</a>
*@author Dorothea Steinhauer
*@version 1.0/ 5.2.2002
*/
public class KaraSensor4 extends JavaKaraProgram
{//Anfang von KaraSensor4
public void myProgram()
{//Anfang von myProgram
if (!kara.treeRight()&&!kara.treeLeft())
{
}
else
{ kara.move();
}
}//Ende myProgram
}//Ende von KaraSensor4
|