Browse Source
refactoring: added final method DigitalTechnik 1-3
remotes/origin/A.Morlang/gruppenprojekt
refactoring: added final method DigitalTechnik 1-3
remotes/origin/A.Morlang/gruppenprojekt
fdai7487
2 years ago
1 changed files with 161 additions and 50 deletions
@ -1,76 +1,187 @@ |
|||||
package digital.technik; |
package digital.technik; |
||||
|
|
||||
public class DigitalTechnik { |
|
||||
|
import java.util.Scanner; |
||||
|
|
||||
|
public class DigitalTechnik { |
||||
public DigitalTechnik() { |
public DigitalTechnik() { |
||||
} |
} |
||||
|
|
||||
public static void main(String[] args) { |
|
||||
System.out.println("DigitalTechnik1: \n"); |
|
||||
final DigitalTechnik1 digitalTechnik1 = new DigitalTechnik1(); |
|
||||
digitalTechnik1.start(); |
|
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
|
||||
System.out.println("DigitalTechnik2: \n"); |
|
||||
final DigitalTechnik2 digitalTechnik2 = new DigitalTechnik2(); |
|
||||
digitalTechnik2.start(); |
|
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
void digitalTechnik1() { |
||||
|
Scanner sc = new Scanner(System.in); |
||||
|
|
||||
|
System.out.println("Willkommen"); |
||||
|
System.out.println("Bitte wählen Sie ein Thema (Zahl):"); |
||||
|
System.out.println("1. Information"); |
||||
|
System.out.println("2. Bit"); |
||||
|
System.out.println("3. Codes"); |
||||
|
System.out.println("4. Huffmann-Codierung"); |
||||
|
|
||||
|
int choice = sc.nextInt(); |
||||
|
sc.nextLine(); |
||||
|
|
||||
|
if (choice == 1) { |
||||
|
System.out.println(""" |
||||
|
Information: Kommunizierte oder empfangene Daten, die |
||||
|
Ungewissheit über ein bestimmtes Fakt oder einen Sachverhalt\s |
||||
|
auflöst."""); |
||||
|
|
||||
|
} else if (choice == 2) { |
||||
|
System.out.println(""" |
||||
|
Bit ist die Kurzform für binary digit.\s |
||||
|
Lateinisch bina bedeutet doppelt oder zwei. |
||||
|
Ein Bit kann zwei Werte annehmen: 0 und 1. |
||||
|
Das Bit ist die kleinste Informationseinheit. |
||||
|
Beipsiele: |
||||
|
Spannung vorhanden, z.B. 5V (1) oder nicht (0) |
||||
|
Schalter geschlossen (1) oder offen (0) |
||||
|
Material magnetisiert (1) oder nicht (0) |
||||
|
"""); |
||||
|
|
||||
|
} else if (choice == 3) { |
||||
|
System.out.println(""" |
||||
|
Ein Code ist eine Abbildungsvorschrift für eindeutige\s |
||||
|
Zuordnung (Codierung) von |
||||
|
Symbolen einer Urmenge zu |
||||
|
Symbolen einer Bildmenge. |
||||
|
Die Zuordnung muss nicht (eindeutig) umkehrbar sein! |
||||
|
"""); |
||||
|
|
||||
|
} else if (choice == 4) { |
||||
|
System.out.println(""" |
||||
|
Die Huffmann Codierung ist ein Codierungsverfahren, das\s |
||||
|
zu einem optimalen Code mit möglichst kleiner mittlerer Codelänge führt! |
||||
|
"""); |
||||
|
|
||||
|
} else { |
||||
|
System.out.println("Ungültige Eingabe!"); |
||||
|
} |
||||
|
} |
||||
|
void digitalTechnik2() { |
||||
|
Scanner sc = new Scanner(System.in); |
||||
|
|
||||
System.out.println("DigitalTechnik3: \n"); |
|
||||
final DigitalTechnik3 digitalTechnik3 = new DigitalTechnik3(); |
|
||||
digitalTechnik3.start(); |
|
||||
|
System.out.println("Willkommen"); |
||||
|
System.out.println("Bitte wählen Sie ein Thema (Zahl):"); |
||||
|
System.out.println("1. Hexadezimale Zahlen"); |
||||
|
System.out.println("2. Umrechnung dezimal in binär"); |
||||
|
System.out.println("3. Umrechnung dezimal in hexadezimal"); |
||||
|
System.out.println("4. Einerkomplement"); |
||||
|
System.out.println("5. Zweierkomplement"); |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
int choice = sc.nextInt(); |
||||
|
sc.nextLine(); |
||||
|
|
||||
System.out.println("DigitalTechnik4: \n"); |
|
||||
final DigitalTechnik4 digitalTechnik4 = new DigitalTechnik4(); |
|
||||
digitalTechnik4.start(); |
|
||||
|
if (choice == 1) { |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
System.out.println(""" |
||||
|
Hexadezimale Zahlen (R = 16) werden häufig zur kompakten |
||||
|
Darstellung von Binärzahlen verwendet. |
||||
|
Es werden die Ziffern {0, 1, 2, . . . , 9,A,B,C, D,E, F} verwendet |
||||
|
(A bis F repräsentieren die Wertigkeit 10 bis 15) |
||||
|
Jedes Hexadezimale Digit kann mit genau 4 Bit dargestellt |
||||
|
werden"""); |
||||
|
|
||||
System.out.println("DigitalTechnik5: \n"); |
|
||||
final DigitalTechnik5 digitalTechnik5 = new DigitalTechnik5(); |
|
||||
digitalTechnik5.start(); |
|
||||
|
} else if (choice == 2) { |
||||
|
System.out.println(""" |
||||
|
Um eine dezimale Zahl in eine binäre Zahl umzuwandeln, kann man den folgenden Prozess verwenden: |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
Die dezimale Zahl durch 2 teilen und den Quotienten notieren. |
||||
|
|
||||
System.out.println("DigitalTechnik6: \n"); |
|
||||
final DigitalTechnik6 digitalTechnik6 = new DigitalTechnik6(); |
|
||||
digitalTechnik6.start(); |
|
||||
|
Den Rest des Teilens notieren und ihn als die letzte Ziffer der binären Zahl betrachten. |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
Wiederholen Schritt 1 und 2 mit dem Quotienten, bis der Quotient 0 ist. |
||||
|
|
||||
System.out.println("DigitalTechnik7: \n"); |
|
||||
final DigitalTechnik7 digitalTechnik7 = new DigitalTechnik7(); |
|
||||
digitalTechnik7.start(); |
|
||||
|
Die Restschritte in umgekehrter Reihenfolge zusammensetzen, um die binäre Zahl zu erhalten."""); |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
} else if (choice == 3) { |
||||
|
System.out.println(""" |
||||
|
Um eine dezimale Zahl in eine hexadezimale Zahl umzuwandeln, kann man den folgenden Prozess verwenden: |
||||
|
|
||||
System.out.println("DigitalTechnik8: \n"); |
|
||||
final DigitalTechnik8 digitalTechnik8 = new DigitalTechnik8(); |
|
||||
digitalTechnik8.start(); |
|
||||
|
Die dezimale Zahl durch 16 teilen und den Quotienten notieren. |
||||
|
|
||||
|
Den Rest des Teilens notieren und ihn als die letzte Ziffer der hexadezimalen Zahl betrachten. |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
Wiederholen Schritt 1 und 2 mit dem Quotienten, bis der Quotient 0 ist. |
||||
|
|
||||
System.out.println("DigitalTechnik9: \n"); |
|
||||
final DigitalTechnik9 digitalTechnik9 = new DigitalTechnik9(); |
|
||||
digitalTechnik9.start(); |
|
||||
|
Die Restschritte in umgekehrter Reihenfolge zusammensetzen, um die hexadezimale Zahl zu erhalten."""); |
||||
|
|
||||
|
} else if (choice == 4) { |
||||
|
System.out.println(""" |
||||
|
Ein Einerkomplement ist ein Zahlensystem, das verwendet wird, um negative Werte in einem Computer darzustellen.\s |
||||
|
Es basiert auf der Idee, dass jede Zahl in einem binären System (bestehend aus 1en und 0en) ihre negativ vorzeichenbehaftete Entsprechung hat. |
||||
|
Eine negative Zahl wird durch das Invertieren aller Bits (Änderung von 1 zu 0 und von 0 zu 1) einer positiven Zahl und das Hinzufügen 1 zum Ergebnis dargestellt."""); |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
} else if (choice == 5) { |
||||
|
System.out.println(""" |
||||
|
Das Zweierkomplement ist eine Methode zur Darstellung von negativen Werten in einem Computer. Es ermöglicht es, negative und positive Werte mit der gleichen Anzahl von Bits zu repräsentieren. |
||||
|
|
||||
System.out.println("DigitalTechnik10: \n"); |
|
||||
final DigitalTechnik10 digitalTechnik10 = new DigitalTechnik10(); |
|
||||
digitalTechnik10.start(); |
|
||||
|
In einem Zweierkomplement-System, wird die höchstwertige Bit (die sogenannte "Vorzeichenbit") verwendet, um das Vorzeichen einer Zahl anzugeben. Eine 0 bedeutet eine positive Zahl, während eine 1 eine negative Zahl darstellt. |
||||
|
Die übrigen Bits repräsentieren den Wert der Zahl. Um eine negative Zahl zu berechnen, werden die Bits der positiven Entsprechung invertiert und 1 hinzugefügt."""); |
||||
|
|
||||
|
} else { |
||||
|
System.out.println("Ungültige Eingabe!"); |
||||
|
} |
||||
|
} |
||||
|
void digitalTechnik3() { |
||||
|
Scanner sc = new Scanner(System.in); |
||||
|
|
||||
|
System.out.println("Willkommen"); |
||||
|
System.out.println("Bitte wählen Sie ein Thema (Zahl):"); |
||||
|
System.out.println("1. Boolsche Algebra"); |
||||
|
System.out.println("2. Minterme"); |
||||
|
System.out.println("3. Maxterme"); |
||||
|
System.out.println("4. KDNF"); |
||||
|
System.out.println("5. KKNF"); |
||||
|
System.out.println("6. DNF"); |
||||
|
System.out.println("7. KNF"); |
||||
|
|
||||
|
|
||||
|
int choice = sc.nextInt(); |
||||
|
sc.nextLine(); |
||||
|
|
||||
|
if (choice == 1) { |
||||
|
System.out.println(""" |
||||
|
In der Digitaltechnik ist die boolsche Algebra eine spezielle Form der Algebra, \n |
||||
|
die sich mit logischen Ausdrücken und Operationen beschäftigt. Sie wird hauptsächlich in der Schaltungstechnik und der Informatik verwendet. \n |
||||
|
Die Grundelemente der boolschen Algebra sind die logischen Variablen "wahr" (1) und "falsch" (0) sowie die logischen Operatoren "und" (∧), "oder" (∨), "nicht" (¬) und "gleich" (⇔). \n |
||||
|
Mit diesen Operatoren können komplexe logische Ausdrücke erstellt und ausgewertet werden, die in digitalen Schaltungen verwendet werden, |
||||
|
|
||||
|
wie z.B. in Computern, Mobiltelefonen und anderen elektronischen Geräten. |
||||
|
"""); |
||||
|
|
||||
|
} else if (choice == 2) { |
||||
|
System.out.println(""" |
||||
|
In der Digitaltechnik werden Minterme verwendet, um eine bestimmte Funktion zu implementieren.\s |
||||
|
Minterme beziehen sich auf die kleinsten logischen Funktionen, die in einem digitalen System verwendet werden können.\s |
||||
|
Sie bestehen aus einer oder mehreren Eingängen und einem Ausgang und können durch eine Wahrheitstabelle oder eine Boolean-Funktion beschrieben werden."""); |
||||
|
|
||||
|
} else if (choice == 3) { |
||||
|
System.out.println("In der Digitaltechnik sind Maxterme die negierten Minterme. Ein Maxterm ist eine logische Funktion, die durch die Negation eines Minterms beschrieben wird. \n" + |
||||
|
"Maxterme haben die gleiche Anzahl an Eingängen wie Minterme, aber der Ausgang eines Maxterms ist das Gegenteil des Ausgangs eines entsprechenden Minterms."); |
||||
|
|
||||
|
} else if (choice == 4) { |
||||
|
System.out.println("Die kanonische disjunktive Normalform (KDNF) ist eine Darstellung einer boolschen Funktion als Summe der Produkte der Minterme."); |
||||
|
|
||||
|
} else if (choice == 5) { |
||||
|
System.out.println("Die kanonische konjunktive Normalform (KKNF) ist eine Darstellung einer boolschen Funktion als Produkt der Summen der Maxterme."); |
||||
|
|
||||
|
} else if (choice == 6) { |
||||
|
System.out.println(""" |
||||
|
Treten nicht alle Variablen in den Mintermen auf, |
||||
|
spricht man von der Disjunktiven |
||||
|
Normalform DNF. |
||||
|
"""); |
||||
|
|
||||
|
} else if (choice == 7) { |
||||
|
System.out.println(""" |
||||
|
Treten nicht alle Variablen in den Maxtermen auf, |
||||
|
spricht man von der nicht-kanonischen Konjunktiven |
||||
|
Normalform KNF. |
||||
|
"""); |
||||
|
|
||||
|
} else { |
||||
|
System.out.println("Ungültige Eingabe!"); |
||||
|
} |
||||
|
} |
||||
|
|
||||
System.out.println("\n"); |
|
||||
|
|
||||
System.out.println("DigitalTechnik11: \n"); |
|
||||
final DigitalTechnik11 digitalTechnik11 = new DigitalTechnik11(); |
|
||||
digitalTechnik11.start(); |
|
||||
} |
|
||||
} |
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue