Hallo,
ich schreibe hier zum ersten Mal, da ich so verzweifelt bin und keine andere Möglichkeit mehr habe.
Ich habe eine Aufgabe die ich bis Dienstag fertig machen muss und ich befasse mich schon seit Wochen damit, komme aber zu keiner richtigen Lösung.
Hier die Aufgabenstellung:
Das Ziel der Aufgabe ist es, einen Text, dessen einzelne Wörter als String-Array gegeben sind, in Blocksatz auszugeben. Die beschriebenen Funktionen sollen sich in einer Klasse Blocksatz befinden.
a) Programmieren Sie eine Funktion
static void ausgabeZeile (String [] woerter , int breite)
die die Wörter im Array woerter als eine Zeile der Breite breite nach System.out ausgibt, getrennt durch ein oder mehrere Leerzeichen als Wortzwischenraum. ausgabeZeile ändert das Array woerter dabei nicht.
Dabei gilt: • woerter enthält keine Null-Referenzen.
• woerter enthält mindestens zwei Wörter.
• Zu Beginn oder am Ende der Ausgabe sollen keine Leerzeichen sein.
• Um auf die erforderliche Breite zu kommen, kann es nötig sein, die Wortzwischenräume zu vergrößern. Die Länge der Wortzwischenräume soll sich untereinander um höchstens eins unterscheiden. Längere Zwischenräume dürfen nicht auf kürzere folgen.
• Die Wörter sind so gewählt, dass die Ausgabe mit der geforderten Breite und mindestens einem Leerzeichen zwischen zwei Wörtern möglich ist (muss nicht überprüft werden). Beispiele:
Array woerter Ausgabe von ausgabeZeile(woerter, 9)
{"abc", "def"} abc def
{"ab", "cd", "ef"} ab cd ef
{"ab", "c", "d", "e"} ab c d e
Ich weiß, dass ich Modulo brauche und habe auch bestimmte Ansätze komme aber leider nie zur richtigen Lösung, wäre nett wenn jemand mir weiterhelfen kann.
ich meine damit wie würdet ihr da ran gehen, was hättet ihr für ein Datentyp gewählt und würdet ihr auch mit modulo arbeiten?
ich schreibe hier zum ersten Mal, da ich so verzweifelt bin und keine andere Möglichkeit mehr habe.
Ich habe eine Aufgabe die ich bis Dienstag fertig machen muss und ich befasse mich schon seit Wochen damit, komme aber zu keiner richtigen Lösung.
Hier die Aufgabenstellung:
Das Ziel der Aufgabe ist es, einen Text, dessen einzelne Wörter als String-Array gegeben sind, in Blocksatz auszugeben. Die beschriebenen Funktionen sollen sich in einer Klasse Blocksatz befinden.
a) Programmieren Sie eine Funktion
static void ausgabeZeile (String [] woerter , int breite)
die die Wörter im Array woerter als eine Zeile der Breite breite nach System.out ausgibt, getrennt durch ein oder mehrere Leerzeichen als Wortzwischenraum. ausgabeZeile ändert das Array woerter dabei nicht.
Dabei gilt: • woerter enthält keine Null-Referenzen.
• woerter enthält mindestens zwei Wörter.
• Zu Beginn oder am Ende der Ausgabe sollen keine Leerzeichen sein.
• Um auf die erforderliche Breite zu kommen, kann es nötig sein, die Wortzwischenräume zu vergrößern. Die Länge der Wortzwischenräume soll sich untereinander um höchstens eins unterscheiden. Längere Zwischenräume dürfen nicht auf kürzere folgen.
• Die Wörter sind so gewählt, dass die Ausgabe mit der geforderten Breite und mindestens einem Leerzeichen zwischen zwei Wörtern möglich ist (muss nicht überprüft werden). Beispiele:
Array woerter Ausgabe von ausgabeZeile(woerter, 9)
{"abc", "def"} abc def
{"ab", "cd", "ef"} ab cd ef
{"ab", "c", "d", "e"} ab c d e
Ich weiß, dass ich Modulo brauche und habe auch bestimmte Ansätze komme aber leider nie zur richtigen Lösung, wäre nett wenn jemand mir weiterhelfen kann.
ich meine damit wie würdet ihr da ran gehen, was hättet ihr für ein Datentyp gewählt und würdet ihr auch mit modulo arbeiten?
Zuletzt bearbeitet: