Caesar verschlüsselung, problem?

Ich soll für den Informatikunterricht ein Verschlüsselungsprogramm erstellen welches die Caesarverschlüsselung benutzt, jedoch kriege ich für jeden Buchstaben die gleiche ausgabe unzwar so kleine fragezeichen, bitte um hilfe

Mein Programm:

import java.util.Scanner;

public class Caesar {

public static void main (String[] args) {

    Scanner scanner = new Scanner (System.in);

    System.out.println("Zu verschlüsselnden Text eingeben:");

    String text = scanner.nextLine(); 
    // Text eingeben

    int offset = 3;
    // Offset (Verschiebung) wählen

    char [] meinArray = text.toCharArray();
    // den Text in ein Char Array laden

    char [] meinNeuesArray = verschluesseln(offset, meinArray);
    // mit der Methode (siehe unten) "verschluesseln" ein neues 
    // Char Array mit dem verschlüsselten Text erstellen

    System.out.println("So sieht der Text verschlüsselt aus:");
    // verschlüsselten Text wieder ausgeben:

        for (int i = 0; i < meinNeuesArray.length; i++) {

            System.out.print(meinNeuesArray[i]);
        }

    scanner.close();
    }

// hier die Methode zum verschlüsseln
public static char[] verschluesseln(int offset, char[] charArray) {

    char[] cryptArray = new char[charArray.length];
    // ein leeres Char Array erstellen

    for (int i = 0; i < charArray.length; i++) {

                int verschiebung = (charArray[i] + offset)%26;
                // ursprüngliches Zeichen plus Offset modulo 26

                cryptArray[i] = (char) (verschiebung);

    }
    return cryptArray;

}

}

Java, Informatik
Hey, habe ein problem, unzwar soll ich nächste woche in informatik eine Caesar verschlüsselung programmieren, aber es funktioniert aus irgendeinen grund nicht?

import java.util.Scanner;

public class Caesar {

public static void main (String[] args) {

    Scanner scanner = new Scanner (System.in);

    System.out.println("Zu verschlüsselnden Text eingeben:");

    String text = scanner.nextLine(); // Text eingeben

    System.out.println("Um wieviele Stellen soll verschoben werden? (1-26)");

    int offset = scanner.nextInt(); 
    // Offset (Verschiebung) wählen

    if (offset >= 1 && offset <= 25) {

    char [] meinArray = text.toCharArray();
    // den Text in ein Char Array laden

    char [] meinNeuesArray = verschluesseln(offset, meinArray);
    // mit der Methode (siehe unten) "verschluesseln" ein neues 
    // Char Array mit dem verschlüsselten Text erstellen

    // verschlüsselten Text wieder ausgeben:

        System.out.println("\nSo sieht der Text verschlüsselt aus:");

    for (int i = 0; i < meinNeuesArray.length; i++) {

        System.out.print(meinNeuesArray[i]);
    }
        System.out.println("\n");

    scanner.close();
}
    else System.out.println("Die Verschiebung muss zwischen 1 und 127 liegen!");
}

// hier die Methode zum verschlüsseln

public static char[] verschluesseln(int offset, char[] charArray) {

    char[] cryptArray = new char[charArray.length];
    // erstmal ein leeres Char Array erstellen

    for (int i = 0; i < charArray.length; i++) {

                int verschiebung = (charArray[i] + offset)%26;
                // ursprüngliches Zeichen plus Offset modulo 128

                cryptArray[i] = (char) (verschiebung);

    }
    return cryptArray;

}

}

Java, Informatik
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.