0% found this document useful (0 votes)
2 views30 pages

June 2019 MS - Paper 2 Edexcel Computer Science IGCSE

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 30

PMT

Mark Scheme (Results)

Summer 2019

Pearson Edexcel International GCSE


In Computer Science (4CP0)
Paper 02: Application of Computational Thinking
PMT

Edexcel and BTEC Qualifications

Edexcel and BTEC qualifications are awarded by Pearson, the UK’s largest awarding body. We
provide a wide range of qualifications including academic, vocational, occupational and specific
programmes for employers. For further information visit our qualifications websites at
www.edexcel.com or www.btec.co.uk. Alternatively, you can get in touch with us using the details
on our contact us page at www.edexcel.com/contactus.

Pearson: helping people progress, everywhere

Pearson aspires to be the world’s leading learning company. Our aim is to help everyone progress
in their lives through education. We believe in every kind of learning, for all kinds of people,
wherever they are in the world. We’ve been involved in education for over 150 years, and by
working across 70 countries, in 100 languages, we have built an international reputation for our
commitment to high standards and raising achievement through innovation in education. Find out
more about how we can help you and your students at: www.pearson.com/uk

Summer 2019
Publications Code 4CP0_02_1906_MS
All the material in this publication is copyright
© Pearson Education Ltd 2019
PMT

General Marking Guidance

• All candidates must receive the same treatment. Examiners must mark the first
candidate in exactly the same way as they mark the last.
• Mark schemes should be applied positively. Candidates must be rewarded for what
they have shown they can do rather than penalised for omissions.
• Examiners should mark according to the mark scheme not according to their
perception of where the grade boundaries may lie.
• There is no ceiling on achievement. All marks on the mark scheme should be used
appropriately.
• All the marks on the mark scheme are designed to be awarded. Examiners should
always award full marks if deserved, i.e. if the answer matches the mark
scheme. Examiners should also be prepared to award zero marks if the candidate’s
response is not worthy of credit according to the mark scheme.
• Where some judgement is required, mark schemes will provide the principles by which
marks will be awarded and exemplification may be limited.
• When examiners are in doubt regarding the application of the mark scheme to a
candidate’s response, the team leader must be consulted.
• Crossed out work should be marked UNLESS the candidate has replaced it with an
alternative response.
PMT

This mark scheme is presented so that questions requiring a handwritten response are grouped at the start.
This is followed by the mark scheme for the questions which require submission of coding.
Examples of coding that would gain marks is grouped at the end in order of coding language.

Question Answer Additional Guidance Mark


1(a) The only correct answer is C

A is not correct because Boolean only has values True and


False
B is not correct because it only allows for one character
D is not correct because it is used for mixed text and numeric
data
(1)
1(b) (an error that) produces incorrect /unintended output (1) Accept an example of an explained logic error (1)
1(d) Any one from:
1. explain how the program works (1)
2. improve readability of the program (1)
3. make code more understandable (1) (1)
1(e) 1. Global variables created in the main program / can be
accessed from any part of the program / are in scope
throughout the program (1)
2. Local variables are declared/created inside a
function/blocked code (indented, brackets) and are only
accessible there / are only in scope within the function in
which they’re declared (1) (2)
PMT

Question Answer Additional Guidance Mark


1(g) For up to two tests Each test should target a different feature of one of the
Award 1 mark for an appropriate validation test and 1 mark requirements
for an item of test data that would fail only the given test • Exactly 7 characters (in the stem)
• First two characters are letters / upper case
Validation test Erroneous data letters
Are the first two 1234CCC • Characters 3 & 4 are numeric
characters letters/upper • Last three characters are letters / upper case
case letters? letters
Are the third- and fourth- CCCCBBB
characters numerical
digits?
Are the last three CC12345
characters letters/upper
case letters?
(4)

Question Answer Additional Guidance Mark


2(b)(i) 24.0 (1) Accept 24
(1)
2(b)(ii) One of:
By the rules of precedence multiplication is done before
addition. (1)
Without the brackets the addition would be done to the total
of the multiplication. (1)
By the rules of the BODMAS/BIDMAS additions happen after
multiplication. (1)
newSpeed and intialSpeed have to be added together before
multiplying (by time). (1)
(1)
PMT

