Tout 82
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Connexion

Récupérer mon mot de passe

Chatbox externe


Derniers sujets
» [JEU] Mon voisin du dessous
Programme de Cryptographie EmptyDim 16 Oct 2022 - 21:11 par Wistaro

» Bonne année 2018!
Programme de Cryptographie EmptyVen 2 Nov 2018 - 19:42 par Ti64CLi++

» Lancement du TI-Concours 2017 !
Programme de Cryptographie EmptySam 20 Mai 2017 - 0:27 par Paulo1026

» Chaînes Youtube des membres
Programme de Cryptographie EmptyVen 19 Mai 2017 - 22:41 par Wistaro

» cacul du taux d'intêret
Programme de Cryptographie EmptyVen 24 Mar 2017 - 21:50 par m@thieu41

» [Projet] Un mario by tout82
Programme de Cryptographie EmptyDim 29 Jan 2017 - 14:09 par Wistaro

» Cherche documentation assembleur TI82stat
Programme de Cryptographie EmptyMer 25 Jan 2017 - 12:29 par Ti64CLi++

» Probleme Ti-82 Stats fr
Programme de Cryptographie EmptyJeu 12 Jan 2017 - 13:56 par Ti64CLi++

» ROM 82 stats.fr
Programme de Cryptographie EmptyJeu 15 Déc 2016 - 10:24 par Ti64CLi++

Partenaires
TI-Planet Espace-TI : Forum

Faire un don à Tout-82...
Où va cet argent ?
Membres donateurs:- Persalteas (10€)
- Wistaro (5€)
- jo2geek (22€)

Les posteurs les plus actifs du mois
Aucun utilisateur

Le deal à ne pas rater :
LEGO Icons 10331 – Le martin-pêcheur
35 €
Voir le deal

Programme de Cryptographie

4 participants

Aller en bas

Programme de Cryptographie Empty Programme de Cryptographie

Message par pito2901 Mar 29 Avr 2014 - 16:50

Salut à tous !

Voilà j'aimerais créer un programme pour convertir un texte en un langage codé

Sachant que chaque lettre sera converti en chiffre (avec A=1, B=2, Z=26), puis je souhaiterais choisir un nombre quelconque que l'on additionnera, genre 3, puis remettre les lettres correspondantes :

démonstration :

ZEBRE → 26.05.02.18.05

On ajoute 3

29.08.05.21.08, comme on a 29, on fait 29-26=3 ce qui donne :

03.08.05.24.08 → CHEUH

Évidemment je souhaiterai faire l'inverse, c'est à dire rentrer les nombres, le chiffre d'addition qui a été utilisé, puis il m'affiche le texte. C'est comme un programme de conversion...

Est-ce qu'un tel programme est possible sur Ti 82 Stats.fr  Question

Merci pour votre aide.


Dernière édition par pito2901 le Mer 30 Avr 2014 - 23:32, édité 1 fois
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Wistaro Mar 29 Avr 2014 - 17:46

Si tu veux, j'ai fait un programme qui permet de crypter/décrypter graphiquement un message écrit...

Pour ta méthode, je pense que c'est réalisable
Wistaro
Wistaro
Passioné
Passioné

Messages : 918
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

https://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mar 29 Avr 2014 - 18:05

Wistaro a écrit:permet de crypter/décrypter graphiquement un message écrit...

Qu'est ce que tu entends par là ?
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Wistaro Mar 29 Avr 2014 - 18:41

Tu rentre du texte, comme sur mon programme "TxTprint", il s'enregistre dans des pics.

Ensuite, tu peux crypter ce texte. L'image va être brouillée, en quelque sorte. Il sera impossible de trouver du texte, tu ne verras que des formes géométriques et des signes sans significations.

Un autre programme te permet de décrypter cette image étrange et de retrouver le texte d'origine
Wistaro
Wistaro
Passioné
Passioné

Messages : 918
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

https://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Linkakro Mar 29 Avr 2014 - 19:18

Stocker la chaîne dans une image est hors propos à cause de la demande initiale de cryptage numérique circulaire.
Néanmoins je confirme la possibilité du stockage d'une chaîne dans une Image.
Spoiler:

