hallo reinhard,
dann würde ich rechnen (a*A(i)+b*B(i)+...+z*Z(i))/l(i), wobei a,b,...,z die relativen häufigkeiten der zugeh. buchstaben sind, i der jeweilige index des substrings und l(i) dessen länge. Ich steh auf dem Schlauch.. Was heißt "zugeh."? Was berechnest du damit? Und: wo bist du gerade bei der Formel?
das sind die häufigkeiten der buchstaben in der englischen sprache (bei dir die werte in language['en']['frequencies']), also a=8.167%=0.08167=p(1), b=1.492%=0.01492=p(2) usw.
ohne jz das ergebnis gleich zu bewerten, würde ich dann fortfahren mit den shifts, also
(a*B(i)+b*C(i)+...+z*A(i))/l(i)
(a*C(i)+b*D(i)+...+z*B(i))/l(i) usw. berechnen.
Wie jetzt, erst „(a*A(i)+b*B(i)+...+z*Z(i))/l(i)“ und dann „(a*B(i)+b*C(i)+...+z*A(i))/l(i)“? Wie kommst du darauf? Und selbes wie oben: was berechnest du damit?
das ist das shiften...
Wäre toll wenn wir die MIC Formel mal für den 1. Substring durchgehen könnten.
Substring[0] : WJPOUVPTQVJGCAEGGVGVQQGCKVNRQVIEGPWVOCUCCEVRJJVKD
Buchstabenhäufigkeit : 1 0 5 1 3 0 6 0 1 4 2 0 0 1 2 3 4 2 0 1 2 9 2 0 0 0
ok. a*A(1)+b*B(1)+...+z*Z(1)=0.08167*1+0+...+0 = ?
das ganze durch l(1)=49 dividieren.
dann a*B(1)+b*C(1)+...+z*A(1) = 0+0.01492*5+...+0.00074*1 = ?
auch wieder durch 49 dividieren.
usw. also a*C(1)+..., a*D(1)+..., ... das ist eben das shiften, also das verschieben, denn du weisst ja nicht ob sich hinter dem A aus dem kryptogramm wirklich das a oder b oder c und und verbirgt, deshalb setzt du JEDES zeichen mal an die entsprechende stelle. das musst du halt konsequent durchziehen (und unter den im englischen 26 ergebnissen am ende den jeweils größten für jeden substring heraus suchen).
bye trunx
Die Standard-Antwort: "Bitte benutze die Forum-Suche!" macht die Forum-Suche kaputt, weil die Suche dann nämlich genau vor allem diese dämliche Standard-Antwort, also Müll liefert. Sinnvoller ist stattdessen folgende Standard-Antwort: "Dieses Thema wurde schon vielfach im Forum besprochen, siehe z.B. <a>hier</a> oder <a>da</a> oder benutze die Forum-Suche z.B. mit den Stichworten 'Stichwort1 Stichwort2'." Danke.