posuny ve zvlastnim souboru
[krypto.git] / jakobsen.py
index 25f01dc..5c0aa24 100644 (file)
@@ -51,23 +51,23 @@ class reference:
     pass
 
 def jakobsen(zprava, ref):
     pass
 
 def jakobsen(zprava, ref):
-    slovnik = dict(zip(poradi_dle_frekvence(zprava), ref.poradi))
-    tabulka = nova_tabulka(substituce(zprava, slovnik))
-    vzdal = vzdalenost(tabulka, ref.tabulka)
+    slovnik = dict(zip(poradi_dle_frekvence(zprava, ref.abeceda), ref.poradi))
+    tabulka = nova_tabulka(substituce(zprava, slovnik, ref.abeceda), ref.abeceda)
+    vzdal = vzdalenost(tabulka, ref.tabulka, ref.abeceda)
 
     vzdal_old = vzdal + 1
     while vzdal_old > vzdal:
         vzdal_old = vzdal
         for (x, y) in combinations(ref.abeceda, 2):
             slovnik[x], slovnik[y] = slovnik[y], slovnik[x]
 
     vzdal_old = vzdal + 1
     while vzdal_old > vzdal:
         vzdal_old = vzdal
         for (x, y) in combinations(ref.abeceda, 2):
             slovnik[x], slovnik[y] = slovnik[y], slovnik[x]
-            v1 = vzdalenost(nova_tabulka(substituce(zprava, slovnik)),
-                            ref.tabulka)
+            v1 = vzdalenost(nova_tabulka(substituce(zprava, slovnik, ref.abeceda), ref.abeceda),
+                            ref.tabulka, ref.abeceda)
             if  v1 < vzdal:
                 vzdal = v1
             else:
                 slovnik[x], slovnik[y] = slovnik[y], slovnik[x]
 
             if  v1 < vzdal:
                 vzdal = v1
             else:
                 slovnik[x], slovnik[y] = slovnik[y], slovnik[x]
 
-    return '\n'.join([''.join(substituce(zprava, slovnik)),
+    return '\n'.join([''.join(substituce(zprava, slovnik, ref.abeceda)),
                       ' '.join(ref.abeceda),
                       ' '.join([slovnik[c] for c in ref.abeceda])])
 
                       ' '.join(ref.abeceda),
                       ' '.join([slovnik[c] for c in ref.abeceda])])