642763 Mark Scheme Computational Thinking Algorithms and Programming
642763 Mark Scheme Computational Thinking Algorithms and Programming
Computer Science
It is also responsible for developing new specifications to meet national requirements and the
needs of students and teachers. OCR is a not-for-profit organisation; any surplus made is
invested back into the establishment to help towards the development of qualifications and
support, which keep pace with the changing needs of today’s society.
This mark scheme is published as an aid to teachers and students, to indicate the requirements
of the examination. It shows the basis on which marks were awarded by examiners. It does not
indicate the details of the discussions which took place at an examiners’ meeting before marking
commenced.
All examiners are instructed that alternative correct answers and unexpected approaches in
candidates’ scripts must be given marks that fairly reflect the relevant knowledge and skills
demonstrated.
Mark schemes should be read in conjunction with the published question papers and the report
on the examination.
© OCR 2020
Annotations
Annotation Meaning
Answer seen – this annotation must be used on all blank pages within an answer booklet (structured or unstructured) and on
SEEN
each page of an additional object where there is no candidate response.
Omission mark
Benefit of doubt
Cross
Follow through
Repeat
Tick
Each question must include annotation. All marks credited on point-based marking must be given a tick.
J276/02 Mark Scheme November 2020
1 (b) (i) • timer = 7.3 1 Ignore dim / define / etc and data types
Do not allow use of string delimiters or other unsuitable
AO3 data types.
2b(1) Allow other suitable assignment symbols (e.g. := ) Do
not allow == for assignment.
Do not penalise case. Spelling must be accurate
AO2
1b(1)
2 (a) 4
Line Program code Output
AO2
08 print score 18 1b(4)
10 print 37
newscore(score,2)
11 print score 18
J276/02 Mark Scheme November 2020
2 (b) 1 mark per bullet to max 2 2 Accept “human language” as English for BP4
• Easier/quicker for humans to write
• Easier/quicker to read / understand / remember AO1 “Easier to use” is too vague.
1b(2)
• Easier/quicker to maintain / debug / spot errors
• …because code is closer to English / uses English
words
• Less code to write
• …because one HLL instruction represents many
assembly instructions
• Portable (between processors) // will work with
different types of computer
3 (a) (ii) 1 mark per bullet to max 2 2 Do not accept just “repeatedly testing” for iterative
• Iterative is during development // repeatedly testing
after/while making changes AO1 BOD “iterative testing tests modules/sections”
1b(2)
• Final is when the development is (almost) complete //
done after iterative testing
3 (a) (iii) 3 For £0.49 accept any value <£0.50. Must be a specific
Money value, not a description.
Code entered Expected result AO3
inserted
2b(3) Accept any suitable error message for invalid selection
C2
£0.49
(or any value less
that £0.50)
Invalid Selection
(or any suitable error message)
J276/02 Mark Scheme November 2020
3 (b) (i) • money 1 Must be an identifier, not description. Ignore case.
• price
AO1
1b(1)
3 (b) (ii) • one 1
AO2
1b(1)
3 (c) 1 mark per bullet 5 Reasonable attempt at BP1 needed for credit BP2, 3 and 4
• Checking if money>=price…
• …decision (diamond shape) used AO3 Ignore other additional code.
2b(5)
• …venditem() and giveChange(money-price) if
True/Yes BP3 and BP4 must follow on from True/False // Yes/No
• …output an error if False / No decision to be credited.
• Terminator used to start and end the program and all
Subroutines names and parameters must be correct. Ignore
paths terminated
missing brackets on venditem.
False
True
J276/02 Mark Scheme November 2020
e.g.
newstate = input("Enter the new state : ")
if newstate == "on" then
statevalue = 1
elseif newstate = "off" then
statevalue = 2
elseif newstate = "suspended"
statevalue = 3
else
print("Invalid state")
endif
J276/02 Mark Scheme November 2020
4 (a) • E3 2 1 mark per digit (mark right to left)
Max 1 if any additional leading values
AO1
1b(2)
4 (b) • 0110 1001 must be 8 bits 2 1 mark per nibble (mark right to left).
Max 1 if any additional leading values
AO1
1b(2)
4 (c) 1 mark per bullet to max 2 2 Mark response as a whole.
• Easier/quicker to communicate / enter / write /
read / remember AO1 Do not accept answers simply describing what hexadecimal
1b(2) is.
• Less chance of input errors // easier to spot
errors
• They are smaller / shorter “easier to understand” or “easier to use” on its own is NE
• Easy to convert between binary and
Hexadecimal BP3 (smaller) must refer to size when written down, NOT
size when stored which is unaffected)
AO1
1b(1)
4 (d) (ii) • 1 1 CAO
AO1
1b(1)
4 e • 00001111 1 Ignore missing or additional leading zeros
AO1
1b(1)
4 f i 1 mark per bullet point 3 Shape must be accurate
• B AND C
• OR gate with two inputs, one of which is A AO1
1b(3)
• …correct connection of these two gates with no
additional gates / connections
J276/02 Mark Scheme November 2020
4 f ii 1 mark per bullet point 4 CAO
• Correct completion of A and B inputs as 1 1 A B P
• 0 output for 01 input AO1
1b(1)
• 0 output for 10 input AO2 0 0 1
• 0 output for 11 input 1b(3)
0 1 0
1 0 0
1 1 0
J276/02 Mark Scheme November 2020
6 (a) • Access “Rob” / studentnames[0]… 4 Answer must refer to this array, not a generic description
• …does not equal “Anna” // not desired item // of linear search. “Access first item” is NE for BP1 or BP3.
move on AO2 Must refer to this scenario.
1b(4)
• Access “Anna” / studentnames[1]
• …does equal “Anna” // stop // item found Max 1 for “Compare ‘Anna’ to each item in list” if nothing
else credited.
J276/02 Mark Scheme November 2020
6 (b) • Anna inserted before Rob as first two 5 Rob Anna Huw Emma Patrice Iqbal
elements… Anna Rob Huw Emma Patrice Iqbal
• …Huw correctly inserted into sorted list… AO2 Anna Huw Rob Emma Patrice Iqbal
1b(5)
• …Emma correctly inserted into sorted list … Anna Emma Huw Rob Patrice Iqbal
• …Patrice correctly inserted into sorted list … Anna Emma Huw Patrice Rob Iqbal
• …Iqbal correctly inserted into sorted list and no Anna Emma Huw Iqbal Patrice Rob
further changes made.
Sorted list highlighted
6 (c) • Use of iteration (any use) … 6 BP 2 and 3 may be met together with suitable input
• ...loops for each item in array // loops 6 times statement. Both dependent on attempt at iteration.
• …to print out each item in studentnames AO3
2b(6) BP5 not dependent on correct previous parts.
• …input attendance
• Add up/calculate students present and absent
• …Outputs present and absent (in suitable BP6 needs reasonable attempt at totalling present and
message) absent figures.
Example algorithm
present=0
absent=0
for i = 0 to (studentnames.length) -1
print(studentnames[i])
attendance=input("absent or present?")
if attendance=="present" then
present=present+1
else
absent=absent+1
endif
next i
print ("Present students: " + present)
print ("Absent students: " + absent)
OCR (Oxford Cambridge and RSA Examinations)
The Triangle Building
Shaftesbury Road
Cambridge
CB2 8EA
www.ocr.org.uk
For staff training purposes and as part of our quality assurance programme your call may be
recorded or monitored