1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Verschlüsselungsprogramm - fehler

  • lux
  • 2. Mai 2007 um 20:17
  • Unerledigt
  • lux
    2
    lux
    Mitglied
    Punkte
    15
    Beiträge
    2
    • 2. Mai 2007 um 20:17
    • #1

    Dies soll der Quellcode für ein sehr simples Verschlüsselungsverfahren sein.

    Zunächst wird mit einer einfachen switch-case Verzweigung das Alphabet umgekehrt, sodass A=Z, B=Y,C=X usw sein soll.

    Danach soll der verschlüsselte String noch einmal verschlüsselt werden.
    Ich dachte mir das ganze so, dass die ascii-zeichen in integer werten ausgegeben werden, sodass an der Stelle eines A eine 65 erscheint.

    Einschränkungen sind: nur Großbuchstaben, keine Sonderzeichen


    Leider bin ich Anfänger und weiß absolut nicht, wo der Fehler im Programm sein könnte.

    Ich wäre sehr dankbar wenn mir jemand von euch weiterhelfen könnte.

    Mfg, lux



    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    /**
    *
    * Beschreibung
    *
    * @version 1.0 vom 5/2/2007
    * @author
    */
    public class numwert extends JFrame {
    // Anfang Variablen
    private JTextField jTextField1 = new JTextField();
    private JButton jButton1 = new JButton();
    private JTextField jTextField2 = new JTextField();
    private JButton jButton2 = new JButton();
    private JTextField jTextField3 = new JTextField();
    // Ende Variablen
    public numwert(String title) {
    // Frame-Initialisierung
    super(title);
    addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent evt) { System.exit(0); }
    });
    int frameWidth = 300;
    int frameHeight = 346;
    setSize(frameWidth, frameHeight);
    Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
    int x = (d.width - getSize().width) / 2;
    int y = (d.height - getSize().height) / 2 ;
    setLocation(x, y);
    Container cp = getContentPane();
    cp.setLayout(null);
    // Anfang Komponenten
    jTextField1.setBounds(48, 24, 177, 24);
    jTextField1.setText("Eingabefeld");
    cp.add(jTextField1);
    jButton1.setBounds(72, 72, 129, 25);
    jButton1.setText("verschlüsseln1");
    cp.add(jButton1);
    jButton1.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    jButton1ActionPerformed(evt);
    }
    });
    jTextField2.setBounds(40, 120, 177, 24);
    jTextField2.setText("Ausgabefeld");
    cp.add(jTextField2);
    jButton2.setBounds(72, 168, 129, 25);
    jButton2.setText("verschlüsseln2");
    cp.add(jButton2);
    jButton2.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    jButton2ActionPerformed(evt);
    }
    });
    jTextField3.setBounds(40, 216, 169, 24);
    jTextField3.setText("Ausgabefeld2");
    cp.add(jTextField3);
    // Ende Komponenten
    setResizable(false);
    setVisible(true);
    }
    // Anfang Ereignisprozeduren
    public void jButton1ActionPerformed(ActionEvent evt) {
    string eing=jTextField1.getText();
    string ausg=" ";
    for (int i=0; i<text.length();i++);{
    switch(eing.charAt(i)){

    case 'A'=ausg=ausg+'Z':break;
    case 'B'=ausg=ausg+'Y':break;
    case 'C'=ausg=ausg+'X':break;
    case 'D'=ausg=ausg+'W':break;
    case 'E'=ausg=ausg+'V':break;
    case 'F'=ausg=ausg+'U':break;
    case 'G'=ausg=ausg+'T':break;
    case 'H'=ausg=ausg+'S':break;
    case 'I'=ausg=ausg+'R':break;
    case 'J'=ausg=ausg+'Q':break;
    case 'K'=ausg=ausg+'P':break;
    case 'L'=ausg=ausg+'O':break;
    case 'M'=ausg=ausg+'N':break;
    case 'N'=ausg=ausg+'M':break;
    case 'O'=ausg=ausg+'L':break;
    case 'P'=ausg=ausg+'K':break;
    case 'Q'=ausg=ausg+'J':break;
    case 'R'=ausg=ausg+'I':break;
    case 'S'=ausg=ausg+'H':break;
    case 'T'=ausg=ausg+'G':break;
    case 'U'=ausg=ausg+'F':break;
    case 'V'=ausg=ausg+'E':break;
    case 'W'=ausg=ausg+'D':break;
    case 'X'=ausg=ausg+'C':break;
    case 'Y'=ausg=ausg+'B':break;
    case 'Z'=ausg=ausg+'A':break;
    }
    jTextField2.setText(ausg);
    }
    public void jButton2ActionPerformed(ActionEvent evt) {
    string eing=jTextField1.getText();
    string ausg=" ";

    char[] array = string.toCharArray();
    for(int i=0 ; i<array.length ; ++i)
    {
    System.out.print(" " + (int)array[i]);
    }
    jTextField3.setText(ausg);
    }
    // Ende Ereignisprozeduren

  • Rumpl
    2
    Rumpl
    Mitglied
    Punkte
    15
    Beiträge
    3
    • 3. Mai 2007 um 18:04
    • #2
    Zitat von lux

    [...]

    // Anfang Ereignisprozeduren
    public void jButton1ActionPerformed(ActionEvent evt) {
    string eing=jTextField1.getText();
    string ausg=" ";
    for (int i=0; i<text.length();i++);{
    switch(eing.charAt(i)){

    case 'A'=ausg=ausg+'Z':break;
    [...]
    case 'Z'=ausg=ausg+'A':break;
    }
    jTextField2.setText(ausg);
    }
    [...]

    Alles anzeigen

    Sers,

    in der Methode jButton1ActionPerformed verwendest du zwei Strings die du aber nicht richtig deklarierst (String gehört hier großgeschrieben).
    In der For-Schleife hast du ein Semikolon das da nicht hingehört
    also: for (int i=0; i<text.length();i++);{ ohne das ";" vor der geschwungenen Klammer.

    Ansonsten sieht der switch etwas merkwürdig aus. probier mal statt
    "case 'A'=ausg=ausg+'Z':break;" das:
    "case 'A':ausg = ausg + 'Z';break;"

    Hab das mal eben im Eclipse gestartet mit den Änderungen und es geht im großen und ganzen, du musst halt nach der 2. Verschlüsselung das auch ins 3. Textfeld schreiben und nicht in die Konsole.

    Hoffe etwas geholfen zu haben, viel Spaß noch!

    mfg
    Rumpl

  • lux
    2
    lux
    Mitglied
    Punkte
    15
    Beiträge
    2
    • 6. Mai 2007 um 18:26
    • #3

    Du hast mir sehr geholfen - vielen Dank dafür:)

  • Maximilian Rupp 27. Dezember 2024 um 12:05

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung