Java Reference
In-Depth Information
Lösung:
void main() {
/*
* speichert die aktuelle Blickrichtung des Hamsters:
* Kodierung der Blickrichtung:
* 0 = Ost , 1 = Nord , 2 = West , 3 = Sued
*/
int blickrichtung = 0;
int anzahl = anzahlKoerner();
while (anzahl != 1) {
if (anzahl % 4 == 0) { // durch 4 teilbar
// nach Osten (0) ausrichten
ausrichten(blickrichtung, 0);
blickrichtung = 0;
} else if (anzahl % 3 == 0) { // durch 3 teilbar
// nach Norden (1) ausrichten
ausrichten(blickrichtung, 1);
blickrichtung = 1;
} else if (anzahl % 2 == 0) { // durch 2 teilbar
// nach Westen (2) ausrichten
ausrichten(blickrichtung, 2);
blickrichtung = 2;
} else {
// nach Sueden (3) ausrichten
ausrichten(blickrichtung, 3);
blickrichtung = 3;
}
/*
* entsprechende Anzahl an Feldern vorruecken und
* auf dem neuen Feld die Koerneranzahl ermitteln
*/
vor(anzahl);
anzahl = anzahlKoerner();
}
// Hurra! Der Schatz ist gefunden!
nimm();
}
/*
* liefert die Anzahl an Koernern auf einem Feld
* (ohne Seiteneffekte)
*/
int anzahlKoerner() {
Search WWH ::




Custom Search