Caesar Chiffre

Status
Nicht offen für weitere Antworten.

Dissmaster

Mitglied
Hallo,

habe hier einen Caesar Chiffre Code. Habe aber Probleme mit dem Code.
Code:
public class Caesar {

    public String verschluessele(int key, String wort) {
    char abc[] = {
        'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',
        'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w',
        'x', 'y', 'z'}; //Array mit dem Alphabet

    String ergebnis = ""; //Ergebnis initialisieren

    int a,k;
    for (int i = 0; i < wort.length(); i++) { //Wort durchlaufen
      char c = Character.toLowerCase(wort.charAt(i)); 
      for (a = 0; a < abc.length && c != abc[a]; a++);
      if(a >= abc.length) {
        ergebnis += c;
      } 
    else {
        k = ( (a + key) % 26);
        ergebnis += abc[k];       
}
    }

    return (ergebnis);
  }
   public String entschluessele(int key, String wort) {
    return this.verschluessele(-key, wort);
  }
}
Und zwar ist mir nicht genau klar wofür ich bei der 2. for Schleife das c != abc[a]; a++ brauche. Und bei der 2. Methode entschluessele, bekomme ich eine Fehlermeldung Index Out of Bounds, da der Key negativ ist, was kann ich dagegen tun???
 

Marco13

Top Contributor
Ohne jetzt besserwisserisch wirken zu wollen: Schreib' das ganze doch mal selbst (denn ich gehe davon aus, das genau das deine Aufgabe ist). Es noch 100 andere Möglichkeiten, wie man das implementieren kann, und bei den meisten davon wird kein "c != abc[a]" vorkommen...
 

Steev

Bekanntes Mitglied
Auch wenn er es selber machen soll:

kleiner Hinweis:
(char)(aChar+chifre)

Jetzt musst du nur noch Sonderzeichen abfangen, gucken was bei 'z' passiert, kleine und grosse Buchstaben abgrenzen.

noch ein Hinweis:
stell dir das ABC auf einer Scheibe (rund) vor...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Feststellen, dass Wert zu groß; Caesar Chiffre Java Basics - Anfänger-Themen 3
T Fehler in Caesar-Chiffre Java Basics - Anfänger-Themen 7
M Caesar Chiffre Java Basics - Anfänger-Themen 3
K Caesar-chiffre Java Basics - Anfänger-Themen 5
G Caesar-Chiffre Java Basics - Anfänger-Themen 7
N Erste Schritte JFrame Caesar-Verschlüsselung Java Basics - Anfänger-Themen 23
Y Caesar Verschlüsselung Fehler Java Basics - Anfänger-Themen 4
N Caesar Entschlüsselungsprogramm Java Basics - Anfänger-Themen 10
N Caesar Verschlüsselung Java Basics - Anfänger-Themen 2
J Erste Schritte Caesar - Code Verbesserung Java Basics - Anfänger-Themen 2
K Caesar Verschlüsselng Java Basics - Anfänger-Themen 18
S Caesar Verschlüsselung Start Hilfe Java Basics - Anfänger-Themen 4
H Caesar-Verschlüsselung - Was stimmt nicht? Java Basics - Anfänger-Themen 6
J Caesar Ciphers funktioniert nicht Java Basics - Anfänger-Themen 3
S Caesar-Verschlüsselung Problem/Frage Java Basics - Anfänger-Themen 4
B Textentschlüsselung nach Caesar Java Basics - Anfänger-Themen 3
M Caesar Encrypt+Decrypt Java Basics - Anfänger-Themen 3
F Nachrichtenverschlüsselung nach Caesar: Java Basics - Anfänger-Themen 4
C weniger code für: caesar + reverse? Java Basics - Anfänger-Themen 8
P Caesar Ver- und Entschlüsselung Java Basics - Anfänger-Themen 1
L Caesar-Verschlüsselung programmieren Java Basics - Anfänger-Themen 12
M Entschlüsselungsproblem (Caesar) Java Basics - Anfänger-Themen 3
T Problem mit Lehrzeichen und String bei einfacher Chiffre Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben