/*
Aufgabe:
Der Frosch sitzt an einem Teich.
Er soll den Teich umrunden, bis er auf eine 
Muecke stoesst.

Beispiel-Territorien:
- teich1.ter
- teich2.ter
*/

void main() {
    kermit.richtigPositionieren();
    while (!kermit.mueckeDa()) {
        kermit.einFeldBearbeiten();
    }
}

void richtigPositionieren() {
    while (!kermit.linksWasser()) {
        kermit.linksUm();
    }
}

void einFeldBearbeiten() {
    if (!kermit.linksWasser()) {
        kermit.linksUm();
        kermit.huepfen();
    } else if (!kermit.vorneWasser()) {
        kermit.huepfen();
    } else if (!kermit.rechtsWasser()) {
        kermit.rechtsUm();
        kermit.huepfen();
    } else if (!kermit.hintenWasser()) {
        kermit.kehrt();
        kermit.huepfen();
    }
}

boolean vorneWasser() {
    return !kermit.vorneGras();
}

boolean linksWasser() {
    kermit.linksUm();
    if (kermit.vorneWasser()) {
        kermit.rechtsUm();
        return true;
    } else {
        kermit.rechtsUm();
        return false;
    }
}

boolean rechtsWasser() {
    kermit.rechtsUm();
    if (kermit.vorneWasser()) {
        kermit.linksUm();
        return true;
    } else {
        kermit.linksUm();
        return false;
    }
}

boolean hintenWasser() {
    kermit.kehrt();
    if (kermit.vorneWasser()) {
        kermit.kehrt();
        return true;
    } else {
        kermit.kehrt();
        return false;
    }
}

void kehrt() {
    kermit.linksUm();
    kermit.linksUm();
}


