Un texte nous est arrivé par très clair... un défi nous attend
Le principe ici est plus simple que celui d’ENIGMA soumis à Alan Turing. Pour chaque lettre de l’alphabet correspond une autre lettre sélectionnée au hasard. Le but est de remettre dans l’ordre les lettres de l’alphabet du code pour faire apparaitre le texte final en clair.
Dans un texte en français il y a des occurrences qui reviennent plus souvent que d’autres (le A, encore plus le E etc.). Une table des fréquences des lettres de l’alphabet est donc fournie, basée ici sur le texte original.
Le défi est de fournir le texte final en clair.
Il y a un petit piège car certaines occurrences de lettres se produisent le même nombre de fois, mais il y en a peu et cela devrait être facile de les remplacer sur la fin.
Règles :
Me renvoyer votre code (Mini_Turing_Mon pseudo.vi) avant le 30 avril sur ma boite mail : emmanuel.roset@ni.com et en plaçant sur la communauté vos commentaires et surtout un « code envoyé » afin de vérifier que j’ai bien traité tous les programmes.
Un gagnant sera tiré au sort à partir d’un hasard incontestable (un jeu officiel) et remportera la possibilité de passer une certification LabVIEW gratuitement.
Amusez vous bien et bon décodage !
Emmanuel ROSET
Voici les fréquences (qui seront aussi dans le code de départ en pièce jointe en version LabVIEW 2010)
Précisions 07-04-2015
Petite précision suite à des retours
Comme indiqué dans le texte, il y a un piège à la fin car certaines lettres ont la même fréquence dans le texte. Une intervention manuelle est nécessaire afin au minimum de valider les propositions d'interchangement.
Le code est validé du moment que le texte est décodé automatiquement jusqu'à ces lettres et quand ensuite le texte est en clair. Peu importe la méthode d'intervention manuelle sur les dernières lettres de la table de correspondance de sortie.
Il faut également que le texte en clair soit présent dans la chaine de sortie.
Libre a voir d'ajouter ou de modifier la face-avant proposée avec des commandes et Indicateurs du moment que le texte de sortie et le code est relié sur le VI pour validation.
Petite précision suite à des retours
Comme indiqué dans le texte, il y a un piège à la fin car certaines lettres ont la même fréquence dans le texte. Une intervention manuelle est nécessaire afin au minimum de valider les propositions d'interchangement.
Le code est validé du moment que le texte est décodé automatiquement jusqu'à ces lettres et quand ensuite le texte est en clair. Peu importe la méthode d'intervention manuelle sur les dernières lettres de la table de correspondance de sortie.
Il faut également que le texte en clair soit présent dans la chaine de sortie.
Libre a voir d'ajouter ou de modifier la face-avant proposée avec des commandes et Indicateurs du moment que le texte de sortie et le code est relié sur le VI pour validation.
Code envoyé
Bravo, en plus très convivial sur le choix des quelques lettres a échanger sur la fin alors que ce n'était pas forcément demandé
Merci
Pour tous les autres, il reste du temps jusqu' à la fin du mois pour trouver le code et le texte, pas de stress, ce n'est pas un challenge de vitesse...
code envoyé
Bonjour,
Je pense qu'il y a un autre problème que le même nombre de fréquence des lettres dans le texte.
Notamment dans le texte d'origine (lisible en bon français, avant cryptage), le P apparait 40 fois et le M 39 fois, ce qui n'est pas en accord avec le tableau des fréquences fourni, où le M apparait plus souvent que le P.
J'ai un VI qui le prouve, je vous l'envoie.
Ou pas.... je regarde
Il y a des inversions pernicieuses parfois dans les cryptages qui déclenchent des questions sur le forum
En tout cas le but est d'avoir le texte en clair et un bout de code de tri des probabilités afin de s'approcher du but pour finir manuellement.
Code envoyé avec la fin en manuel
Code envoyé
Jeremy CHIFFE
Certified LabVIEW Architect (2016)
Hello Emmanuel,
Avez-vous bien reçu mon code ?
Hello,
Désolé j'étais très occupé ces derniers temps. Oui j'ai bien recu les 2 derniers codes de Jeremy_Chiffe et SebastienM. J'ai du également réfléchir au problème d'universalité dans leur lecture car ils utilisent quelques VIs OpenG. Vous serait il possible d'intégrer les sous-VI ou de ne pas utiliser cette bibliothèque ? En effet, tout le monde n'utilise pas directement cette blibliothèque communautaire. Spécialement ceux qui débutent en LabVIEW.
Merci beaucoup !
Code re-envoyé sans VI OpenG.
Jeremy CHIFFE
Certified LabVIEW Architect (2016)
Code envoyé
Super, merci à vous d'avoir retiré le code OpenG.
Voici la liste des réponses actuellement : toutes validées
1 - Mini_Turing_NicoEMC.vi |
2 - Mini_Turing_Xalbeht.vi |
3 - Mini_Turing_SMichaud3.vi |
4 - Mini_Turing_Jérémy_Chiffe_V2 |
5 - Mini_Turing_beno72.vi |
Bravo à la plupart pour avoir proposé des probabilités sur les dernières inversions avec différentes manières de saisir manuellement les valeurs. Je pense que cette partie "d'improvisation" qui n'était pas obligatoire sera un bon moyen d'avoir des codes utilisables pour tous. Les méthodes sont bien pensées !
Code envoyé
Merci, code recu et fonctionnel
Bonsoir, nous allons cloturer ce soir ce défi, le loto permettra de départager le gagnant parmi vous 6
Comme il y a 49 boules par tirage nous allons procéder de la sorte 6 x 8 = 48 donc le premier aura les numéro de 1 à 8, le 2eme de 9 à 16, le 3 eme de 17 à 24, le 4 eme de 25 à 32 le 5 eme de 33 à 40 et enfin le 6 eme de 41 à 48, le 49 ne fait gagner personne. Et si le 49 sort en premier alors on attend la 2 eme boule.
Bonne chance au tirage !!
Le tirage d'hier soir à commencé par le numéro 42 donc l'heureux chanceux est toto69 !
Merci à tous pour avoir innové avec des méthodes différentes pour proposer les 6 inversions manuelles maxi à la fin pour avoir le texte en clair.
Analyser ces méthodes peut aider la communauté à trouver des apprendre des astuces !!!
Mise en ligne des codes (version 2010) en cours