ich habe folgende Aufgabenstellung mit einem Kumpel bearbeitet und wir Laien kommen echt nicht weiter:
Die Zahlen 1, 2, 3, ... können als ein Wort geschrieben werden, also eins, zwei, drei, ... und werden als "Einwortzahlen" bezeichnet (dieses Wort ist frei erfunden).
Nicht-Einwortzahlen sind Zahlen, die nur Wortbestandteile haben, die eine Einwortzahl sind oder das Wort "und" enthalten, z.B. 13 = dreizehn = "drei" + "zehn" oder 21 = einundzwanzig = "ein" + "und" + "zwanzig".
Erstellen Sie folgende Funktionen:
"def codieren" übernimmt als Parameter eine (1) Einwortzahl (=String) und liefert als Ergbnis die Zahl als Integerwert zurück.
"def decodieren" übernimmt als Parameter eine (1) Integerzahl und liefert als Ergbnis die Zahl als Einwortzahl (=String) zurück.
"def PlusMinus" übernimmer als Parameter einen (1) String und liefter als Ergbnis einen String mit einem Einwortzahl zurück. Folgendes gilt es zu berücksichtigen:
Der Eingabestring besteht aus mindestens einem Einwortzahl.
Wenn der Eingabestring aus mehr als einem Einwortzahl besteht, sind diese durch die Wörter "plus" oder "minus" getrennt. Diese repräsentieren Addition und Subtraktion.
Der Ausgabestring besteht aus exakt einer Einwortzahl, welche den Eingabestring oder das Ergbnis der Berechnung des Eingabestrings widerspiegelt.
Es müssen nur Berechnungen berücksichtig werden, welche ausschließlich aus Einwortzahlen in der Eingabe und Ausgabe bestehen.
Umlaute müssen in Ein- und Ausgabe vermieden werden, also immer fuenf, etc. schreiben und erwarten.
Verwenden Sie die beiden Eingangs definierten Funktionen in dieser Funktion, damit der Code übersichtlich bleibt.
defcodieren und defdecodieren waren kein Hindernis, allerdings scheitern wir nach mehreren Stunden Rumprobieren an PlusMinus
Hat da jemand einen Tipp?
LG 1220
