Feb Revision1 MS
Feb Revision1 MS
Questio
Answer/Indicative content Marks Guidance
n
1 ✓
2 ✓
3 ✓
Accept T for a tick. Penalise if blank
4 ✓ table elements have content.
5 ✓
2 Examiner’s Comments
6 ✓
1 i (AO3.3
7 ✓ ) Most candidates achieved the first
8 ✓ mark on this question. The second
✓
mark was lost by those who ticked
9
‘red light’ for an input of 5.
Examiner’s Comments
Examiner’s Comments
Total 20
Examiner’s Comments
Examiner’s Comments
Total 4
• 08 (1)
ii 1
max 3 marks for benefit, max 3 for drawback, max 4
marks overall
Benefit
i
4
v
e.g.
e.g.
Total 14
Examiner’s Comment:
Most candidates produced
recognisable pseudocode. Weaker
candidates produced logically
incorrect solutions or did not
understand the difference between
an iterative and a recursive solution
– reformulating another recursive
solution. Where strong candidates
produced good solutions they
sometimes forget the necessity to
have a temporary swap variable
when swapping the values in two
different variables over.
Total 4
1
5 Iteration [1] AO2.1
(1)
Examiner's Comment:
Well answered by most candidates.
Total 1
1 Examiner’s Comments
6 a i if
AO1.1 A number of candidates overthought
(1) the answer and did not identify the if
branching statement used in the
code.
Examiner’s Comments
1 mark per bullet
2
Branching decides which code is run / only runs Many candidates found difficulty in
ii •
code once AO1.2 defining either branching or iteration
Iteration repeatedly runs the same code in the (2) clearly. Often the two terms were
•
same sequence
confused, with the clear differences
between branching and iteration not
expanded on.
1
Examiner’s Comments
ii
i AO2.1
num1, num2 Most candidates had little difficulty
(1)
correctly identifying the parameters
num1 and num2.
2 Examiner’s Comments
1 mark per bullet
AO1.1 Most candidates could successfully
v
• Gives the remainder after division (1) define the MOD function. A few
• E.g. 10 MOD 3 = 1 AO1.2 confused it with the absolute()
(1) function or with integer division, and
some did not illustrate their answer
with the required example.
temp = 0 4
Examiner’s Comments
AO2.2
ii while (num2 != 0) (2)
Most candidates attempted the
AO3.2
question and achieved some credit.
temp = num2 (2)
Relatively few achieved full marks
for this question.
num2 = num1 MOD num2
num1 = temp
endwhile
return num1
endfunction
Total 14
• Calculation of result to 3
• Call with thisFunction(theArray,
num1=4, num2=7, num3=35)
• Result = 5
• call with
thisFunction(theArray,num1=6,num2=
7,num3=35) 5
• (Result = 6) return of value 6 AO2.1
7 a (3)
AO2.2
(2)
Function call num1 num2 num3 result
thisFunction
(theArray,0,7,35) 0 7 35 3
thisFunction
(theArray,4,7,35) 4 7 35 5
thisFunction
(thisArray,6,7,35) 6 7 35 6
1
b Binary search AO2.1
(1)
e.g. 6
function thisFunction(theArray, num1, num2, num3) AO2.2
d (3)
while (true) AO3.1
result = num1 + ((num2 - num1) DIV 2) (3)
if num2 < num1 then
return -1
else
if theArray[result] < num3 then
num1 = result + 1
elseif theArray[result] > num3 then
num2 = result - 1
else
return result
endif
endif
endwhile
endfunction
Total 16
e.g.
• Clicking a box
Process:
ii 3AO2.2
i • Generating new puzzle (3)
• Checking if block is black
• Changing block to white
Output:
1 mark for clearly identifying each error and giving the Do not award marks for line
correction. numbers alone without stating the
error.
3AO2.1
v • Line 01 needs answerGrid as parameter
(3)
• Line 04 == should be != Consider 1 mark for not changing
• Line 08 should be next row line 04 but changing 05 to true and
09 to False
Total 40
Examiner’s Comments
1 mark per bullet up to a maximum of 2 marks, e.g: This was also answered well
although some candidates used the
• To setup a loop… 2 word ‘iteration’ in their answer
9 • To repeat (the same block of code) (AO3.3 without going to describe what this
• for each line in the text file / until each value ) (2) means. As this was in the question,
has been read further detail was required such as
repeating or looping through the text
file.
Total 2
Total 4
Examiner’s Comments
• Procedure declaration
• Reading file name as input
• Calling getText() function with filename
• Looping through all characters in the data
• Checking if there is a “.” (ASCII code 46)
• … checking if the next character is a space “ “
(ASCII code 32)
• … looping until there is no “ “ (ASCII code 32)
• … checking if the character is lowercase
• … changing the character to uppercase
• Writing output to text file
procedure fullStop()
filename = input("Enter filename") Examiner’s Comments
textString = getText(filename)
output = "" Most candidates achieved 2 of the
i = 0 first 3 marking points for initialising
newSentence = True the procedure and reading the text
file. Few scored nothing. Many
7AO2.2
1 while i < textString.length - 1: candidates looped through the input
(1)AO3
2 text with a loop and matched where
.2 (6)
nextChar = textString.substring(i, 1) a full-stop was located. Fewer then
went on to accurately move forward
if newSentence == True: to the first letter after the full-stop
if nextChar == " ": was found, and fewer still then
output = output + " " successfully converted the next
else: letter to upper case.
output = output + upper
(nextChar)
newSentence = False
else:
if nextChar == ".":
newSentence = True
output = output + char
endif
i = i + 1
endwhile
file = openWrite(filename)
file.write(output)
file.close()
endprocedure
Total 7
function hash(siteName)
/remove up to and including first
dot.
firstDot=locate(siteName,".")
siteName=siteName.substring(fir
stDot+1,
siteName.length-firstDot -1)
Examiner’s Comments
Exemplar 1
Total 2
1
1
i Save string in file AO2.2
5
(1)
1 mark per bullet, max 2 per advantage to max 4 Allow any appropriate advantages
e.g.
Examiner’s Comment:
Part (i) was well answered where
candidates had read the question
stem and thought logically about the
steps involved. Many candidates
gained some credit in part (ii), but
fewer could expand on the points
they made to gain full credit.
Total 5
e.g.
• startGame [1]
• loads the game, displaying the load-up
screen[1] 6
1
• displayMap [1] AO2.2
6
• outputs the map onto the screen[1] (6)
• selectArea [1]
• the user clicks on the area of the map and this
is displayed on screen[1]
• loadPuzzle [1]
• loads the puzzle for the chosen area and
displays it on screen [1]
Examiner's Comment:
Most candidates scored well, but
some repeated items from the stem
of the question and gave answers
related to character movement
which were not creditworthy.
Total 6
Total 4
e.g.
Total 6
• End level
• Move onto next level
2
1 mark per bullet
Examiner’s Comments
• Decision based on what the user has input AO2.1
ii
E.g. If they click left move the character left / if they (1) A number of answers lacked the
• click right move the character right / if they click AO2.2 clarity of a clear decision and
space bar make the character jump
(2) subsequent action that would be
performed. A number of answers
given did not relate to the user input
sub-procedure as specified.
Total 10
Examiner’s Comments
1 mark per bullet up to a maximum of 4 marks, e.g.: Most candidates achieved some
4 marks for this question, but few
• makes use of a (while) loop… (AO2.2 achieved complete responses. Many
• ….which will continually check the telephone ) identified iteration within the first
2
i number…. (2) version as key to repeating the
0
• …and repeatedly ask for a telephone number (AO3.3 sequence until the validation
to be re-entered…. ) conditions were met. Fewer could
• ….until the rules have been met (2) explain how version two of the code
would allow invalid data to be
entered into the system.
1 mark for stating a suitable procedure name and 1 The procedure name must be
mark for a suitable purpose (4 marks in total), e.g.: relevant to the context in the
question.
• Procedure Name: registerAccount
• Purpose: To load up the registration page Both a procedure name and
when the user wants to create a new account purpose must be stated for 2 marks.
Total 10