Je n´ai pas le temps de réfléchir à ton code, mais je vais t´expliquer le mien.
Tu as fait une grosse erreur : je te dis que T se code par O, tu traduis QHQ par TOT et rien ne te choque ? Il est impossible que Q figure T puisque c´est O qui le fait. En plus, tu avais traduit Q différemment au-dessus. QHQ signifie donc "non". C´est plus clair, je pense.
En fait, le code était simple : à chaque lettre, on associe un nombre n : A=0; B=1, C=2, etc jusqu´à Z=25. Pour chaque lettre, on calcule 17n+3, on divise par 26 et on regarde le reste (un nombre compris entre 0 et 25). Ce reste désigne la lettre codante. Par exemple, pour C : 17*2+3=37, 37=1*26+11, donc C est codé par la lettre 11, c´est-à-dire L.