Guten Tag
Ich habe hier ein Programm geschrieben, wo man eine vierstellige Bitfolge eingibt und ein dazugehöriger Hamming code erstellt wird.
Also ich bin Neuling in Sachen Programmierung, deshalb habe ich noch einige Fragen.
Und zwar habe ich einige Probleme mit der Eingabe, ich möchte das man nur 0 und 1 eingeben kann und es sollen genau vier Stellen sein. Mit anderen Worten, wüsste ich gern wie ich hier eine Eingabekontrolle am besten machen kann.
Desweiteren würde ich gern Verbesserungsvorschläge hören, ich bin mir sicher das ich das eine oder andere vielleicht zu umständlich gemacht habe oder besser machen könnte.
Ich habe hier ein Programm geschrieben, wo man eine vierstellige Bitfolge eingibt und ein dazugehöriger Hamming code erstellt wird.
Also ich bin Neuling in Sachen Programmierung, deshalb habe ich noch einige Fragen.
Und zwar habe ich einige Probleme mit der Eingabe, ich möchte das man nur 0 und 1 eingeben kann und es sollen genau vier Stellen sein. Mit anderen Worten, wüsste ich gern wie ich hier eine Eingabekontrolle am besten machen kann.
Desweiteren würde ich gern Verbesserungsvorschläge hören, ich bin mir sicher das ich das eine oder andere vielleicht zu umständlich gemacht habe oder besser machen könnte.
Java:
import java.io.*;
public final class Hamming {
private Hamming() {}
public static void main(String[] args) throws IOException {
int[] Daten = { 1, 1, 0, 1, 0, 0, 0 };
int a = 0, b = 0, c = 0, d = 0;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
System.out.print("Gib die vierstellige Bitfolge an : ");
String eingabe = br.readLine();
String teilen[] = eingabe.split(" ");
a = Integer.parseInt(teilen[0]);
b = Integer.parseInt(teilen[1]);
c = Integer.parseInt(teilen[2]);
d = Integer.parseInt(teilen[3]);
Daten[2] = a;
Daten[4] = b;
Daten[5] = c;
Daten[6] = d;
if ((Daten[2] + Daten[4] + Daten[6]) % 2 == 0) {
Daten[0] = 0;
} else {
Daten[0] = 1;
}
if ((Daten[2] + Daten[5] + Daten[6]) % 2 == 0) {
Daten[1] = 0;
} else {
Daten[1] = 1;
}
if ((Daten[4] + Daten[5] + Daten[6]) % 2 == 0) {
Daten[3] = 0;
} else {
Daten[3] = 1;
}
System.out.println("Die Hamming Codierung ist: " + Daten[0] + " "
+ Daten[1] + " " + Daten[2] + " " + Daten[3] + " " + Daten[4]
+ " " + Daten[5] + " " + Daten[6]);
}
}