Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
E
Enigma
Manage
Activity
Members
Labels
Plan
Issues
0
Issue boards
Milestones
Wiki
Code
Merge requests
0
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Jan Schubert
Enigma
Commits
b433415f
Commit
b433415f
authored
5 years ago
by
Michael
Browse files
Options
Downloads
Patches
Plain Diff
Reflektor-Klasse hinzugefügt
parent
c6f059bf
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/main/java/Enigma/model/Reflektor.java
+83
-0
83 additions, 0 deletions
src/main/java/Enigma/model/Reflektor.java
src/main/java/Enigma/model/Walze.java
+11
-10
11 additions, 10 deletions
src/main/java/Enigma/model/Walze.java
with
94 additions
and
10 deletions
src/main/java/Enigma/model/Reflektor.java
0 → 100644
+
83
−
0
View file @
b433415f
package
Enigma.model
;
/**
* Klasse Reflektor
*
* Der Reflektor nimmt einen Buchstaben der Klasse Walze entgegen und und kodiert diesen.
* Der kodierte Buchstabe wird an die Klasse Walze wieder zurückgegeben.
*
* Prinzipiell verhält sich die Klasse Refelktor wie die Klasse Walze, außer das sie sich
* nach Betätigung einer Taste nicht dreht (starr montiert) und sie gibt keine Signale
* an andere Walzen zum drehen.
*/
public
class
Reflektor
{
/**
* Konstanten und Variablen der Klasse Reflektor
*
* WALZE_ALPHABET : konstanter Char-Array mit den Werten des Alphabeths (26 Werte)
* WALZE_REFLEKTOR : konstanter Char-Array mit den Werten des Reflektors (26 Werte)
* reflektorBuchstabeRein : Character mit dem an die Klasse übergebenen Character
* reflektorBuchstabeRaus : Character nach der Codierung in der Klasse Reflektor
* iPositionReflektor : Integer mit der Positionsnummer des Characters im Array
*/
private
final
Character
[]
WALZE_ALPHABET
=
{
'A'
,
'B'
,
'C'
,
'D'
,
'E'
,
'F'
,
'G'
,
'H'
,
'I'
,
'J'
,
'K'
,
'L'
,
'M'
,
'N'
,
'O'
,
'P'
,
'Q'
,
'R'
,
'S'
,
'T'
,
'U'
,
'V'
,
'W'
,
'X'
,
'Y'
,
'Z'
};
private
final
Character
[]
WALZE_REFLEKTOR
=
{
'E'
,
'J'
,
'M'
,
'Z'
,
'A'
,
'L'
,
'Y'
,
'X'
,
'V'
,
'B'
,
'W'
,
'F'
,
'C'
,
'R'
,
'Q'
,
'U'
,
'O'
,
'N'
,
'T'
,
'S'
,
'P'
,
'I'
,
'K'
,
'H'
,
'G'
,
'D'
};
private
Character
reflektorBuchstabeRein
;
private
Character
reflektorBuchstabeRaus
;
private
int
iPositionReflektor
;
/**
* Funktion Codiere
*
* Durchsucht das konstante Char-Array WALZE_ALPHABET nach der Position eines bestimmten
* Buchstabens und gibt den Character an der entsprechenden Position im konstanten
* Char-Array WALZE_REFLEKTOR zurück.
*
* @return reflektorBuchstabeRaus: Character: Der kodierte Buchstabe aus dem Reflektor
*/
public
char
codiere
(){
int
index
=
0
;
/*Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze*/
for
(
index
=
0
;
index
<
WALZE_ALPHABET
.
length
;
index
++)
{
if
(
getReflektorBuchstabeRein
().
equals
(
WALZE_ALPHABET
[
index
]))
{
iPositionReflektor
=
index
;
break
;
}
}
/*Im Char-Array WALZE_REFLEKTOR wird der Character an der Position iPositionReflektor ausgegeben*/
reflektorBuchstabeRaus
=
WALZE_REFLEKTOR
[
iPositionReflektor
];
return
reflektorBuchstabeRaus
;
}
/**
* Getter getReflektorBuchstabeRein
*
* Gibt den Wert der Variablen reflektorBuchstabeRein zurück
*
* @return reflektorBuchstabeRein: Character: gibt den Buchstaben zurück
*/
public
Character
getReflektorBuchstabeRein
()
{
return
reflektorBuchstabeRein
;
}
/**
* Setter setReflektorBuchstabeRein
*
* Setzt den Wert der Variablen reflektorBuchstabeRein
*
* @param reflektorBuchstabeRein: Character: setzt den Wert des Buchstabens
*/
public
void
setReflektorBuchstabeRein
(
Character
reflektorBuchstabeRein
)
{
if
(
Character
.
isLetter
(
reflektorBuchstabeRein
)){
this
.
reflektorBuchstabeRein
=
reflektorBuchstabeRein
;
}
else
{
System
.
err
.
println
(
"Kein Buchstabe übergeben im Reflektor"
);
}
}
}
This diff is collapsed.
Click to expand it.
src/main/java/Enigma/model/Walze.java
+
11
−
10
View file @
b433415f
...
...
@@ -2,12 +2,12 @@ package Enigma.model;
public
class
Walze
{
Character
buchstabe
=
null
;
Character
ringstellung
=
null
;
int
walzennr
=
0
;
int
iPositionBuchstabe
=
0
;
int
iPositionBuchstabeRe
=
0
;
Character
[]
walze
=
new
Character
[
25
]
;
private
Character
buchstabe
=
null
;
private
Character
ringstellung
=
null
;
private
int
walzennr
;
private
int
iPositionBuchstabe
;
private
int
iPositionBuchstabeRe
;
private
Character
[]
walze
;
/**
* Gibt die Parameter der Walze mit
...
...
@@ -17,6 +17,7 @@ public class Walze {
* @param ringstellung : Character : Einstellung des Notch
*/
public
Walze
(
int
walzennr
,
Character
buchstabe
,
Character
ringstellung
)
{
this
.
walze
=
new
Character
[
25
];
this
.
walzennr
=
walzennr
;
this
.
buchstabe
=
buchstabe
;
this
.
ringstellung
=
ringstellung
;
...
...
@@ -25,7 +26,7 @@ public class Walze {
/**
* @return buchstabe : Character : gibt den neuen Buchstaben zurueck
*/
public
c
har
getBuchstabe
()
{
public
C
har
acter
getBuchstabe
()
{
return
buchstabe
;
}
...
...
@@ -37,7 +38,7 @@ public class Walze {
* @param buchstabe : Character : Grundeinstellung der Walze
*/
private
void
setBuchstabe
(
Character
buchstabe
)
{
this
.
buchstabe
.
toUpperCase
(
buchstabe
);
this
.
buchstabe
=
Character
.
toUpperCase
(
buchstabe
);
if
(
buchstabe
.
isLetter
(
buchstabe
))
{
this
.
buchstabe
=
buchstabe
;
...
...
@@ -141,7 +142,7 @@ public class Walze {
//Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze
for
(
index
=
0
;
index
<
walzeAlpha
.
length
;
index
++)
{
if
(
b
uchstabe
.
equals
(
walzeAlpha
[
index
]))
{
if
(
getB
uchstabe
()
.
equals
(
walzeAlpha
[
index
]))
{
iPositionBuchstabe
=
index
;
break
;
}
...
...
@@ -198,7 +199,7 @@ public class Walze {
//Ermittelt die Position des Buchstaben buchstabe auf der Alphabetswalze
for
(
index
=
0
;
index
<
walze
.
length
;
index
++)
{
if
(
b
uchstabe
.
equals
(
walze
[
index
]))
{
if
(
getB
uchstabe
()
.
equals
(
walze
[
index
]))
{
iPositionBuchstabeRe
=
index
;
break
;
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment