Basis van programmeren (pseudocode traceren)
Array-indexen beginnen bij 1. Het volgende programma zoekt het grootste element. Wat is de waarde van m nadat het is uitgevoerd?
integer array: a ← {3, 8, 2, 8, 5}
integer: m ← 1
for (i from 2 to 5 step 1)
if (a[i] > a[m])
m ← i
endif
endfor
- A2
- B4
- C8
Antwoord en toelichting tonen
Antwoord: A. 2
m is de index van het grootste element dat tot dan toe is gezien. Bij i = 2 geldt a[2] = 8 > a[1] = 3, dus m = 2. Bij i = 4 is a[4] = 8 gelijk aan a[2] = 8, dus > geldt niet en m verandert niet. Komt het maximum meer dan eens voor, dan blijft de index van het eerste voorkomen, 2, staan. Met ≧ zou het resultaat de index van het laatste voorkomen zijn, 4.
Verder: nog 9 vragen over Basis van programmeren (pseudocode traceren)