wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Karel Commands

Total questions: 25

Worksheet time: 13mins

Name
Class
Date
1.

Which of the following commands is a valid Karel command?

a)

move

b)

move( )

c)

move( );

d)

move;

2.

What makes the following command an invalid Karel command?

a)

It should end in a colon rather than a semicolon

b)

It should start with a capital T

c)

This command is correct

d)

The l should be a capital L

3.

Which of the following is the correct way to define a turnRight function in Karel?

a)

function turnRight() {

turnLeft();

turnLeft();

turnLeft();

}

b)

function turnRight() {

turnRight();

turnRight();

turnRight();

}

c)

function turnRight {

turnLeft();

turnLeft();

turnLeft();

}

d)

turnRight function() {

turnLeft();

turnLeft();

turnLeft();

}

4.

Why do we use functions in Karel programs?

a)

To break down our program into smaller parts

b)

To avoid repeating code

c)

To make our program more readable

d)

All of the above

5.

If Karel starts at Street 1 and Avenue 1, facing East, where will Karel be, and what direction will Karel be facing after running the following code? (Assume the world is 10x10 in size)

move();

turnLeft();

putBall();

turnLeft();

turnLeft();

turnLeft();

move();

turnLeft();

a)

Street 3, Avenue 1, Facing North

b)

Street 1, Avenue 4, Facing North

c)

Street 1, Avenue 3, Facing South

d)

Street 1, Avenue 3, Facing North

6.

Karel starts at Street 1 and Avenue 1, facing East. After calling the stairStep function twice, where will Karel be and what direction will Karel be facing? (assume this is a SuperKarel program and the world is 10x10 in size)

function stairStep() {

move();

turnLeft();

move();

turnRight();

}

a)

Street 2, Avenue 2, Facing North

b)

Street 3, Avenue 3, Facing East

c)

Street 3, Avenue 3, Facing West

d)

Street 4, Avenue 4, Facing East

7.

In this code, how many times is the dance function called and how many times is it defined?

function start() {

move();

dance();

move();

move();

turnLeft();

dance();

dance();

}


function dance() {

turnLeft();

move();

turnLeft();

turnLeft();

move();

turnLeft();

}

a)

Called 1 time, defined 1 time

b)

Called 1 time, defined 3 times

c)

Called 3 times, defined 1 time

d)

Called 3 times, defined 3 times

8.

What’s wrong with this code?

function start() {

move();

go();

go();

}


function go() {

move();

move();

}


function go() {

move();

move();

}

a)

The go function is called twice

b)

The go function has a syntax error

c)

The go function has been defined twice

d)

go is not a command that Karel understands

9.

How many total times will Karel move in this program?

function start() {

move();

for (var i = 0; i < 5; i++) {

move();

putBall();

}

}

a)

1

b)

5

c)

6

d)

7

10.

What is wrong with this for loop?

for (var i = 0, i < 10, i + 1) {

move();

}

I. The for loop uses commas instead of semicolons

II. It should say i++ instead of i + 1

a)

I

b)

II

c)

I and II

d)

The for loop is correct

11.

What is the proper format for a single line comment in Karel?

a)

/* This is a comment

b)

This is a comment

c)

// This is a comment

d)

** This is a comment

12.

What does the mystery function do?

function mystery() {

while (noBallsPresent()) {

move();

}

}

a)

Karel moves until it is on a ball

b)

Karel moves once if there is no ball present

c)

Karel moves until it puts down a ball

d)

Karel checks if there is no ball on the current spot and then moves once

13.

Which of the following is not a valid condition to go in an if statement for Karel?

a)

ballsPresent()

b)

frontIsClear()

c)

leftIsBlocked()

d)

turnLeft()

14.

Say Karel is on a location with one tennis ball. After the following code runs, how many tennis balls will there be at that location?

for (var i = 0; i < 3; i++) {

if (ballsPresent()) {

takeBall();

} else {

putBall();

putBall();

}

}

a)

0

b)

1

c)

2

d)

6

15.

What condition should be used in this while loop to get Karel to pick up all the tennis balls on the current location?

while (________) {

takeBall();

}

a)

noBallsPresent()

b)

ballsPresent()

c)

frontIsClear()

d)

takeBall()

16.

Why does a programmer indent their code?

a)

Helps show the structure of the code.

b)

Easier for other people to understand.

c)

A key part of good programming style!

d)

All of the above

17.

How can we teach Karel new commands?

a)

For loop

b)

While loop

c)

Define a new function

d)

The start function

18.

Say you want to write a program to have Karel put down 300 tennis balls. Which control structure would you use?

a)

If statement

b)

While loop

c)

For loop

d)

Nested while loop

19.

Karel starts at Street 1, Avenue 1, facing East in a 5x5 world. What will happen after this code runs? Assume this is a SuperKarel program.

move();

move();

turnRight();

move();

a)

Karel ends on street 1, avenue 3

b)

Karel ends on street 2, avenue 3

c)

This code won’t run because of a syntax error

d)

Karel will crash into a wall

20.

Karel starts at Street 1, Avenue 1, facing East in a 5x5 world. What will happen after this code runs?

move();

putball();

move();

move();

move();

move();

move();

a)

Karel will end on Street 1, Avenue 2

b)

Karel will end on Street 1, Avenue 7

c)

this code won’t run because of a syntax error

d)

Karel will crash into a wall

21.

What is top down design?

a)

Top down design is a way to use loops and if statements to decompose the problem

b)

Top down design is a way of designing your programs starting with the individual commands first

c)

Top down design is a way of designing your program by starting with the biggest problem and breaking it down into smaller and smaller pieces that are easier to solve.

d)

Top down design is a way that you can create designs on a computer to put on a web page

22.

How can we improve the following program?

function start() {

move();

move();

move();

move();

move();

move();

move();

move();

move();

}

a)

Break down this program into more functions

b)

Use a for loop to repeat the move command

c)

Use a while loop to repeat the move command

d)

Fix the indentation of this program

23.

In the following code below from the Cleanup Karel example, what is the purpose of If Statement #2?

// This program has Karel walk down the

// row and clean up all of the tennis balls

// on the way.

function start() {

while (frontIsClear()) {

// If statement #1

if (ballsPresent()) {

takeBall();

}

move();

}

// If statement #2

if (ballsPresent()) {

takeBall();

}

}

a)

To move the last time

b)

To pick up the ball that is in the last spot

c)

To pick up the ball that is in the last spot, if there is one

d)

To take the ball from all of the positions that have a ball on them

24.

In the following code, what would be a good Postcondition to write?

/* Precondition: Karel is on a spot with a tennis ball facing East

* Postcondition: ...

*/

function getOnTop() {

turnLeft();

move();

turnRight();

}

a)

Karel is on a spot with a tennis ball facing north

b)

Karel ends one spot above a tennis ball facing East.

c)

Karel is on the same position but on top of a ball.

d)

Karel is facing East.

25.

What is the purpose of using a for loop in code?

a)

To do something if a condition is true

b)

To do something while a condition is true

c)

To repeat something a fixed number of times

d)

To make programs run faster