8(a)Searching AlgorithmsHard4 marks
Global array MyData contains the values shown.
| Index | Value |
|---|---|
| 1 | 2 |
| 2 | 8 |
| 3 | 9 |
| 4 | 12 |
| 5 | 13 |
| 6 | 15 |
| 7 | 18 |
| 8 | 19 |
| 9 | 20 |
| 10 | 23 |
| 11 | 25 |
| 12 | 26 |
| 13 | 39 |
| 14 | 38 |
| 15 | 40 |
Study the pseudocode algorithm and array MyData
FUNCTION MyTrace(Target : INTEGER) RETURNS INTEGERDECLARE LeftPointer, RightPointer, MidPointer : INTEGERLeftPointer ← 1RightPointer ← 15WHILE LeftPointer <= RightPointerMidPointer ← (LeftPointer + RightPointer) DIV 2IF MyData[MidPointer] = Target THENOUTPUT "Found " & NUM_TO_STR(MidPointer)RETURN MidPointerELSEIF Target > MyData[MidPointer] THENLeftPointer ← MidPointer + 1ELSERightPointer ← MidPointer - 1ENDIFENDIFENDWHILEOUTPUT "Not found"RETURN -1ENDFUNCTION
Complete the trace table for the function MyTrace when the following pseudocode statement is executed.
Result ← MyTrace(15)| LeftPointer | RightPointer | MidPointer |
|---|---|---|