IB Diploma Programme (DP) - SL & HL · Computer Science

Specifying problems and success criteria: Practice Questions

5 multiple-choice questions marked as you go, and 5 written questions with worked solutions. All on Specifying problems and success criteria.

10 questions25 marksFree, no account
Question 1
1 mark

Which of the following describes the process of pattern recognition in computational thinking?

Question 2
1 mark

What is the main purpose of abstraction in computational thinking?

Question 3
1 mark

Consider the following logical expression: \( A \text{ AND } (\text{NOT } B \text{ OR } C) \).

If the Boolean variables are assigned as \( A = \text{true} \), \( B = \text{true} \), and \( C = \text{false} \), what is the final Boolean result of the expression?

Question 4
1 mark

In the context of computational thinking and algorithm design, which of the following is a mandatory pre-condition for performing a binary search on a one-dimensional array?

Question 5
1 mark

In a Binary Search Tree (BST), the following keys are inserted into an empty tree in the order: 45, 20, 60, 10, 30, 50, 70. Which node is the immediate predecessor (the value immediately before in a sorted sequence) of the root node \( 45 \) when performing an in-order traversal?

Question 6
2 marks

Identify and briefly define the component of computational thinking that involves identifying similarities or shared characteristics between different problems.

Write your answer out first, then check it against the worked solution.

Question 7
4 marks

Explain how thinking concurrently can improve the efficiency of a spreadsheet application when calculating a large workbook containing thousands of independent formulas.

Write your answer out first, then check it against the worked solution.

Question 8
6 marks

Evaluate how the combination of abstraction and decomposition is utilized when a system designer defines a module interface before the internal code of that module is developed.

Write your answer out first, then check it against the worked solution.

Question 9
3 marks

A programmer is writing instructions for a robot to draw a square on a screen. The sequence of commands is as follows:
1. Move 10 units forward
2. Turn 90 degrees clockwise
3. Move 10 units forward
4. Turn 90 degrees clockwise
5. Move 10 units forward
6. Turn 90 degrees clockwise
7. Move 10 units forward
8. Turn 90 degrees clockwise

a) Use pattern recognition to identify the repeating sub-sequence in these instructions.
b) Explain how abstraction can be applied to create a more efficient version of this algorithm for the robot.

Write your answer out first, then check it against the worked solution.

Question 10
5 marks

Consider the following algorithm provided in pseudocode:

\( COUNT = 1 \)
\( TOTAL = 0 \)
loop while \( COUNT < 5 \)
  if \( COUNT \) mod 2 != 0 then
    \( TOTAL = TOTAL + COUNT \)
  else
    \( TOTAL = TOTAL - 1 \)
  end if
  \( COUNT = COUNT + 1 \)
end loop

Construct a trace table to show the values of the variables \( COUNT \) and \( TOTAL \) at the end of every iteration of the loop until the condition is no longer met.

Write your answer out first, then check it against the worked solution.

* The content provided by thinka is generated by AI and may not always be accurate or up-to-date. Please use it as a supplementary resource and verify with official materials.

You've seen the model answer. Now get yours marked.

This page can show you how a good answer looks. It cannot tell you what your answer was missing. thinka marks your written work against the real mark scheme in about 15 seconds.

Want more questions like these? Get a fresh set on this topic, graded as you go.

Practice More