Dechiffrieren eines Textes mit Cäsars Methode?

Mein bisheriger Code - (Computer, Freizeit, Sprache)

2 Antworten

Mich wundert eher, dass überhaupt eine ausgegeben wird... (Evtl. macht ArrayList.toString() in etwa das gleiche wie ArrayList.get(0).toString()...)

Aber zur eigentlichen Antwort:

Versuch mal die Zeile

System.out.println(cipher(text));

durch das zu ersetzen:

for(String encryption : cipher(text)){
System.out.println(encryption);
}

P.S.: Allerdings hat dein Code noch ein par andere Probleme... Versuch mal als Eingabetext etwas wie "Oh, oh... Das könnte schiefgehen...". Evtl. kommst ja selbst dahinter, wo das Problem dabei liegt. ;)

Staryj 
Fragesteller
 08.12.2017, 01:17

Hat leider nicht funktioniert... Trotzdem danke :)

Mir ist bewusst, dass das Programm Macken hat und ich noch alle Zeichen die nicht Buchstaben sind rausfiltern muss.

0
Staryj 
Fragesteller
 08.12.2017, 01:20
@Staryj

Es werden, wie vorher, alle Elemente der List ausgegeben, aber nicht alle Dechiffrierungsvarianten... ich bekomme für den Beispieltext 25 mal BcD  raus...

0

Habe den Fehler gefunden und erfolgreich beseitigt... xD
Eine banale Sache, ich habe vergessen die Variable "i", nach der inneren Schleife, zurückzusetzen.

Isendrak  08.12.2017, 12:12

Okay, das hatte ich, als ich meine Antwort geschrieben habe ebenfalls übersehen... %D

Könntest aber an der Stelle statt eine while-Schleife auch einfach ne for-Schleife benutzen:

for(int i = 0; i < text.length(); ++i){
//TODO: Buchstabenverschiebung hier implementieren.
}
1