DerEchteChickenWing
Neues Mitglied
Implementieren Sie eine statische-public Methode mit dem Namen "encodeCaesar" in der Klasse "Functionality.java", welche einen Text mithilfe der Cäsar-Veschlüsselung chiffriert.
Signatur: encodeCaesar(String s, int val) : String
Die Methode bekommt als Eingabeparameter einen String-Wert und einen Integer-Wert. Die Buchstaben (Character) aus dem String-Wert sollen um den Integer-Wert verschoben werden.
Der einfachheitshalber können Sie davon ausgehen, dass nur Buchstaben und keine Leer-, Ziffer- oder Sonderzeichen vorhanden sind.
Der String-Wert soll in Kleinbuchstaben umgewandelt werden, bevor die Verschlüsselung durchgeführt wird.
Die Methode soll wieder einen String zurückgeben, bei dem jeder Buchstabe entsprechend des angebenen Integer-Wertes verschoben wurde.
Beispiel: encodeCaesar("Ac",3) gibt "df" zurück.
Wenn der mitgegebene Integer-Wert kleiner als 0 oder größer als 26 ist, soll ein leerer String zurückgegeben werden.
Verwenden Sie in Ihrer Lösung String-Manipulationen und Character-Arrays (char[]).
Die Verwendung von externen Bibliotheken oder anderen Inhalten, die noch nicht in dieser Veranstaltung behandelt wurden, sind untersagt.
Hinweis:
Der größte ASCII-Wert eines Kleinbuchstabens ist 'z' = 122. Wenn man durch Verschiebung über diesen Wert kommt, fängt man von vorne beim 'a' wieder an.
Mein Code bisjetzt:
public static String caesar(String s, int val) {
char[] newString = s.toCharArray();
for(int i = 0; i < s.length(); i++){
int newChar = newString+val;
while(newChar > 65+26) // 65 = A, 26 = number of letters in the alphabet
newChar -= 26;
newString = (char) (newChar);
Danach komme ich nicht weiter
Signatur: encodeCaesar(String s, int val) : String
Die Methode bekommt als Eingabeparameter einen String-Wert und einen Integer-Wert. Die Buchstaben (Character) aus dem String-Wert sollen um den Integer-Wert verschoben werden.
Der einfachheitshalber können Sie davon ausgehen, dass nur Buchstaben und keine Leer-, Ziffer- oder Sonderzeichen vorhanden sind.
Der String-Wert soll in Kleinbuchstaben umgewandelt werden, bevor die Verschlüsselung durchgeführt wird.
Die Methode soll wieder einen String zurückgeben, bei dem jeder Buchstabe entsprechend des angebenen Integer-Wertes verschoben wurde.
Beispiel: encodeCaesar("Ac",3) gibt "df" zurück.
Wenn der mitgegebene Integer-Wert kleiner als 0 oder größer als 26 ist, soll ein leerer String zurückgegeben werden.
Verwenden Sie in Ihrer Lösung String-Manipulationen und Character-Arrays (char[]).
Die Verwendung von externen Bibliotheken oder anderen Inhalten, die noch nicht in dieser Veranstaltung behandelt wurden, sind untersagt.
Hinweis:
Der größte ASCII-Wert eines Kleinbuchstabens ist 'z' = 122. Wenn man durch Verschiebung über diesen Wert kommt, fängt man von vorne beim 'a' wieder an.
Mein Code bisjetzt:
public static String caesar(String s, int val) {
char[] newString = s.toCharArray();
for(int i = 0; i < s.length(); i++){
int newChar = newString+val;
while(newChar > 65+26) // 65 = A, 26 = number of letters in the alphabet
newChar -= 26;
newString = (char) (newChar);
Danach komme ich nicht weiter
Zuletzt bearbeitet von einem Moderator: