Seid gegrüßt,
ich versuche gerade ein Programm zu schreiben, welches durch zyklisches Verschieben des Standardalphabetes eine Nachricht in eine verschlüsselte Nachricht umwandelt bzw. kodiert. Das bedeutet ist der Schlüssel k=2 angegeben wir daus einem "a" ein "c" usw...
Das Programm soll mit dem Schlüssel k=7 arbeiten und ndie verschlüsselte Nachricht "dpualyzvuuludukl" decodieren.
Mein Lösungsansatz sieht bisher wie folgt aus:
Ich habe die Klasse algoj.jar importiert für die Eingabe. Der Nutzer muss anfangs zuerst das Alphabet und dann das verschlüsselte Wort eingeben, danach folgt die Dekodierung. Leider habe ich es nicht hinbekommen ein Feld zu erstellen welches das Alphabet beinhaltet. Zudem wird die Eingabe nicht beendet, ich weiss nicht wo der Fehler liegt.
Man muss sich natürlich erst einmal in das Programm eindenken, aber vielleicht kann mir jemand Verbesserungsvorschläge o.ä. geben.
Bin gespannt auf eure Antworten. Danke schonmal im vorraus.
Grüße Websen
ich versuche gerade ein Programm zu schreiben, welches durch zyklisches Verschieben des Standardalphabetes eine Nachricht in eine verschlüsselte Nachricht umwandelt bzw. kodiert. Das bedeutet ist der Schlüssel k=2 angegeben wir daus einem "a" ein "c" usw...
Das Programm soll mit dem Schlüssel k=7 arbeiten und ndie verschlüsselte Nachricht "dpualyzvuuludukl" decodieren.
Mein Lösungsansatz sieht bisher wie folgt aus:
Java:
import algoj.IOUtils;
public class Aufgabe_4 {
/**
* @param args
*/
public static void main(String[] args) {
char[] message=new char[26];
char[] secret=new char[17];
int schluessel=7,komplement=19,i=0,k=0;
System.out.println("Bitte geben Sie alle 26 Buchstaben des Alphabets ein.");
while (i<26){
message[i]=IOUtils.readChar();
i=i+1;
}
i=0;
System.out.println("Bitte geben Sie den verschlüsselten Text ein.");
while (i<17){
secret[i]=IOUtils.readChar();
}
i=0;
while (i<17){
while (k<26){
if (secret[i]==message[k]){
if(k>=7){
secret[i]=message[k-schluessel];
k=26;
}
else
secret[i]=message[k+komplement];
}
else
k=k+1;
}
k=0;
i=i+1;
}
i=0;
while (i<17);{
System.out.println(secret[i]);
i=i+1;
}
}}
Ich habe die Klasse algoj.jar importiert für die Eingabe. Der Nutzer muss anfangs zuerst das Alphabet und dann das verschlüsselte Wort eingeben, danach folgt die Dekodierung. Leider habe ich es nicht hinbekommen ein Feld zu erstellen welches das Alphabet beinhaltet. Zudem wird die Eingabe nicht beendet, ich weiss nicht wo der Fehler liegt.
Man muss sich natürlich erst einmal in das Programm eindenken, aber vielleicht kann mir jemand Verbesserungsvorschläge o.ä. geben.
Bin gespannt auf eure Antworten. Danke schonmal im vorraus.
Grüße Websen