Question Answer Additional Guidance Mark


2(b)(iii) Real (1) Accept double / float
Because real x integer = real (1) Accept ‘because it could be a number with decimal
places’ (2)
2(b)(iv) 27.375 (1)
(1)
Q2(c)(i)
C#: 16 or 20 (1)
Java: 16 or 21 (1)
Python: 8 or 10 (1)
(1)
Q2(c)(ii)
C#: 29 or 31 (1)
Java: 24 or 26 (1)
Python: 14 or 15 (1)
(1)
Q2(c)(iii) Any of:
1. Message (1)
2. startPos (Python) / pos (Java or C#) (1)
3. characters (1) (1)
Q2(c)(iv) newMessage (1) Do not accept outMessage (1)
Q2(c)(v) Response starts with ‘c’ (1) Marks can be awarded from Q2(c)(vi)
Response has six letters in sequence from ‘educational’ (1) (2)
Q2(c)(vi) 1. Returns substring / crops a string (1) Award two marks for:
2. Located between the two input values / with number of It produces a substring of the message starting at
characters identified in the last parameter (characters) position startPos with length characters
and starting at the second parameter (startPos) (1) Award up to 2 marks for a correct interpretation of the
code (e.g ‘obtain a newMessage’ – is worth 1)
Accept a correct generic explanation of what a
subprogram does for 1 mark (2)
PMT

Question Answer Additional Guidance Mark


Q3(b) More memory/storage required (1)
Because not sorted in place / not efficient / many steps /
division of data set / is recursive (1) (2)

Question Answer Additional Guidance Mark


4(a) The only correct answer is D

A is not correct because Plaintext is the original unencrypted


text
B is not correct because there is a consistency in the coding of
the text
C is not correct because a shift encryption replaces letters
with other letters a given distance from the original letter (as
in a Caesar cipher) 1
4(b) Award 3 marks for all rows correct
Award 2 marks for 4 rows correct
Award 1 mark for 2 rows correct

G
Q
I
X
N
U
(3)
Q4(c) One mark for correct decision: Award marks independently
Yes (1)
Up to two marks for the correct justifications:
Each/every letter has a symbol / is represented (1)
The symbol is a single/unique representation (1) (3)
PMT

Question Answer Additional Guidance Mark


1(c) C# Candidates are required to open the file Q01c in (3)
1. Semicolon at the end of line 9 [maxValue=5;] (1) the code editor.
2. Consistent capitalisation of ‘count’ on lines 10, 11, 13 and 14 (1) Amended code should be saved as
3. constantValue needs to be defined and given the value 7 / Q01cFINISHED.
replaced by value 7 (1) Line numbers may have been changed by
Java corrections to code (e.g. insertion of
1. Semicolon at the end of line 8 [maxValue = 5;] (1) constantValue definition)
2. Consistent capitalisation of ‘count’ on lines 7, 9, 11 and 12 (1)
3. constantValue needs to be defined and given the value 7 /
replaced by 7 (1)
Python
1. Colon needed at end of line 7 [count, maxValue):] (1)
2. Consistent capitalisation of ‘count’ on line 3, 7, 8 and 9 (1)
3. constantValue needs to be defined and given the value 7 /
replaced by 7 (1)

Question Answer Additional Guidance Mark


1(f) Award 1 mark for each correct pair of relational operators and 1 mark for correct Candidates are required to open
Boolean operator for each condition. the file Q01f in the code editor.
Amended code should be saved as
Condition Coding Q01fFINISHED.
Shop income more than £5000 shopIncome > 5000; assistantSales >= 10 (1) Do not penalise candidates who
or assistant sold at least 10 pairs correct OR operator (1) attempt more than the stated
Shop income at least £2000 and shopIncome >= 2000; assistantSales >= 5 (1) requirements.
assistant sold at least 5 pairs correct AND operator (1) Do not award Boolean operator
mark for single | or & as these are
Accept >9, >1999 and >4 for respective >= comparisons not correct.
(4)
PMT

Question Answer Additional Guidance Mark


