codekinderen
1
Oefening 1: YourFirstProgramme move(); move(); move(); move(); takeBall();
2
Oefening 2: ShortStack move(); putBall(); putBall(); move();
3
Oefening 3: Make a Tower move(); putBall(); putBall(); move();
4
Oefening 4: PyramidOfKarel putBall(); move(); putBall(); move(); putBall(); turnLeft(); move(); putBall(); turnLeft(); move(); putBall(); turnLeft(); turnLeft(); move(); turnLeft(); move(); putBall(); turnLeft(); turnLeft(); turnLeft();
5
Oefening 5: Slide putBall(); move(); turnRight(); move(); putBall(); turnLeft(); move(); turnRight(); move();
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 1
codekinderen
putBall(); turnLeft(); function turnRight() { turnLeft(); turnLeft();}
putBall(); putBall(); putBall(); }
8 6
Oefening 6: Fireman turnRight(); move(); move(); move(); turnLeft(); function turnRight(){ turnLeft(); turnLeft(); turnLeft(); }
7
Oefening 7: MakePancakes move(); makePancakes(); move(); move(); makePancakes(); move(); move(); makePancakes(); move(); function makePancakes(){
Oefening 8: MarioKarel turnLeft(); moveDrie(); turnRight(); move(); collectCoins(); turnLeft(); move(); turnRight(); moveTwice(); turnRight(); move(); collectCoins(); move(); turnLeft(); moveTwice(); turnLeft(); move(); collectCoins(); move(); turnRight(); moveTwice(); turnRight(); move(); collectCoins(); moveDrie(); turnLeft(); function turnRight(){ turnLeft(); turnLeft(); turnLeft(); } function collectCoins(){ takeBall();
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 2
codekinderen
takeBall(); } function moveTwice(){ move(); move(); } function moveDrie(){ move(); move(); move(); }
9
Oefening 9: Make Pancakes met Start function start(){ move(); makePancakes(); move(); move(); makePancakes(); move(); move(); makePancakes(); move(); } function makePancakes(){ putBall(); putBall(); putBall(); }
makeTower(); moveTwice(); goDown(); makeTower(); } function makeTower(){ putBall(); turnLeft(); move(); putBall(); move(); putBall(); move(); turnRight(); } function turnRight(){ turnLeft(); turnLeft(); turnLeft(); } function moveTwice(){ move(); move(); } function goDown(){ turnRight(); move(); move(); move(); turnLeft(); }
11
10
Oefening10: Thetwo Towers function start(){ move();
Oefening 11: Two tower met comments // Karel bouwt twee torens function start(){ move(); buildTower(); comeDown(); move(); move();
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 3
codekinderen
}
buildTower(); move(); turnRight();
// Karel gaat naar rechts function turnRight(){ turnLeft(); turnLeft(); turnLeft(); } // Karel draait om function turnAround(){ turnLeft(); turnLeft(); } // Als karel naar beneden is gegaan // Precondition: Karel kijkt naar het noorden // Postcondition: Karel kijkt naar het oosten function comeDown(){ turnAround(); move(); move(); turnLeft(); } // Hij gaat een toren maken met 3 ballen // Precondition: Karel staat onderaan en kijkt naar het oosten // Postcondition: Karel heft drie ballen neergelegd en kijkt naar het noorden function buildTower(){ turnLeft(); putBall(); move(); putBall(); move(); putBall(); }
12
Oefening 12: TwoTowers Super Karel // Karel gaat twee torens bouwen met steeds 3 ballen function start(){ move(); buildTower(); comeDown(); move(); move(); buildTower(); move(); turnRight(); } // Staat karel onderaan? // Precondition: Karel kijkt naar het noorden // Postcondition: Karel kijkt naar het oosten function comeDown(){ turnAround(); move(); move(); turnLeft(); } // Hij gaat nu 3 ballen neerleggen // Precondition: Karel staat onderaan en kijkt naar het oosten // Postcondition: Karel heft 3 ballen neergelegd en kijkt naar het noorden function buildTower(){ turnLeft(); 16 putBall(); move(); putBall(); move(); putBall(); GA NAAR DE } VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 4
codekinderen
15
13
Oefening 13: TakeEmAll // Pak alle ballen function start(){ move(); for(var i = 0; i <100; i++){ takeBall(); } move(); }
14
Oefening 14: Dizzy // Draaien function start(){ for(var i = 0; i <32; i++){ turnLeft(); } }
Oefening 15: LoopSquare function start(){ for(var i = 0; i < 4; i++){ putBall(); move(); turnLeft(); } }
16
Oefening 16: Horde springen // Springen over horde function start(){ function jumpHurdle(){ turnLeft(); move(); turnRight(); move(); turnRight(); move(); turnLeft(); } for(var i = 0; i < 5; i++){ move(); move(); jumpHurdle(); } }
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 5
codekinderen
17
Oefening 17: Is there a ball // Karel moet een bal op de eerste plaats neerleggen // als er niets ligt dan moet hij bewegen function start(){ takeBall(); safeMove(); safeMove(); safeMove(); safeMove(); putBall(); move(); } function safeMove(){ move(); move(); if(frontIsBlocked()){ turnLeft(); } }
19
Oefening 19: the yellow road //karel moet lopen tot er geen ballen meer zijn function start() { while (ballsPresent()){ move(); } }
20
Oefening 20: Lay row of tennisballs // Karel legt een bal neer tot hij aan de muur komt function start(){ while (frontIsClear()){ putBall(); move(); } putBall(); }
18
Oefening 18: Right side up function start(){ if(facingSouth()){ turnLeft(); }else{ turnAround(); } }
21
Oefening 21: Big Tower // Karel maakt een toren als er niets staat GA NAAR DE function start(){ VOLGENDE turnNorth(); PAGINA>> buildTower();
STAPPEN CODEHS 7/8 PAG 6
codekinderen
} function turnNorth(){ while(notFacingNorth()){ turnLeft(); } } function buildTower(){ while(frontIsClear()){ putBall(); move(); } putBall(); }
}
move();
} } function jumpHurdle(){ turnLeft(); move(); turnRight(); move(); turnRight(); move(); turnLeft(); }
24 22
Oefening 22: take â&#x20AC;&#x2DC;em all function start(){ move(); for(var i = 0; i < 100; i++){ takeBall(); } move(); }
Oefening 24: Diagonaal // legt diagonaal ballen neer. function start(){ while(frontIsClear()){ putBall(); move(); turnLeft(); move(); for(var i = 0; i < 3; i++){ turnLeft(); } } putBall(); }
23
Oefening 23: Random Hurdles // Karel neemt alle hordes function start(){ for(var i = 0; i < 13; i++){ if(frontIsBlocked()){ jumpHurdle(); }else{
25
Oefening 25: Staircase function start(){ putBall(); while(frontIsClear()){
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 7
codekinderen
turnLeft(); while (ballsPresent()) { move(); } turnRight(); move(); createStep();
} } function createStep() { turnRight(); putBall(); while (frontIsClear()) { move(); putBall(); } turnLeft(); }
26
Oefening 26: Fetch//Karel moet de ballen pakken function start(){ goToBall(); takeBall(); turnAround(); comeBack(); turnAround(); putBall(); } function goToBall(){ moveUpAndRight(); } function comeBack(){ moveUpAndRight(); } function moveUpAndRight(){ move(); turnLeft(); move(); move(); move();
}
move(); turnRight(); move();
27
Oefening 27: Racing Karel //karel moet over een track rennen. Achtkeer. function start() { for(var i = 0; i < 8; i++){ runTrack(); } } function runTrack(){ for(var i = 0; i < 4; i++){ moveToWall(); turnLeft(); } } function moveToWall(){ while(frontIsClear()){ move(); } }
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 8
codekinderen
28
Oefening 28: Tower Building //bouw op de oneven lijnen een toren van 3 ballen function start() { buildTower(); while(frontIsClear()){ move(); if(frontIsClear()){ move(); buildTower(); } } } function buildTower(){ turnLeft(); for(var i = 0; i < 3; i++){ putBall(); move(); } turnAround(); goDown(); turnLeft(); } function goDown(){ while(frontIsClear()){ move(); } }
29
Oefening 29: Super clean up // haalt alle ballen weg function start(){
}
while(leftIsClear()){ cleanRow(); comeBack(); moveUp(); } cleanRow(); comeBack();
// karel gaat naar volgende regel function moveUp(){ turnLeft(); move(); turnRight(); } //karel gaat naar het begin function comeBack(){ turnAround(); while(frontIsClear()){ move(); } turnAround(); } //dit maakt 1 regel leeg function cleanRow(){ while(frontIsClear()){ cleanSpot(); move(); } cleanSpot(); } // pakt alleen een bal als er een ligt function cleanSpot(){ if(ballsPresent()){ takeBall(); } }
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 9
codekinderen
30
Oefening 30: Dubbele tennisballen // karel gaat tennisballen neerleggen. function start(){ move(); doubleBalls(); turnAround(); move(); turnAround(); }
function takeOnePutTwoBeside(){ takeBall(); move(); putBall(); putBall(); turnAround(); move(); turnAround(); }
//de tennisballen worden verdubbeld function doubleBalls(){ while(ballsPresent()){ takeOnePutTwoBeside(); } move(); turnAround(); while(ballsPresent()){ moveOneBallBack(); }
}
move(); turnAround();
//dit verplaats de tennisballen function moveOneBallBack(){ takeBall(); move(); putBall(); turnAround(); move(); turnAround(); } //1 bal pakken en er twee voor in de plaats leggen.
GA NAAR DE VOLGENDE PAGINA>>
STAPPEN CODEHS 7/8 PAG 10