4 Study the following pseudocode. Line numbers are for reference only. 10 FUNCTION Convert(Name : STRING) RETURNS STRING 11 12 DECLARE Flag: BOOLEAN 13 DECLARE Index : INTEGER 14 DECLARE ThisChar : CHAR 15 DECLARE NewName : STRING 16 17 CONSTANT SPACECHAR = ' ' 18 19 Flag ← TRUE 20 Index ← 1 21 NewName ← "" // formatted name string 22 23 WHILE Index <= LENGTH(Name) 24 ThisChar ← MID(Name, Index, 1) 25 IF Flag = TRUE THEN 26 NewName ← NewName & UCASE(ThisChar) 27 IF ThisChar <> SPACECHAR THEN 28 Flag ← FALSE 29 ENDIF 30 ELSE 31 NewName ← NewName & ThisChar 32 ENDIF 33 IF ThisChar = SPACECHAR THEN 34 Flag ← TRUE 35 ENDIF 36 Index ← Index + 1 37 ENDWHILE 38 39 RETURN NewName 40 41 ENDFUNCTION (a) Complete the trace table below by dry running the function when it is called as follows: Result ← Convert("VinVa∇∇Cup") Note: The symbol 'V' has been used to represent a space character. Use this symbol for any space characters in the trace table. The first row has been completed for you. Name | Flag | Index | NewName | ThisChar --------------|------|-------|---------|--------- "VinVa∇∇Cup" | | | | (b) The pseudocode for Convert() contains a conditional loop. State a more appropriate loop structure. Justify your answer. Loop structure ................................................................................................................................................... Justification ....................................................................................................................................................... (c) Two changes need to be made to the algorithm. Change 1: Convert to lower case any character that is not the first character after a space. Change 2: Replace multiple spaces with a single space. (i) Change 1 may be implemented by modifying one line of the pseudocode. Write the modified line. (ii) Change 2 may be implemented by moving one line of the pseudocode. Write the number of the line to be moved and state its new position. Line number ..................................................................................................................................................... New position ....................................................................................................................................................
✓ Correct Answer
The correct answer is —. This question tests the candidate's understanding of algorithms and pseudocode within the Computer Sciencesyllabus. The examiner's mark scheme requires...
📋 Examiner Report & Trap Analysis
Common mistake: 62% of candidates selected the distractor because they confused... The examiner specifically designed this question to test whether students can differentiate between... To secure full marks, candidates must demonstrate...
Unlock the Examiner's Answer
Sign up for free to reveal the correct answer, the official mark scheme breakdown, and the examiner trap analysis for this question.
Sign Up Free to Unlock →Join thousands of Cambridge students already using Oracle Prep