LE CARRE DE POLYBE

                 Feuille 71   

    EXERCICE

          On dispose d'un carré de POLYBE :

          On crypte un mot en remplaçant chaque lettre du mot  par les coordonnées

          ( numéro de la ligne , numéro de la colonne )

          de sa position dans le carré de Polybe .         

  1        2 3 4 5
1 A       B C D E
2 F       G H I J
3 K        L M N O
4 P       Q R S T
5 U   V  /  W X Y Z

       Ecrire le programme de cryptage d'un mot.

----------------------------------------------------------------------

      REPONSE:

from random import*
def cryptage(texte):
      tableau=[["A","B","C","D","E"],["F","G","H","I","J"],["K","L","M","N","O"],
                                    ["P","Q","R","S","T"],["U","V","X","Y","Z"]]
      c=" "
      k=0
      while k<len(texte):
             L=texte[k]
             for i in range(5):
                   for j in range(5):
                         if L==tableau[i][j]:
                              c=c+str(i+1)+str(j+1)+" "
             k=k+1
      return c
texte=raw_input("Entrer le mot à crypter ")
print  " Le mot crypté devient" ,cryptage(texte)

                Par exemple on obtient:

>>>
Entrer le mot à crypter HIER
Le mot crypté devient 23 24 15 43
>>>

             Autre exemple:

>>>
Entrer le mot à crypter ON DEFINIT UN TABLEAU
Le mot crypté devient 35 34 14 15 21 24 34 24 45 51 34 45 11 12 32 15 11 51
>>>

                 Autre exemple:

>>>
Entrer le mot à crypter BON SEJOUR DANS LE MIDI
Le mot crypté devient 12 35 34 44 15 25 35 51 43 14 11 34 44 32 15 33 24 14 24
>>>

---------------------------------------------------------------------------------------

   PARTIE B ( Décryptage )

from random import*

def decryptage(textecode):
      L=[["A","B","C","D","E"],["F","G","H","I","J"],["K","L","M","N","O"],
                         ["P","Q","R","S","T"],["U","V","X","Y","Z"]]
      t=" "
     m=len(textecode)
     for i in xrange(0,m,3):
          x=int(float(textecode[i]))
          y=int(float(textecode[i+1]))
          k=L[x-1][y-1]
          t=t+k
          return t

textecode=raw_input("Entrer le motcode   ..  ..   : ")
print decryptage(textecode)

            Par exemple:

>>>
Entrer le motcode: 12 23 21 22
BHFG
>>>

         autre exemple:

>>>
Entrer le motcode: 12 35 34 44 15 25 35 51 43 14 11 34 44 32 15 33 24 14 24
BONSEJOURDANSLEMIDI
>>>