2(a) Award 1 mark for each of: Candidates are required to open the file Q02a in the
1. set counter to 1 and guess to 0 (1) code editor.
2. set answer to random value between 1 and 10 (1) Amended code should be saved as Q02aFINISHED.
3. request input of and accept an integer value for guess (1) Logic of algorithm must be followed as set out.
4. create a while loop with a correct condition (1) Alternatives must address each point.
5. increment the counter (1) Do not penalise candidates who attempt more than
6. use if else selection to determine and display appropriate the stated requirements.
output message for incorrect guesses (1)
7. request input of and accept another integer value for a
guess inside the loop (1)
8. display correct guess and count of guesses (1)
9. compiling without syntax errors (1)
10. coding meets all requirements of question (1) (10)

Question Answer Additional Guidance Mark


Q3(a) Award 1 mark each for: Amended code should be saved as Q03aFINISHED.
1. File opened for input (1) Do not penalise candidates who attempt more than
2. File opened for output (1) the stated requirements.
3. Loop for processing data (1)
4. Check for ‘@’ symbol (1)
5. Write invalid address to output file (1)
6. Close files (1) (6)
PMT

Question Answer Additional Guidance Mark


Q3(c) Award 1 mark for each section of code that: Amended code should be saved as Q03cFINISHED.
1. Asks for input of a number and stores it in a variable
with a meaningful name (1) Allow follow through for mark point 4 when square and
2. Checks number is between 1 and 50 (1) cube are incorrectly calculated.
3. Calculates square and cube of number (1)
4. Displays suitable labels e.g. ‘Number’, ‘Square’ and Credit alternative coding which produces same results.
‘Cube’ and relevant values (1)
For the whole code: Accept use of exponent operators:
5. Compiles and runs without logical or syntax errors (1) C# e.g. Math.Pow (2, 3) = 8
6. Efficient in terms of computation, storage and selection Java e.g. Math.pow (2, 3) = 8
of programming constructs (1) Python e.g. 2**3 = 8.
(6)

Question Designated marks: Additional Guidance Mark


Q5 Designated marks: Award marks
independently
1. Initialise variables for at least two of total number of books, count of pupils and average
2. Initialise variables for gold, silver and bronze / sort array in order of books read
Award marks for
3. Create loop for identifying (and printing) those borrowing fewer than 10 books
reasonable attempt to
4. Print out appropriate details (must include pupil ID)
meet requirement.
5. Print out total of books borrowed
6. Print out average number of books borrowed
7. Identification of gold medal winner
8. Identification of silver medal winner
9. Identification of bronze medal winner
10. Details of at least one of gold, silver and bronze medal winner printed (minimum last
name or first name)
11. Details of all three medal winners (first name and last name) (11)
PMT

Question 5 Overview marks:


Mark Band 0 Mark Band 1 Mark Band 2 Mark Band 3 Marks
0 1–3 4–6 7–9
No Little attempt to decompose the Some attempt to decompose the The problem has been decomposed
rewardable problem into component parts problem into component parts into component parts
content
Some parts of the logic are clear and Most parts of the logic are clear and The logic is clear and appropriate to
appropriate to the problem mostly appropriate to the problem the problem

Some appropriate use and The use and manipulation of data The use and manipulation of data
manipulation of data types, types, variables and data structures types, variables and data structures
variables, data structures and and program constructs is mostly and program constructs is
program constructs appropriate appropriate

Parts of the code are clear and Code is mostly clear and readable Code is clear and readable
readable

Finished program will not be flexible Finished program will function with Finished program could be used
enough with other data sets or input some but not all other data sets or with other data sets or input
input

The program meets some of the The program meets most of the The program fully meets the given
given requirements given requirements requirements
(9)
PMT

C# Example code
1(c)

1(f)
PMT

2(a)
PMT

3(a)
PMT

3(c) Note: Line 19 is an alternative response to line 18


PMT

5
PMT

Java Example code

1(c)

1(f)
PMT

2(a)
PMT

3(a)
PMT

3(c) Note: Line 19 is an alternative response to line 18


PMT

5
PMT

Python Example code

1(c)

1(f)
PMT

2(a)
PMT

3(a)
PMT

3(c)

Note: Line 11 is an alternative response to line 9.


PMT

5
PMT
PMT
PMT
PMT

Pearson Education Limited. Registered company number 872828


with its registered office at 80 Strand, London, WC2R 0RL, United Kingdom

You might also like