Basis van programmeren (pseudocode traceren)

De volgende for-lus verhoogt de lusvariabele telkens met 5. Wat is de waarde van c nadat de lus is uitgevoerd?

integer: c ← 0
for (i from 10 to 50 step 5)
  c ← c + 1
endfor
  1. A8
  2. B9
  3. C10
Antwoord en toelichting tonen

Antwoord: B. 9

i neemt de waarden 10, 15, 20, 25, 30, 35, 40, 45 en 50 aan; de volgende waarde 55 is groter dan de eindwaarde 50, dus de lus eindigt. (50 − 10) ÷ 5 = 8 is het aantal intervallen ertussen, en het aantal waarden met beide uiteinden, 10 en 50, erbij is 8 + 1 = 9, dus de body wordt 9 keer uitgevoerd. Net als bij het hekpalenprobleem leidt het verwarren van het aantal intervallen met het aantal punten tot een off-by-one-fout.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van programmeren (pseudocode traceren)

  1. In het volgende programma evalueert and de rechterkant niet als de linkerkant false is (kortsluitevaluatie). cnt is een globale variabele. Wat is de waarde van cnt nadat het programma is uitgevoerd?
  2. Het volgende programma zoekt de waarde x in de array a met n elementen en zet de index waar die wordt gevonden in i. Array-indexen beginnen bij 1. and en or evalueren hun rechterkant niet als de linkerkant alleen het resultaat al bepaalt. Welke voorwaarde op de plaats van 【a】 leest a[n + 1], buiten de array, als x niet in a voorkomt?
  3. Reële waarden worden voorgesteld in IEEE 754 dubbele precisie (binary64), en elke som wordt afgerond naar de dichtstbijzijnde voorstelbare waarde. Wat is de waarde van c nadat het volgende programma is uitgevoerd?
  4. De klasse Counter geeft elke instantie een eigen variabele count van het type integer (een lidvariabele, 0 bij het aanmaken), en haar methode inc() telt 1 op bij de eigen count. Wat is de waarde van x nadat het volgende programma is uitgevoerd?
  5. De klasse Counter geeft elke instantie een eigen variabele count van het type integer (een lidvariabele, 0 bij het aanmaken), en haar methode inc() telt 1 op bij de eigen count. Een variabele van het type Counter bevat een verwijzing naar een instantie, niet de instantie zelf. Wat is de waarde van x nadat het volgende programma is uitgevoerd?