Search Header Logo

AP Computer Science Principles Unit 3

Authored by Donna HS]

Computers

10th - 12th Grade

Used 211+ times

AP Computer Science Principles Unit 3
AI

AI Actions

Add similar questions

Adjust reading levels

Convert to real-world scenario

Translate activity

More...

About

This quiz covers fundamental programming concepts within AP Computer Science Principles, specifically focusing on Unit 3 which addresses programming constructs and computational thinking. The content is appropriate for grades 10-12 and assesses students' understanding of programming languages, functions, loops, parameters, and abstraction. Students need to demonstrate comprehension of how programming languages differ from natural languages in their precision and limited vocabulary, understand the purpose and benefits of functions as reusable code blocks, analyze pseudocode to predict robot movement patterns, and distinguish between appropriate uses of loops versus functions for different programming tasks. The questions require students to apply logical reasoning skills to debug code, evaluate the role of parameters in making functions more flexible, and understand how abstraction facilitates collaboration among programmers. This material builds essential computational thinking skills including pattern recognition, decomposition, and algorithmic reasoning. Created by Donna, a computer science teacher in the US who teaches grades 10-12. This quiz serves as an excellent formative assessment tool for students working through AP Computer Science Principles Unit 3, allowing teachers to gauge student comprehension of core programming concepts before moving to more advanced topics. Teachers can effectively use this quiz as a warm-up activity to activate prior knowledge, assign it as homework to reinforce classroom learning, or implement it as a review session before unit examinations. The varied question formats, including multiple choice conceptual questions and code analysis problems, make it particularly valuable for identifying students who may need additional support with abstract programming concepts versus those ready for more complex applications. The content aligns with College Board standards for AP Computer Science Principles, particularly focusing on Learning Objectives related to algorithms and programming (AAP) and the computational thinking practices essential for success in the AP examination.

    Content View

    Student View

14 questions

Show all answers

1.

MULTIPLE SELECT QUESTION

1 min • 1 pt

Programming languages have some similarities and differences to the "natural" language you use in everyday speech. Select the two true statements about programming languages:

Ambiguities in natural language necessitate the creation of programming languages for controlling a computer

Compared to the number of words in a natural language, the number of defined words in a programming language is very small.

The number of defined words in a programming language is about the same as the number of words in a natural language.

There are typically many possible ways to interpret an instruction written in a programming language.

2.

MULTIPLE CHOICE QUESTION

2 mins • 1 pt

Media Image

The next two questions use a robot in a grid of squares. The robot is represented as a triangle, which is initially facing up, towards the top of the grid. The robot is moved according to the instructions in the chart above.


Consider the following program which uses commands from the pseudocode described above.


REPEAT 4 TIMES {

MOVE_FORWARD()

MOVE_FORWARD()

MOVE_FORWARD()

ROTATE_RIGHT()

MOVE_FORWARD()

ROTATE_RIGHT()

MOVE_FORWARD()

ROTATE_RIGHT()

}


Which of the following images shows the path and ending location of the robot that will result from executing the code above. The starting location of the robot is shown as dotted triangle for cases where the robot does not start and end at the same location.

Media Image
Media Image
Media Image
Media Image
Media Image

3.

MULTIPLE CHOICE QUESTION

1 min • 1 pt

Which of the following is NOT true about functions in programming?

Functions are reusable programming abstractions.

Functions help reduce the complexity of writing and maintaining programs.

Functions cannot make calls to other functions within the same program.

Functions help break a problem into logical chunks.

Once defined, a function can be called many times from different parts of a program.

4.

MULTIPLE CHOICE QUESTION

1 min • 1 pt

What is one important naming convention of functions?

A function name should indicate how long the function takes to run.

Two functions with similar behavior should be given identical names to indicate the relationship between them.

A function name should be as descriptive as possible to indicate what the function does.

Function names should be organized alphabetically.

The function name should begin with a number that indicates the order in which it should be executed.

5.

MULTIPLE CHOICE QUESTION

1 min • 1 pt

Which one of the following statements about functions is TRUE

A function can change names over the course of a program.

Code can be added or removed dynamically from a function while the program is running.

Functions can be called using different names depending on where in the program they are called.

Two functions can be given identical names as long as their code is identical.

Two functions in a single program can have different names but contain identical code.

6.

MULTIPLE CHOICE QUESTION

1 min • 1 pt

Which of the following will call the function drawStar?

drawStar;

drawStar();

function drawStar (){

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

moveForward(100);

turnLeft(36);

}

}

function drawStar;

function drawStar();

7.

MULTIPLE CHOICE QUESTION

2 mins • 1 pt

Media Image

Consider the following incorrect program, which is intended to move the robot around the perimeter of a grid, as indicated by the drawing above. The starting position and direction of the robot is indicated in the diagram.


Line 1: REPEAT 4 TIMES

Line 2: {

Line 3: MOVE_FORWARD()

Line 4: ROTATE_RIGHT()

Line 5: MOVE_FORWARD()

Line 6: MOVE_FORWARD()

Line 7: MOVE_FORWARD()

Line 8: MOVE_FORWARD()

Line 9: ROTATE_RIGHT()

Line 10: }


Given the options below, which lines should be removed so the program will work as intended?

Line 3 and Line 4

Lines 5, 6, 7, 8 and 9

Line 8 and Line 9

Line 9

Access all questions and much more by creating a free account

Create resources

Host any resource

Get auto-graded reports

Google

Continue with Google

Email

Continue with Email

Classlink

Continue with Classlink

Clever

Continue with Clever

or continue with

Microsoft

Microsoft

Apple

Apple

Others

Others

Already have an account?