Basis van programmeren (pseudocode traceren)

Array-indexen beginnen bij 1, en + plakt strings aan elkaar. Wat is de waarde van r nadat het volgende programma is uitgevoerd?

string array: s ← {"S", "T", "O", "P"}
string: r ← ""
for (i from 1 to length(s) step 1)
  r ← s[i] + r
endfor
  1. APOTS
  2. BPOT
  3. CSTOP
Antwoord en toelichting tonen

Antwoord: A. POTS

r ← s[i] + r zet elk nieuw teken vooraan (links) in r. r wordt achtereenvolgens „S”, „TS”, „OTS” en „POTS”, dus de tekens komen in omgekeerde volgorde te staan. Met r ← r + s[i] zou elk teken achteraan worden toegevoegd, wat „STOP” geeft, hetzelfde als het origineel.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van programmeren (pseudocode traceren)

  1. De volgende functie isPal geeft true terug als de tekens in de stringarray s van voren en van achteren gelezen hetzelfde zijn (een palindroom). Array-indexen beginnen bij 1. Wat moet er op de plaats van 【a】 in het programma staan?
  2. ÷ 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)?
  3. ÷ 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 toBin wordt aangeroepen als toBin(12)?
  4. Het volgende programma trekt de twee gehele getallen a en b van elkaar af tot ze gelijk zijn. Wat is de waarde van k nadat het is uitgevoerd?
  5. De volgende functie isLeap geeft true terug als het jaar y een schrikkeljaar is. and wordt vóór or geëvalueerd. Voor welke y geeft isLeap(y) true terug?