Nummer 6.4 a
Nerds sind eine ethnische Minderheit, die wie andere Jugendbewegungen auch nur im
Untergrund vertreten sind, daher auch oft Kellerkind genannt. Der Nerd ist meist ein
lichtscheues Wesen, das bei der Beruehrung mit Sonnenlicht sofort explodiert. Die
einzige Ausnahme ist das Licht PC-Monitorlicht; dieses zieht sie magisch an. Nerds
neigen dazu, Online-Spiele (vor allem Counter Strike, Dota und World of Warcraft)
zu spielen und behaupten gerne, dass sie in der Lage sind, zu Hacken, was bisher noch
nie nachgewiesen wurde. Die Spezies Nerd hat (wie vermutet wird) keinerlei sozialen
Kontakt, ausser zu anderen Nerds, was wahrscheinlich an ihrem bizarren Aussehen
(klein, schmaechtig, blass, meist mit Brille, unvorteilhaft gekleidet oder
uebergewichtig), sowie an ihrer Unfaehigkeit liegt, verstaendliche Saetze
zu bilden. Die neue Generation der Rasse Nerd versteht sich auch mit der Randgruppe
von Noobs sehr gut. Denn es sind beides Randgruppen der Menschheit. Es wird vermutet,
dass sich die Nerds und Noobs zusammenschliessen, um die Weltherrschaft an sich zu reissen.
Vor dem LZW ist die Textdatei 1074 Byte groß,
dass sind 8592 Bits.
Nach dem LZW ist die komprimierte Datei nur noch 5339 Bits groß.
Hier die Kompriemierte Datei!:
Text
Nummer 6.4 b
// Enkodierung startet:
filein.get(next); //Zeichen werden eingelesen eingelesen und in next gespeichert
while(filein.good()){ //solange ein Zeichen vorhanden ist
charcntr++; //erhöhe Zeichenzähler um 1
oldsymbol = symbol; //aktuelles Symbol wird zwischengespeichert
symbol += next; //weiteres Zeichen wird angefügt
code = dict->get_code(symbol);//schaut im Wörterbuch ob Kombination vorhanden ist
if (code == ""){ // Das Symbol gibt es noch nicht
// Gebe Symbol ohne letztem Zeichen aus (oldsymbol)
std::string out = dict->get_code(oldsymbol);
fileout << out; //schreibt Binärcode in Datei
bitcntr += out.length();// Bitcounter wird um Code von oldsymbol erweitert
// Überprüfe ob Ende erreicht wurde:
char nexttmp; //definiere temporäreren Zeichenspeicher
filein.get(nexttmp); //neues Zeichen einlesen
if(filein.good()){
&bnsp // Füge neues Symbol in das Wörterbuch ein
dict->write_symbol(symbol);
// Leere Symbolsstring
symbol = ""; //Symbol wird zurückgesetzt
symbol += next; //und mit dem nächsten Zeichen befüllt
next = nexttmp;
}