[Allegro] Kontrolle der Eineindeutigkeit von o-Umschl.-Dateien

Thomas Berger ThB at Gymel.com
Di Sep 20 20:44:02 CEST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Lieber Herr Allers,

> Das Ergebnis meiner Bemühungen, die Flexdatei oapt.flx, liegt unter
> http://www.goethe.de/z/82/acwww25/ha/2005/oapt.flx
> bereit. Wer Lust hat, kann sie ja mal auf seine o.apt (oder die der 
> Demo-Datenbank) oder verwandte Dateien ansetzen. Für Vorschläge im 
> Anschluß an diesen Entwurf bin ich natürlich zugänglich.
> 
> Mir hat sie schon genützt beim Durchforsten meiner 
> Umschlüsselungsdateien und damit einhergehender Beseitigung von 
> Umcodierungsfehlern.

Auf die o.apt der Demo-Datenbank angewandt liefert Ihr Flex:

Eineindeutigkeitstest der Datei G:\allegro\o.apt

Mit Spalte 1 sind die Codewerte unmittelbar hinter 'o ' gemeint;
mit Spalte 2 die Codewerte in der Spalte danach.


Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!
Code 127 aus Spalte 2 ist doppelt!

Code 015 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 016 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 017 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 018 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 019 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 020 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 021 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 022 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 023 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 024 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 025 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 028 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 030 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 031 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 131 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 140 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 141 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 142 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 143 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 156 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 158 aus Sp. 1 ohne Korrespondenz in Sp. 2!
Code 255 aus Sp. 2 ohne Korrespondenz in Sp. 1!

Nicht gefunden werden 10 weitere Dopplungen von Code 127 sowie
die Nicht-Korrespondenz von Code 014 analog Code 015.
Leider habe ich nicht den Nerv, in Ihrem Flex die jeweiligen
Fehler zu suchen, meine Kontroll-Loesung sah so aus (leider kein
Einzeiler):

#!perl -w
while (<>) {
  next unless /^o \.0*(\d+) 0*(\d+)/;
  defined $o[$1] ? print "links uneindeutig $1 <= $o[$1] & $2 at line
$.\n" : ($o[$1]=$2);
  defined $p[$2] ? print "rechts uneindeutig $p[$2] & $1 => $2 at line
$.\n" : ($p[$2]=$1);
}
for ($i=0;$i<256;$i++) {
  print "rechts implizit uneindeutig $p[$i] & $i => $i\n" if !defined
$o[$i] and defined $p[$i];
  print "links implizit uneindeutig $i <= $o[$i] & $i\n" if !defined
$p[$i] and defined $o[$i];
}

viele Gruesse
Thomas Berger
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3-nr1 (Windows XP)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDMFhyENVh3bB0lwMRAuatAJ9dAEcebLVcJ86MRp/scpGuUOZCSwCgm4Fu
ZuEvgEUPAGNea4a0y7RAa3g=
=Qxaz
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste Allegro