Skip to content

Course home

Sign up

Computational thinking

EasyMediumHard
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
Question 95

An algorithm is designed to search a database of astronomical objects, where their distances in Megaparsecs (Mpc) are stored in an ascendingly sorted list, galactic_distances, for a specific distance target_distance.

idx = 0
is_located = False
exceeded = False

while (idx < len(galactic_distances)) and (not is_located) and (not exceeded):
    if galactic_distances[idx] == target_distance:
        is_located = True
    elif galactic_distances[idx] > target_distance:
        exceeded = True
    else:
        idx = idx + 1

The boolean variable is_located helps make the algorithm efficient by terminating the search as soon as the target is found.

Describe how the use of the exceeded variable also helps to make the algorithm efficient.

[2]
Markscheme

Computational thinking Questions

  1. GCSE
  2. /Computer Science
  3. /Computational thinking

Question bank