Basis van programmeren (pseudocode traceren)
Het volgende programma heeft een voorwaarde binnen een geneste lus. Wat is de waarde van c nadat het is uitgevoerd?
integer: c ← 0
for (i from 1 to 4 step 1)
for (j from 1 to i step 1)
if (j mod 2 = 1)
c ← c + 1
endif
endfor
endfor
- A4
- B6
- C10
Antwoord en toelichting tonen
Antwoord: B. 6
De binnenste lus laat j lopen van 1 tot i en verhoogt c alleen als j oneven is. Voor i = 1 is dat j = 1 (één keer), voor i = 2 j = 1 (één keer), voor i = 3 j = 1, 3 (twee keer) en voor i = 4 j = 1, 3 (twee keer), samen 1 + 1 + 2 + 2 = 6. De binnenste body wordt in totaal 1 + 2 + 3 + 4 = 10 keer uitgevoerd, maar de voorwaarde is maar 6 keer waar. Dit is een basisvorm waarin controlestructuren worden gecombineerd: een selectie binnen een herhaling.
Verder: nog 9 vragen over Basis van programmeren (pseudocode traceren)