A global 1D array of integers contains four elements, which are assigned values as shown: Mix[1] ← 4 Mix[2] ← 2 Mix[3] ← 3 Mix[4] ← 5 A procedure Process() manipulates the values in the array. The procedure is written in pseudocode as follows: PROCEDURE Process(Start : INTEGER) DECLARE Value, Index, Total : INTEGER Index ← Start Total ← 0 WHILE Total < 20 Value ← Mix[Index] Total ← Total + Value IF Index < 4 THEN Mix[Index] ← Mix[Index] + Mix[Index+1] ELSE Mix[Index] ← Mix[Index] + Mix[1] ENDIF Index ← (Value MOD 4) + 1 ENDWHILE Mix[1] ← Total * Index ENDPROCEDURE Complete the trace table on the opposite page by dry running the procedure when it is called as follows: CALL Process(2) [Trace table with columns: Index, Value, Total, Mix[1], Mix[2], Mix[3], Mix[4]]
📋 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...
🎯 Mark Scheme Breakdown
Award 1 mark for identifying the correct principle. Award 1 mark for showing clear working. Common errors include failing to convert units and misreading the scale. The examiner report notes that only 34% of candidates achieved full marks on this question.
Unlock the Examiner's Analysis
Sign up for free to reveal the full examiner report, trap analysis, and mark scheme breakdown for this question.
Sign Up Free to Unlock →Join thousands of Cambridge students already using Oracle Prep