Hallo,
in unserer Applikation müssen die Anwender Rechnungs-Nummern (nur Ziffern, max. 8stellig, Integer) und Lagerorte (nur Ziffern, max. 9stellig, Integer) eingeben.
Hierfür benötige ich jetzt einen Algorithmus, welcher die Erkennung (und wenn möglich auch die Behebung von Einzelfehlern/Vertauschungen) möglich macht.
Dazu kann ich eine Stelle anhängen, welche aus den Ziffern 0-9 und den Buchstaben a-z bestehen kann.
Beispiel:
Rechnungs-Nr. 12345678 --> Ausgaben auf Rechnung bzw. Benutzereingabe 12345678P
Algorithmisch betrachtet muss ich also ein Integer (32 Bit) mit einer Prüfziffer von 5 Bits absichern (0-9 und a-Z entsprechenen 36 Zeichen, bei nutzung von 32 Zeichen sind das 5 Bits).
Reicht das für gestellte Aufgabe?
Welchen Algorithmus kann man verwenden?
Parallel dazu arbeite ich mich gerade durch diese Artikel:
de.wikipedia.org/wik...erkorrekturverfahren
de.wikipedia.org/wiki/Hamming-Distanz
Trotzdem komme ich damit nicht ganz klar.
Reichen die 5 Bits, um eine 31Bit Zahl (nur die positiven Integerwerte) gegen
1. vertauschte,benachbarte Ziffern erkennen/korrigieren
2. eine falsche Ziffer erkennen/korrigieren
3. mehrfache Fehler erkennen/nicht korrigieren
Und welchen Algorithmus kann man verwenden?