Bibm@th

Forum de mathématiques - Bibm@th.net

Bienvenue dans les forums du site BibM@th, des forums où on dit Bonjour (Bonsoir), Merci, S'il vous plaît...

Vous n'êtes pas identifié(e).

#1 18-03-2012 22:07:28

yoshi
Modo Ferox
Inscription : 20-11-2005
Messages : 16 989

[AlgoBox] Codage d'une phrase via un carré de Polybe virtuel

Bonsoir,

J'ai donc réussi à coder plus court avec un carré de Polybe virtuel et sans lettres :


Lettres               Codes ASCII                Codes ASCII - 65
A B C D E            65 66 67 68 69                0  1  2  3  4
F G H I J            70 71 72 73 74                5  6  7  8  9
K L M N O            75 76 77 78 79               10 11 12 13 14
P Q R S T            80 81 82 83 84               15 16 17 18 19  
U V X Y Z            85 86 88 89 90               20 21 23 24 25

N-B : Si la position est supérieure à 22, c'est qu'on a dépassé le W, il faut donc enlever 1 à la position obtenue.

Je prends donc la phrase "JESUISFOUDUCHOCOLATLANVINDISAITDALI" que je parcours dans son intégralité, lettre après lettre de la position 0 à la position 34 (longueur de la phrase-1).
On commence par le J de "JESUIS...", son code ASCII est 74, moins 65 (le code A) --> 9

Où est-il dans le tableau ?
Par lignes de 5, il est à ligne 1+partie_entiere(9/5) soit 1+ 1=2 --> donc le J est sur la 2e ligne.
Où sur la 2e ligne ?
Par colonnes de 5, il est à 1+ reste_de_la_division_euclidienne de 9 par 5 (= 9%5) soit 1+4 =5 --> le J est donc sur la 5e colonne.
On juxtapose alors 2 et 5, par le calcul 10*2+5 -->25

Et ainsi de suite...

D'où :


1     VARIABLES
2       longueur EST_DU_TYPE NOMBRE
3       ligne EST_DU_TYPE NOMBRE
4       col EST_DU_TYPE NOMBRE
5       pos EST_DU_TYPE NOMBRE
6       i EST_DU_TYPE NOMBRE
7       j EST_DU_TYPE NOMBRE
8       Texte_Clair EST_DU_TYPE CHAINE
9     DEBUT_ALGORITHME
10      Texte_Clair PREND_LA_VALEUR "JESUISFOUDUCHOCOLATLANVINDISAITDALI"
11      longueur PREND_LA_VALEUR Texte_Clair.length-1
12      AFFICHER "La phrase :"
13      AFFICHER Texte_Clair
14      AFFICHER "est codée "
15      POUR i ALLANT_DE 0 A longueur
16        DEBUT_POUR
17        pos PREND_LA_VALEUR Texte_Clair.charCodeAt(i)-65
18        SI (pos>22) ALORS
19          DEBUT_SI
20          pos PREND_LA_VALEUR pos-1
21          FIN_SI
22        ligne PREND_LA_VALEUR 1+FLOOR(pos/5)
23        col PREND_LA_VALEUR 1+pos%5
24        j PREND_LA_VALEUR 10*ligne+col
25        AFFICHER j
26        AFFICHER " "
27        FIN_POUR
28    FIN_ALGORITHME

Résultats :
***Algorithme lancé***
La phrase :
JESUISFOUDUCHOCOLATLANVINDISAITDALI
est codée
25 15 44 51 24 44 21 35 51 14 51 13 23 35 13 35 32 11 45 32 11 34 52 24 34 14 24 44 11 24 45 14 11 32 24
***Algorithme terminé***

J'espère avoir été clair.

@+


Arx Tarpeia Capitoli proxima...

Hors ligne

Réponse rapide

Veuillez composer votre message et l'envoyer
Nom (obligatoire)

E-mail (obligatoire)

Message (obligatoire)

Programme anti-spam : Afin de lutter contre le spam, nous vous demandons de bien vouloir répondre à la question suivante. Après inscription sur le site, vous n'aurez plus à répondre à ces questions.

Quel est le résultat de l'opération suivante (donner le résultat en chiffres)?
vingt huit moins vingt trois
Système anti-bot

Faites glisser le curseur de gauche à droite pour activer le bouton de confirmation.

Attention : Vous devez activer Javascript dans votre navigateur pour utiliser le système anti-bot.

Pied de page des forums