Basis van programmeren (pseudocode traceren)
÷ staat voor deling; bij toekenning aan een variabele van het type integer (ook een argument) worden de cijfers achter de komma weggelaten. Wat is de retourwaarde als de volgende functie f wordt aangeroepen als f(9087)?
○integer: f(integer: x)
integer: s ← 0
while (x > 0)
s ← s + x mod 10
x ← x ÷ 10
endwhile
return s
- A4
- B15
- C24
Antwoord en toelichting tonen
Antwoord: C. 24
x mod 10 haalt het eenhedencijfer van x eruit, en x ← x ÷ 10 is een gehele deling, omdat de cijfers achter de komma wegvallen, en verwijdert dat cijfer. mod heeft voorrang boven +, dus s ← s + x mod 10 betekent s ← s + (x mod 10). x wordt achtereenvolgens 9087, 908, 90, 9 en 0, en 7, 8, 0 en 9 worden een voor een bij s opgeteld: 7 + 8 + 0 + 9 = 24. De functie berekent de som van de cijfers.
Verder: nog 9 vragen over Basis van programmeren (pseudocode traceren)