Programme cryptage
Posted: 09 Oct 2013, 19:19
Bonjour, j'ai un petit programme à faire un programme:
Je souhaite que celui-ci me réalise tout seul un "chiffrement affine":
- Pour cela, l'utilisateur rentre une chaîne de caractères
- Puis le programme fait correspondre à chaque lettre son chiffre (0 pour A, 1 pour B...)
- Ensuite, est appliquée à chaque chiffre la fonction affine voulue (x->ax+b, ou a et b sont rentrés par l'utilisateur)
- Puis on récupère le reste de la division du chiffre obtenu par 26
- Et on fait correspondre la lettre au chiffre obtenu
Ainsi, par exemple: Pour une chaine: "Chiff" avec a = 7 et b = 17, on obtient au final "FOVAA"
Voici mon programme, qui m'affiche une erreur "Variable pas définie":
Savez vous d'ou peut provenir mon erreur?
Je me suis peut être aussi un peu compliqué dans le programme, on peu surement faire un peu plus simple.
Je souhaite que celui-ci me réalise tout seul un "chiffrement affine":
- Pour cela, l'utilisateur rentre une chaîne de caractères
- Puis le programme fait correspondre à chaque lettre son chiffre (0 pour A, 1 pour B...)
- Ensuite, est appliquée à chaque chiffre la fonction affine voulue (x->ax+b, ou a et b sont rentrés par l'utilisateur)
- Puis on récupère le reste de la division du chiffre obtenu par 26
- Et on fait correspondre la lettre au chiffre obtenu
Ainsi, par exemple: Pour une chaine: "Chiff" avec a = 7 et b = 17, on obtient au final "FOVAA"
Voici mon programme, qui m'affiche une erreur "Variable pas définie":
- Code: Select all
Define Cryptage()=
Prgm
:Local a,b,c,d,e,f,ß,þ
:Disp "Chiffrement affine (ax+b) "
:RequestStr "Lettres?",b
:Request "a?",e
:Request "b?",f
:ß:={a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}
:1→a
:dim(b)→d
:For j,1,d
:left(b,a)→c
:right(c,1)→c
:inString("abcdefghijklmnopqrstuvwxyz",c)→þ
:remain(þ*e+f,26)→þ
:Disp ß[þ]
:a+1→a
:EndFor
:EndPrgm
Savez vous d'ou peut provenir mon erreur?
Je me suis peut être aussi un peu compliqué dans le programme, on peu surement faire un peu plus simple.