Ich habe mal spaßhalber ein Programm aus der EPROG-Beispielsammlung umgesetzt. Es hat die Nummer 1074 und ermittelt die Hammingdistanz von ein paar übergebenen Codewörtern.
Die Problemstellung | |
---|---|
Wie so vieles im Leben beginnt das Programm mit einer Eingabe. In diesem Fall besteht sie aus drei Teilen: - der Codewortl�nge - den Codew�rtern - dem Terminatorsymbol Die Codewortl�nge bestimmt, wie lange die folgenden Codew�rter sein sollen. Das Terminatorsymbol darf kein Codewort sein und mu� ein Zeichen lang sein. 0 und 1 fallen damit flach. |
Die Hammingdistanz | |
---|---|
Was ist eine Hammingdistanz? Die genauen Details werden in Grundz�ge der Informatik (fr�her: Einf�hrung in die Informatik, danke Wings-Of-Glory/Informatik-Forum) gelehrt. Im wesentlichen sagt die Hammingdistanz aus, wie stark sich zwei W�rter unterscheiden. Genauer gibt sie die Anzahl der unterschiedlichen Bits in zwei Codew�rtern an. Beispiel 1: A="0111" B="0111". Hier ist die Hammingdistanz 0, beide Codew�rter sind gleich. Beispiel 2: A="1110" B="0001". Hier ist die Hammingdistanz 4, beide Codew�rter sind komplett unterschiedlich. Wir sehen hier auch gleich, dass die Hammingdistanz a priori nur f�r gleichlange Codew�rter definiert ist, 0 als kleinsten und die L�nge eines Codewortes als gr��ten Wert hat. |
Die Ausgabe | |
---|---|
Die Hammingdistanz des ersten Beispiels bekommen wir durch die Eingabe "4 0111 0111 =", die Ausgabe soll hier HD=0 lauten. Beim zweiten Beispiel lautet die Eingabe beispielsweise "4 1110 0001 =", die Ausgabe entsprechend HD=4. Wir haben auch einige Fehlerf�lle. Entspricht die Eingabe nicht dem gew�nschtem Datentyp, soll ein '?' ausgegeben werden. Meines Erachtens ist dieser Fehler nur bei der Eingabe der Codel�nge m�glich. Interessanter ist der allgemeine Fehlerfall "FALSCHE EINGABE". Er kann erfolgen bei - Codel�nge < 1 oder Codel�nge > 4 - Anzahl Codew�rter < 2 oder Anzahl Codew�rter > 8 - wenn ein Wort eine andere als die gew�nschte Codel�nge hat - wenn das Abschlu�symbol nicht einstellig ist - wenn keine Bin�rzahlen (=nur aus 0 oder 1 bestehende) als Codew�rter angegeben werden und erfolgt in meinem Programm auch bei jedem anderen m�glichen Fehler. |
Comments - Make a comment |
The comments are owned by the poster. We are not responsible for its content. |
AdministrativeTexts
updated by freddiemac1993, 2013-06-14
wiki
Re: adventures
created by brittdavis10, 2012-02-23 (1 rply, 3 views)
thread
Re: how to run phpwebsite...
created by alexander, 2011-08-25 (2 rpls, 3607 views)
thread
Re: Forum tags
created by HaroldFaragher, 2011-08-22 (3 rpls, 8488 views)
thread