Karel's Built in Commands

move();
 
turnLeft();
putBall();
 
takeBall();

Functions

Writing a function is like teaching karel a new word.

Naming Functions: You can name your functions whatever you want, but you can't have spaces in the function name.

Remember that each open bracket { must match with a close bracket }

function turnRight(){
	turnLeft();
	turnLeft();
	turnLeft();
}

function turnAround(){
	turnLeft();
	turnLeft();
}

function yourFunctionName() {
  // Code that will run when you make a call to
  // this function.
}

Conditional Statements

Remember that each open bracket { must match with a close bracket }
if (condition) {
  //code that will run if the condition is true
}
if (condition) {
  //code that will run if the condition is true
} else {
  //code that will run if condition is not true
}

Example of if statements

if(frontIsClear()){
  move();
}

if(ballsPresent()){
  takeBall();
}else{
  move();
}

Karel Conditions

Don't forget the () at the end
frontIsClear()
leftIsClear()
rightIsClear()

facingNorth()
facingSouth()
facingEast()
facingWest()

ballsPresent()
			
 
frontIsBlocked()
leftIsBlocked()
rightIsBlocked()

notFacingNorth()
notFacingSouth()
notFacingEast()
notFacingWest()

noBallsPresent()
			

Loops

Remember that each open bracket { must match with a close bracket }

While Loops

while (CONDITION) {
  // Code that will run while the CONDITION is true.
  // Once the CONDITION is no longer true,
  // it will stop.
}

Example of while loops

/* This moves Karel to a wall */
while(frontIsClear()){
	move();
}

For Loops

for (var i = 0; i < COUNT; i++) {
  // Code that will run 'COUNT' times
}

Example of for loops

/* This puts down 10 balls */
for(var i = 0; i < 10; i++){
	putBall();
}
You can have multiple statements or function calls in a for loop.
/* This puts down five balls and
   moves after each one */
for(var i = 0; i < 5; i++){
	putBall();
	move();
}
Use for-loops when you want to repeat something a fixed number of times.
Use while-loops when you want to repeat something as long as a condition is true.

Comments

/* A multi-line comment describes your code
 * to someone who is reading it. */

// Use single line comments to clarify code.