PureBasic

Forums PureBasic
Nous sommes le Ven 25/Mai/2018 21:49

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 1 message ] 
Auteur Message
 Sujet du message: Lettrage et chiffrage selon la formule Aimé Paris
MessagePosté: Mar 13/Juin/2017 15:46 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 02/Oct/2011 16:17
Messages: 1901
Localisation: 50200 Coutances
Bonjour à tous,
n'ayant pas de projet pour le moment et pour m'occuper un moment, j'ai créé ce programme de chiffrage et lettrage.
La formule d'Aimé Paris est une méthode mnémotecnique pour se souvenir plus facilement des choses, car les lettres et les chiffres sont intiment liés, donc on peut mettre une chose en chiffres ou l'inverse, le voyelles ne servant à rien dans le codage, on peut donc en mettre autant qu'on veut pour que le mot à retenir soit plus intelligible, par exemple 321, peut devenir nomade, etc...
Code:
;Lettrage et et chiffrage selon la formule Aimé Paris
Procedure$ Lettrage(Chaine$)
  Protected i, j, Resultat$ = ""
 
  For i = 1 To Len(Chaine$)
    Select Val(Mid(Chaine$, i, 1))
      Case 0
        j = Random(1)
        If j = 0
          Resultat$ + "Z"
        Else
          Resultat$ + "S"
        EndIf 
      Case 1
        j = Random(1)
        If j = 0
          Resultat$ + "T"
        Else
          Resultat$ + "D"
        EndIf 
      Case 2
        Resultat$ + "N"
      Case 3
        Resultat$ + "M"
      Case 4
        Resultat$ + "R"
      Case 5
        Resultat$ + "L"
      Case 6
        j = Random(1)
        If j = 0
          Resultat$ + "G"
        Else
          Resultat$ + "J"
        EndIf 
      Case 7
        j = Random(1)
        If j = 0
          Resultat$ + "C"
        Else
          Resultat$ + "K"
        EndIf 
      Case 8
        j = Random(1)
        If j = 0
          Resultat$ + "F"
        Else
          Resultat$ + "V"
        EndIf 
      Case 9
        j = Random(1)
        If j = 0
          Resultat$ + "B"
        Else
          Resultat$ + "P"
        EndIf 
    EndSelect
  Next i
  ProcedureReturn Resultat$
EndProcedure

Procedure$ Chiffrage(Chaine$)
  Protected i, Resultat$ = ""
 
  Chaine$ = UCase(Chaine$)
 
  For i = 1 To Len(Chaine$)
    Select Mid(Chaine$, i, 1)
      Case "S", "Z"
        Resultat$ + "0"
      Case "D", "T"
        Resultat$ + "1"
      Case "N"
        Resultat$ + "2"
      Case "M"
        Resultat$ + "3"
      Case "R"
        Resultat$ + "4"
      Case "L"
        Resultat$ + "5"
      Case "G", "J"
        Resultat$ + "6" 
      Case "C", "K"
        Resultat$ + "7"
      Case "F", "V"
        Resultat$ + "8"
      Case "B", "P"
        Resultat$ + "9"
    EndSelect
  Next i
  ProcedureReturn Resultat$
EndProcedure


Debug Lettrage("0123456789")
Debug Chiffrage("STNMRLJKVP")
Debug Chiffrage("ZDNMRLGCFB")

_________________
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce GT 640 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.45 LTS, 5.62
Un homme doit être poli, mais il doit aussi être libre !


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 1 message ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye