MINT üben

Zeichenketten verarbeiten

Zwei Abituraufgaben zu Zeichenketten — mit Hinweisen und Erwartungshorizont.

Dein Fortschritt:
0 / 0 Aufgaben
1

Benutzernamen für das Schulnetz

AFB I–II

Das Schulnetz erzeugt Benutzernamen automatisch aus den ersten drei Buchstaben des Nachnamens, den ersten zwei Buchstaben des Vornamens und den letzten zwei Ziffern des Geburtsjahrs; das Jahr liegt als Zeichenkette vor. Aus Lina Schneider, geboren 2009, wird so „SchLi09“. Ist ein Name bereits vergeben, wird eine Zahl angehängt: zuerst 2, dann 3 usw., bis ein freier Name gefunden ist.

Im Pseudocode liefert teil(s, a, b) die Teilzeichenkette von Position a bis vor Position b; die Operation vergeben(name) liefert wahr, wenn der Name schon existiert.

  1. Wenden Sie die Regel auf Tom Wagner (2008) und Marie Hoffmann (2010) an. Dabei seien „WagTo08“ und „WagTo082“ bereits vergeben.
  2. Stellen Sie den Algorithmus zur Erzeugung eines freien Benutzernamens als Struktogramm dar.
  3. Untersuchen Sie, was bei einem Nachnamen mit weniger als drei Buchstaben wie „Wu“ in Java und in Python geschieht, und geben Sie eine Korrektur an.

Hinweise

Hinweis zu Aufgabe a)
Zerlege jeden Namen einzeln und zähle die Positionen ab 0. Beim Jahr brauchst du die Positionen 2 und 3.
Hinweis zu Aufgabe b)
Welche Schritte stehen einmal am Anfang, welcher Schritt wird wiederholt — und unter welcher Bedingung?
Hinweis zu Aufgabe c)
Vergleiche "Wu".substring(0, 3) in Java mit "Wu"[0:3] in Python.