Skip to content
Snippets Groups Projects
Commit 6859fbe9 authored by Flori N's avatar Flori N
Browse files

Merge branch 'master' of https://www.gitrepo.de/alfatrainingkurse/java/enigma

 Conflicts:
	src/main/java/projekt/enigma/model/Walze.java
parents 59e0c1d3 499cd02e
No related branches found
No related tags found
No related merge requests found
doc/Klassendiagram.jpg

144 KiB

......@@ -17,7 +17,6 @@ public class App extends Application {
* TODO Dokumentieren
*/
private static Scene scene;
private Codierer c;
/**
* TODO Dokumentieren
......
This diff is collapsed.
......@@ -390,8 +390,8 @@ public class Codierer {
private String decodiere(String codierteNachricht, int tag) {
// Hardware reseten und Tageseinstellungen aus dem Codebuch laden
this.initialisiereHardware();
this.codebuch.fetchTagesschluessel(tag);
this.codebuch.fetchTagesschluessel(tag);
this.initialisiereHardware();
// Nachricht splitten mit whitespace als delimiter
String[] nachricht = codierteNachricht.split(" ");
......
......@@ -18,12 +18,12 @@ public class Walze {
//region Variablen
/**
* Das String Array aller bekannter aktueller Walzen
* Das String Array aller bekannter aktuellen Walzen
*/
String[] walzen;
private String[] walzen;
/**
* alphabet : String : dass die Buchstaben des Alphabets enthaelt
* alphabet : String dass die Buchstaben des Alphabets enthaelt
*/
private String alphabet;
......@@ -33,12 +33,12 @@ public class Walze {
private char ringstellung;
/**
* walzenNr : int : Bestimmt, welche Walze genutzt wird
* walzennr : int : Bestimmt, welche Walze genutzt wird
*/
private int walzenNr;
/**
* turns : int : Die Anzahl der getätigten Walzen Drehungen
* Die Anzahl der getätigten Walzen Drehungen
*/
private int turns;
//endregion
......@@ -46,12 +46,12 @@ public class Walze {
//region Konstruktor
/**
* Ueberschriebener Konstruktor, der die Eingangsparameter der Walze mit gibt
* und die Walzen initialisiert.
*
* @param walzenNr : int : Nummer der gewaehlten Walze
* @param ringstellung : int : Einstellung des Umsprungpunktes
*/
public Walze(int walzenNr, int ringstellung) {
this.walzen = new String[5];
this.walzen[0] = "EKMFLGDQVZNTOWYHXUSPAIBRCJ";
this.walzen[1] = "AJDKSIRUXBLHWTMCQGZNPYFVOE";
......@@ -77,6 +77,7 @@ public class Walze {
* TODO: Doku
*/
public boolean dreheWalze(int richtung) {
boolean checkRing = false;
if (richtung == -1 || richtung == 1) {
......@@ -112,12 +113,7 @@ public class Walze {
* @return buchstabe : char : decodierter Buchstabe
*/
public char codiere2(char buchstabe) {
int zwischensumme = this.fetchWalze().indexOf(buchstabe) - this.turns;
if (zwischensumme < 0) {
zwischensumme = this.fetchWalze().indexOf(buchstabe) - this.turns + 26;
}
return this.alphabet.charAt(zwischensumme % 26);
return this.alphabet.charAt((this.fetchWalze().indexOf(buchstabe) - this.turns + 260) % 26);
}
/**
......@@ -125,14 +121,18 @@ public class Walze {
*
* @return walze : Character[] : gibt die gewaehlte Walze zurueck
*/
private String fetchWalze() { return walzen[walzenNr]; }
private String fetchWalze() {
return walzen[walzenNr];
}
//endregion
//region Setter
/**
* * TODO: Funktionsname hat sich geändert
* Ermittelt den Wert, wie oft die Walze gedreht werden muss, um die Eingangswalzenstellung
* zu erreichen.
* Gibt die Grundeinstellung der Walze ein. Nur Buchstaben von A - Z sind zugelassen.
* Buchstaben werden automatisch in Grossbuchstaben umgewandelt.
* Ist die Grundeinstellung nicht 'A', wird die Methode dreheWalze() aufgerufen.
*
* @param buchstabe : Character : Einstellung der Walze
*/
......@@ -175,7 +175,7 @@ public class Walze {
/**
* Gibt den Character zurueck, der aktuell in der Walze eingestellt ist
*
* @return Character am Index 0 des (verschobenen) Alphabets
* @return Character am Index 0 des (verschobenen) Alphabets zurueck
*/
public Character getPosition() {
return this.alphabet.charAt(turns % 26);
......
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment