Grundlagen der Programmierung (Pseudocode nachverfolgen)
÷ ist die Division; wird das Ergebnis einer ganzzahligen Variablen (auch einem Funktionsargument) zugewiesen, wird der Nachkommaanteil abgeschnitten. Was gibt die folgende Funktion toBin beim Aufruf toBin(12) zurück?
○integer: toBin(integer: x)
integer: y ← 0, p ← 1
while (x > 0)
y ← y + (x mod 2) × p
p ← p × 10
x ← x ÷ 2
endwhile
return y
- A11
- B100
- C1100
Antwort und Erläuterung anzeigen
Antwort: C. 1100
x mod 2 ist die Einerstelle im Binärsystem, und x ← x ÷ 2 verschiebt die Binärzahl um eine Stelle nach rechts. x ändert sich zu 12, 6, 3, 1 und 0, und von der niedrigsten Stelle an entstehen die Ziffern 0, 0, 1, 1. p wächst jedes Mal um den Faktor 10, also 1, 10, 100, 1000, sodass y = 0 × 1 + 0 × 10 + 1 × 100 + 1 × 1000 = 1100 gilt. Das Ergebnis schreibt die Binärziffern von 12 als Dezimalziffern einer ganzen Zahl.
Weiter: 9 weitere Fragen zu Grundlagen der Programmierung (Pseudocode nachverfolgen)