Java Reference
In-Depth Information
Lösung:
/*
* repraesentiert eine der vier moeglichen
* Richtungen durch die Werte 0, 1, 2 oder 3
*/
int richtung = 0;
/*
* repraesentiert die Position des Hamsters
* in einer Richtung (horizontal / vertikal)
*/
int eineDimension = 0;
/*
* repraesentiert die Position des Hamsters
* in der anderen Richtung
*/
int andereDimension = 0;
void main() {
neuesVor();
while (!ausgangspunktErreicht()) {
if (rechtsFrei()) {
neuesRechtsUm();
neuesVor();
} else if (vornFrei()) {
neuesVor();
} else if (linksFrei()) {
neuesLinksUm();
neuesVor();
} else {
neuesKehrt();
neuesVor();
}
}
}
boolean ausgangspunktErreicht() {
/*
* Ausgangspunkt ist erreicht, wenn beide Richtungs-
* variablen wieder ihren Initialwert enthalten
*/
return (andereDimension == 0) && (eineDimension == 0);
}
void neuesLinksUm() {
linksUm();
richtung = (richtung + 1) % 4;
Search WWH ::




Custom Search