Skip to content

Course home

Structured programming and subroutines (procedures and functions)

Structured programming and subroutines (procedures and functions)

EasyMediumHard
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
Question 13

An automated smart irrigation system uses the subroutines shown in Figure 1 to process sensor readings.

Figure 1

SUBROUTINE needsWatering(moistureLevel)
  IF moistureLevel < 35 THEN
    RETURN True
  ELSE
    RETURN False
  ENDIF
ENDSUBROUTINE

SUBROUTINE calculateDeficit(moistureLevel, temperature)
  adjusted ← moistureLevel - (temperature * 0.15)
  IF adjusted < 0 THEN
    adjusted ← 0
  ENDIF
  RETURN adjusted
ENDSUBROUTINE

SUBROUTINE monitorSensor(moistureLevel, temperature)
  currentLevel ← calculateDeficit(moistureLevel, temperature)
  OUTPUT currentLevel
  IF needsWatering(currentLevel) = True THEN
    OUTPUT "Activate irrigation"
  ELSE
    OUTPUT "Irrigation idle"
  ENDIF
ENDSUBROUTINE

Describe how the programmer has used a structured programming approach in Figure 1.

[4]
Markscheme

Structured programming and subroutines (procedures and functions) Questions

  1. GCSE
  2. /Computer Science
  3. /Structured programming and subroutines (procedures and functions)

131 exam-style questions on AQA GCSE Computer Science Structured programming and subroutines (procedures and functions). Each one has a worked solution and a mark scheme showing where the marks go.

Question bank