====== Meine Karel Lösungen ====== ===== 0.0.1 karelFirstProgram ===== void karelsFirstProgram() { moveForward(); pickBeeper(); moveForward(); turnLeft(); moveForward(); turnRight(); moveForward(); dropBeeper(); moveForward(); } ===== 1.1.1 obtainArtifact ===== void obtainArtifact(){ turnRight(); oneWay(); pickBeeper(); oneWay(); dropBeeper(); } void oneWay(){ moveForward(); turnLeft(); repeat(3){ moveForward(); } turnLeft(); moveForward(); } ===== 1.1.2 defuseOneBomb ===== void defuseOneBomb() { repeat(9){ moveForward() } pickBeeper(); turnAround(); repeat(9){ moveForward() } turnAround(); } ===== 1.1.3 defuseTwoBombs ===== void defuseTwoBombs(){ defuseOneBomb(); turnLeft(); defuseOneBomb(); } void defuseOneBomb() { goOneWay(); pickBeeper(); goOneWay(); } void goOneWay(){ repeat(9){ moveForward(); } turnAround(); } ===== 1.1.4 practiceHomeRun ===== void practiceHomeRun(){ repeat(4){ oneWay(); turnLeft(); } } void oneWay(){ repeat(9){ moveForward(); } pickBeeper(); } ===== 1.2.1 climbTheStairs ===== void climbTheStairs(){ moveForward(); repeat(6){ oneStair(); } } void oneStair(){ turnLeft(); moveForward(); turnRight(); moveForward(); } ===== 1.2.2 fillTheHoles ===== void fillTheHoles(){ while(frontIsClear()){ if(rightIsClear()){ fillOneHole(); } else{ moveForward(); } } } void fillOneHole(){ turnRight(); moveForward(); dropBeeper(); turnAround(); moveForward(); turnRight(); moveForward(); }