
Envoyé par
Comandant Chaos
caracSaisie est forcement compris entre 0 et 94 ( il ne peut pas être supérieur ou inférieur car il s'agit d'une partie précédente du programme qui ne distribue que des valeurs entre ces deux nombre en excluant 19 et 5)
Condition pas suffisante...
Détaillons un peu les choses. Je reprends tes notations a,b,c,x qui sont tous des entiers naturels dans [0,94].
1 2
| c congru à ax+b [95] <=> il existe k tel que ax+b-c = 95k
<=> il existe k tel que x=(95k+c-b)/a est entier |
x étant dans N94, un tel k devra donc vérifier :
soit
(b-c)/95 < k < (94a+b-c)/95
k sera donc unique si et seulement si (94a+b-c)/95 - (b-c)/95 < 1, ou encore ssi 94a < 95...
Ce qui ne sera vrai que pour a=1...
Exemple avec a=1
a=1
b=10
Je prends x=20, alors ax+b = 30 alors c=30.
Si je reprends l'inégalité concernant k :
(b-c)/95 < k < (94a+b-c)/95
ça donne
-20 < k < 95/74
et la seule valeur de k est 0, mon x sera donc unique et x=(c-b)/a=20.
Exemple avec a > 1
a=5
b=21
Je prends x=36 par exemple. Alors c=11 (5x36+21=95x2+11).
Je reprends mon inégalité sur k
(b-c)/95 < k < (94a+b-c)/95
qui donne
10/95 < k < 480/95 soit 0 < k < 5.
Tu constates bien qu'il y aura 5 valeurs de k pour lesquelles je peux trouver un x qui convient et compris entre 0 et 94...
k=0, x=-2 à écarter
k=1, x=17
k=2, x=36
k=3, x=55
k=4, x=74
k=5, x=93
En conclusion, il faudra des contraintes supplémentaires pour construire quelque chose de bijectif...
Steph
Partager