Java :: Aufgabe #34 :: Lösung #3
6 Lösungen

#34
Mit Caesar Chiffre ent- und verschlüsseln
Anfänger - Java
von Dome
- 03.01.2013 um 01:30 Uhr
Schreiben Sie ein Programm, indem Sie mit Hilfe der Caesar Chiffre einen beliebigen Text ent- und verschlüsseln können. Zuvor muss der Text und die Anzahl der Verschiebung angegeben werden. Groß- und Kleinschreibung muss nicht beachtet werden.
Konsolenausgabe:
Geben Sie den Text ein: Beispielwort
Um wie viele Stellen soll verschoben werden: 1
Ergebnis: Cfjtqjfmxpsu
#3

von Bufkin (1410 Punkte)
- 15.09.2017 um 08:29 Uhr
Version 2
- Entschlüsselung mit Großbuchstaben eingebaut
Java-Code
- Entschlüsselung mit Großbuchstaben eingebaut

import java.util.ArrayList; import java.lang.Character; class caesar { final static String alphabetBeides = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; final static String alphabetGross = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; final static String alphabetKlein = "abcdefghijklmnopqrstuvwxyz"; static String alphabet = ""; public static String verschlüsseln(int verschiebung, String text) { int index = 0; String ausgabe = ""; for(int i = 0; i < text.length(); i++) { index = alphabetBeides.indexOf(text.charAt(i)); ausgabe = ausgabe.concat(String.valueOf(alphabetBeides.charAt(index + verschiebung))); } return ausgabe; } public static String entschlüsseln(String text) { String ausgabe = ""; int index = 0; int verschiebung = 0; ArrayList<String> ausgabeArray = new ArrayList<String>(); for(int i = 0; i < 26; i++) { for(int j = 0; j < text.length(); j++) { if(text.charAt(j) == Character.toLowerCase(text.charAt(j))) { alphabet = alphabetKlein; index = alphabetKlein.indexOf(text.charAt(j)); } else { alphabet = alphabetGross; index = alphabetGross.indexOf(text.charAt(j)); } if((index + i) > 25) { verschiebung = index + i - 26; } else { verschiebung = index + i; } ausgabe = ausgabe.concat(String.valueOf(alphabet.charAt(verschiebung))); } ausgabeArray.add(ausgabe); System.out.println(i + ": " + ausgabeArray.get(i)); ausgabe = ""; } return ausgabeArray.toString(); } public static void main (String[] args) throws java.lang.Exception { String StrVerschlüsseln = "Beispielwort"; String StrEntschlüsseln = "Cfjtqjfmxpsu"; System.out.println(StrVerschlüsseln + " verschlüsselt ist:\n" + verschlüsseln(1, StrVerschlüsseln) + "\n"); System.out.println("Alle möglichen Verschiebungen von " + StrEntschlüsseln + ":\n"); entschlüsseln(StrEntschlüsseln); } }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1