Le cryptage circulaire est simple à coder, surtout en TI-Basic, malgré l'étape circulaire. Je désigne par circulaire ou modulo ou encore wrapping le fait de ramener 27 à 1 quand on ajoute 1 à 26.
La conversion de la chaîne de caractères en nombres est plus pénible en TI-Basic.
Code:
ClrList L1 // cela suffira, pas besoin de dimensionner
Input Str1
Prompt A
"ABCD...Z->Str2
//bijection de chaque token à un nombre
length(Str1->L
For(X,1,L
sub(Str1,X,1) // un token
inString(Str2,Ans) // valeur associée au token
A+Ans // somme
Ans-26int((Ans-1)/26) // circulaire (modulo 26 des lettres), que tu codes comme tu veux
Ans->L1(X) //stockage de l'image de la valeur associée au token
End
" "->Str1
//bijection de la liste à la chaîne
For(X,1,L
Str1+sub(Str2,L1(X),1->Str1 // concatène
End
Str1 //résultat
J'optimise avec les opérations et fonctions des listes.
Code:
Input Str1
Prompt A
"ABCD...Z->Str2
length(Str1->L
A+seq(inString(Str2,sub(Str1,X,1)),X,1,L->L1 // extraction de chaque caractère puis ajoute A à chacun
L1-26int((L1-1)/26->L1 // circulaire (modulo 26 des lettres) de chaque terme de L1
" "->Str1
For(X,1,L
Str1+sub(Str2,L1(X),1->Str1 // concatène
End
Str1 //résultat
Evidemment on peut optimiser encore avec Ans au lieu de quelques instances de L1 mais comme ça tout le monde voit que c'est une liste.
On peut optimiser des choses différentes sachant que les bornes de fin des For() et seq() ne sont calculé qu'une seule fois en TI-Basic. Par exemple lire la longueur sans L ou encore utiliser une seule variable pour X et L.

EDIT : correction de la ligne du seq(). Deux fragments de code copiés n'étaient pas du tout à leur place dans le code.
Correction des modulos du calcul circulaire et ajout de la mention des 26 lettres.
Correction de la fin du seq() dont "L" manquait.


Dernière édition par Linkakro le Mar 29 Avr 2014 - 23:01, édité 3 fois
Linkakro
Linkakro
----------------------
----------------------

Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mar 29 Avr 2014 - 21:19

Dans le deuxième code, il me met erreur syntaxe avant le →L1 à la cinquième ligne, tu as sûrement oublié quelque chose.

et petite question, pourquoi mettre seulement ABCD ?
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Linkakro Mar 29 Avr 2014 - 22:31

J'avais copiés des fragments de code de l'autre programme n'importe comment. Modifié.
J'écris ABCD car je suis paresseux et que tu devines la suite. Et les modulos doivent être adaptés selon le nombre de caractères possibles.

Je signale maintenant que mes solutions basées sur la liste L1 ne supportent que 999 tokens maximum.
Il faut parcourir la chaîne une seule fois et calculer pour chaque token.
Code:
Input Str1
Prompt A
"ABCD...Z->Str2
" "->Str3
length(Str1->L
//bijection de chaque token à un nombre
For(X,1,L
sub(Str1,X,1
A+inString(Str2,Ans
Ans-26int((Ans-1)/26
Str3+sub(Str2,Ans,1->Str3
End
sub(Str3,2,L // résultat
Je vous épargne l'optimisation de ranger Str3 à la fin de Str1 (voire même progressivement dans Str1).

EDIT :
Suppression d'un ClrList innutile.
Ajout de l'affectation de L qui est nécessaire pour la dernière sous-chaine sub().


Dernière édition par Linkakro le Mer 30 Avr 2014 - 21:11, édité 1 fois
Linkakro
Linkakro
----------------------
----------------------

Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mar 29 Avr 2014 - 22:55

J'ai toujours erreur syntaxe avant le →L1 à la cinquième ligne

Rien à voir...:
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Linkakro Mar 29 Avr 2014 - 23:03

Cette fois j'avais oublié le L pour la borne de fin de la fonction seq().
Tant que j'y suis, je teste chaque programme dans la foulée. (et je cherche)

réponse au "Rien à voir...":
Linkakro
Linkakro
----------------------
----------------------

Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mar 29 Avr 2014 - 23:19

Il met erreur argument après sub(Str1,X,1

Rien à voir...:
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 11:24

Une erreur argument?  Question 
Je ne comprends pas: la syntaxe de sub c'est bien: sub(Chaine,debut,longueur), donc là tu respectes les arguments...
A la rigueur une erreur domaine si la valeur de X n'est pas correcte, ou indéfini si Str1 est vide, mais sinon...

Tu as bien rentré la ligne?
Donne la valeur de Str1 et de X, sait on jamais...
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 12:04

J'ai mis A pour Str1 et 3 pour X
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 12:28

Mais A n'est pas une chaine, donc c'est sur que ça ne marchera pas...

Si tu voulais dire la variable A: ce n'est pas possible, il faut que tu utilises une variable de chaine à la place ([var],[7]).
Si tu voulais la lettre A comme chaine: il faut mettre des guillemets: sub("A",3,1), mais dans ce cas c'est absurde: tu auras une erreur domaine...

A moins que tu veilles dire que str1 contienne "A" et X=3, dans ce cas ton erreur n'est pas logique, tu aurais du avoir une erreur dimension...
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 12:52

Je comprends pas...

Il me met ? donc je tape A pour qu'il soit dans la chaîne 1
Ensuite il met A? donc je mets 3
et là il met erreur argument, mais je me rends compte qu'on ne définie rien pour X
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 13:44

X correspond au numéro de la lettre du mot, il est géré par la boucle for:
For(X,1,length(Str1

Input mets les guillemets nécessaires aux chaines, donc normalement pas de problème à ce niveau.

Donc ton erreur me parait bizarre, donne moi les valeurs de Str1 et de X après l'erreur stp.


[EDIT] Ceci a été corrigé par Linka par édition.
Par contre Linka:
Code:
sub(Str3,2,L // résultat
Je ne vois nul part que tu initialises L...
Code:
sub(Str3,2,lenght(Str1 // résultat


Dernière édition par m@thieu41 le Mer 30 Avr 2014 - 21:12, édité 1 fois
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 14:05

Et bien chaîne 1 → A
Et X → 1
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 14:43

Et ça fait une erreur?

Bizarre...

Essaye (sur l'écran standard hors programme) la commande:
sub("A",1,1
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 14:45

erreur syntaxe sur le premier 1, sub → c'est bien suite( ?
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 14:50

Aïe le problème vient de là Wink
sub = sous-chaine en français.

Regarde sur le manuel fait par Persalteas/Linka si tu as un doute à propos d'une traduction : http://www.tout82.org/t151-catalogue-du-ti-basic-z80

suite = seq
seq(expression,variable,debut,fin
permet d'obtenir une suite calculée à partir de expression en fonction de variable allant de debut à fin.
Ex:
suite(A²,A,1,3
Donne:
{1,4,9
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 15:02

Maintenant erreur type donnée après Rép-26ent((Rép-1)/26→L1
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 15:45

Code:
sub(Str1,X,1
A+inString(Str2,Ans
Ans-26int((Ans-1)/26
Il n'y a pas : Rép-26ent((Rép-1)/26→L1
Enlève →L1
En effet, l'algo de Linka procède ainsi:
Il isole la lettre;
Il calcule son numéro (en rajoutant ce qui doit être rajouté);
Il en déduit la lettre correspondante et la stocke à la suite du mot codé.

Don nul besoin de liste. (contrairement au 2nd prgm qu'il avait proposé).
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 17:50

Bravo à vous deux ! Merci.

EDIT : Encore un problème → il m'affiche que le codage de la première lettre, on ne peut pas entrer un texte entier ?
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 20:21

Tu as bien mis le For et le End?
Code:
For(X,1,length(Str1
...
End
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 21:03

Oui.
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par m@thieu41 Mer 30 Avr 2014 - 21:15

Heu... tu as sur ta calto le dernier code de Linka après sa dernière édition?
Je préfère demander vu que Linka a édité afin de corriger l'affichage du résultat.

Si oui:
donne moi la valeur de X et de L après l'utilisation du prgm (ainsi que la chaine saisie en entrée).
m@thieu41
m@thieu41
----------------------
----------------------

Messages : 939
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Linkakro Mer 30 Avr 2014 - 21:26

J'avais bien commis diverses erreurs d'étourderies qui sont maintenant corrigées, et j'ai tout testé moi-même.

seq(=suite(
sub(=sous-chaîne(
inString=carChaîne(
int=partEnt
iPart=ent(

J'imagine que tu peux avoir confondu Str1 et Str3 dans les calculs de longueur length(Str1) et L.
Linkakro
Linkakro
----------------------
----------------------

Messages : 533
Points Concours : 55
Productivité : 31
Date d'inscription : 30/07/2013
Localisation : origine région centre, puis perpignan
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par pito2901 Mer 30 Avr 2014 - 23:28

int j'ai juste mis partEnt, j'édite mon programme et je vous dis. ← c'était une autre erreur de traduction
puis j'ai oublié la ligne de commande qui définie la longueur de la chaîne stockée dans L...

Voilà, à présent ça fonctionne merci beaucoup !

Je poste ce programme dans les programmes des internautes.
pito2901
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Programme de Cryptographie Empty Re: Programme de Cryptographie

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum