Les nombres pandigitaux divisible par 11Renée De Graeve2019 |
1 Les entiers pandigitaux
Définition : entier pandigital
Un entier pandigital (en grec pan=tout) est un nombre de 10 chiffres
différents, mais bien sûr, 0 n’est pas le premier chiffre.
Exercice0
Trouver le plus grand entier pandigital et le plus petit entier
pandigital.
Combien y-a-t-il d’entiers pandigitaux ?
Réponse
On a et .
Il y a 9 possibilités pour le premier chiffre (car il ne peut pas être égal à 0)
Il y a 9 possibilités pour le second chiffre,
Il y a 8 possibilités pour le troisième chiffre,
etc...
Il y a 2 possibilités pour le neuvième chiffre,
Il y a 1 possibilité pour le dixième chiffre.
Ily a donc entiers pandigitaux.
On tape :
Il y a donc 3265920 entiers pandigitaux.
2 Les entiers pandigitaux divisibles par 11
2.1 Critère de divisibilité par 11
Montrer que :
,,,
Montrer que si alors et .
On en déduit :
Si on a :
et
On en déduit que :
les puissances paires de 10 sont des multiples de 11 augmentés de 1 et
les puissances impaires de 10 sont des multiples de 11 diminués de 1.
On a donc Le critère de divisibilité par 11 :
Le reste de la division de par 11 est égal au
reste de la division par 11 de la différence de la somme des
et de la somme des .
On augmente s’il y a lieu la première somme d’un multiple de 11 pour que la
soustraction soit possible.
Par exemple :
si , le reste de la
division par 11 de est : ou
avec pour que
.
Définition : rang pair, rang impair
Soit un nombre écrit en base 10 :
On dira que les chiffres de rang pair sont : le chiffre des unités,
le chiffre des centaines etc...et que les chiffres de rang impair sont : le chiffre des dizaines, le chiffre des milles etc...
Par exemple si , ses chiffres de rang pair sont 1,7,4 et ceux de rang
impair sont 0,5,2.
Exercice
Trouver le reste de la division par 11 de 625814, de 29395 de 192738 et de
918372.
On a :
pour 625814 on a : S1=6+5+1=12 et S0=2+8+4=14 S0-S1=2
Le reste de la division de 625814 par 11 est 2.
pour 29395 on a : S1=9+9=18 et S0=5+3+2=10 S0+11-S1=3
Le reste de la division de 29395 par 11 est 3.
pour 192738 on a : S1=1+2+3=6 et S0=8+7+9=24 S0-11-S1=24-11-6=7
Le reste de la division de 192738 par 11 est 7.
pour 918372 on a : S1=9+8+7=24 et S0=1+3+2=6 S0+22-S1=4 (on remarquera que la
somme S0 (resp S1) correspondant à 918372 est égale à la somme S1
(resp S0) correspondant à 19273).
Le reste de la division de 918372 par 11 est 4.
On vérifie et on tape :
2.2 Le plus grand entier pandigital divisible par 11
Exercice1
Trouver , le plus grand entier pandigital divisible par 11.
Le plus grand nommbre qui s’écrit avec 10 chiffres différents est :
.
Cherchons tout d’abord le reste de la division par 11 de .
On a pour :
S0=0+2+4+6+8=20 et S1=1+3+5+7+9=25 donc
le reste R de la division de par 11 est R=11+20-25=6.
Pour trouver un nombre divisible par 11, il faut avoir :
soit S0-S1=11, soit S0-S1=-11
En effet puisque S0+S1=45, S0 et S1 ont des parités différentes.
Donc on ne peut pas avoir :
S0-S1=0, ni 22+S0-S1=0, ni S0-S1-22=0
On ne peut pas avoir :
S0-S1=33, ni S0-S1=-33 car abs(S0-S1)<=35-10=25.
En effet la valeur minimale de S0 ou
de S1 est 0+1+2+3+4=10 et la valeur maximale de S0 ou de S1 est 45-10=35 donc
on a 10-35=-25<=S0-S1<=35-10=25.
Pour avoir S0-S1=11 et S0+S1=45 il faut avoir S0=28 et S1=17.
Pour avoir S0-S1=-11 et S0+S1=45 il faut avoir S0=17 et S1=28.
Pour pour avoir S0-S1=-11 on doit diminuer S0 de 3 et augmenter
S1 de 3 et
pour avoir S0-S1=11 on doit augmenter S0 de 8 et diminuer S1 de 3.
Pour avoir S0-S1=-11 :
S0=20-3=17, S1=25+3=28, S0-S1=17-28=-11.
on peut le faire soit en échangeant un chiffre figurant dans S0
avec un chiffre figurant dans S1, soit en échangeant 3 chiffres figurant dans
S0 avec trois chiffres figurant dans S1 pour avoir S0=17 et S1=28.
on peut par exemple échanger :
soit 1 avec 4 pour obtenir S0=0+2+1+6+8 et S1=4+3+5+7+9,
soit 3 avec 6 pour obtenir S0=0+2+4+3+8 et S1=1+6+5+7+9,
soit 5 avec 8 pour obtenir S0=0+2+4+6+5 et S1=1+3+8+7+9.
ou encore échanger
1 avec 2 et 3 avec 4 et 5 avec 6 pour obtenir S0=0+1+3+5+8 et S1=2+4+6+7+9,
1 avec 2 et 3 avec 4 et 7 avec 8 pour obtenir S0=0+1+3+6+7 et S1=2+4+5+8+9,
1 avec 2 et 5 avec 6 et 7 avec 8 pour obtenir S0=0+1+4+5+7 et S1=2+3+6+8+9,
3 avec 4 et 5 avec 6 et 7 avec 8 pour obtenir S0=0+2+3+5+7 et S1=1+4+6+8+9.
Pour avoir S0-S1=11 :
on doit augmenter S0 de 8 et diminuer S1 de 8 :
S0=20+8=28 et S1=25-8=17 S0-S1=28-17=11.
Puisque 8=7+1=5+3, on peut par exemple échanger :
soit 0 avec 7 et 2 avec 3 (ou 4 avec 5, ou 8 avec 9) pour obtenir :
S0=7+3+4+6+8 et S1=1+2+5+0+9 (ou S0=7+2+5+6+8 et S1=1+3+4+0+9, ou S0=7+2+4+6+9
et S1=1+3+5+0+8),
soit 2 avec 9 et 0 avec 1 (ou 4 avec 5, ou 6 avec 7) pour obtenir S0=1+9+4+6+8
et S1=0+3+5+7+2 (ou S0=0+9+5+6+8 et S1=1+3+4+7+2 ou S0=0+9+4+7+8 et
S1=1+3+5+6+2),
soit 0 avec 5 et 4 avec 7 (ou 6 avec 9) pour obtenir S0=5+2+7+6+8=28 et
S1=1+3+0+4+9=17 (ou S0=5+2+4+9+8 et S1=1+3+0+7+6),
soit 2 avec 7 et 0 avec 3 (ou 6 avec 9) pour obtenir S0=3+7+4+6+8 et
S1=1+0+5+2+9 (ou S0=0+7+4+9+8 et S1=1+3+5+2+6),
soit 4 avec 9 et 0 avec 3 (ou 2 avec 5) pour obtenir S0=3+2+9+6+8 et
S1=1+0+5+7+4 (ou S0=0+5+9+6+8 et S1=1+3+2+7+4).
On peut ensuite mettre les chiffres constituant S0 (resp S1)à n’importe place
de rang pair (resp impair).
Comment trouver le plus grand entier ?
Il faut échanger 2 chiffres aussi petits que possible : ici c’est 1 et 4.
En échangeant 1 et 4, on a obtenu S0=0+2+1+6+8 et S1=4+3+5+7+9.
Pour avoir le plus grand nombre , il suffit
d’ordonner en décroissant les chiffres de rang pair (8,6,2,1,0) et d’ordonner
en décroissant les chiffres de rang impair 9,7,5,4,3.
On obtient alors .
2.3 Le plus petit entier pandigital divisible par 11
Exercice2
Trouver le plus petit entier pandigital divisible par 11.
Le plus petit nommbre qui s’écrit avec 10 chiffres différents est :
puisque l’écriture d’un nombre ne commence pas par 0.
On a pour :
S0=0+3+5+7+9=24 et S1=1+2+4+6+8=21 donc
le reste R de la division de par 11 est R=S0-S1=24-21=3.
Pour trouver un nombre divisible par 11, il faut avoir :
soit S0-S1=11, soit S0-S1=-11.
Pour avoir S0-S1=11 et S0+S1=45 il faut avoir S0=28 et S1=17.
Pour , pour avoir S0-S1=-11 et S0+S1=45 il faut avoir S0=17 et
S1=28.
Pour avoir S0-S1=11 il faut donc augmenter S0 de 4 et diminuer S1 de 4.
Pour avoir S0-S1=-11 il faut donc diminuer S0 de 7 et augmenter S1 de 7.
Pour avoir S0-S1=11 :
Puisque 4=1+3, on peut échanger :
5 avec 8 et 3 avec 4 (ou 7 avec 8 et 3 avec 36 ou ce qui est équivalent 3 avec 8 et 7 avec 6).
Pour avoir S0-S1=-11 :
pour diminuer S0 de 7 il faut échanger :
9 avec 2 (ou 8 avec 1).
Pour avoir le plus petit nombre il faut donc échanger 8 avec 5 et 4 avec 3.
On obtient S0=0+4+8+7+9=28=0+4+7+8+9 et S1=1+2+3+5+6=17.
On obtient alors :
.
2.4 Le nombre d’entiers pandigitaux divisibles par 11
Exercice3
Trouver toutes les suites croissantes des chiffres constituant S0 (chiffres de
rang pair) et en déduire la suite croissante correspondante des chiffres de S1
(chiffres de rang impair) pour que soit divisible par 11.
On rappelle : le chiffre des unités est de rang 0 (pair), celui des dizaines
est de rang 1 (impair) etc.....
Combien-y-a-t-il d’entiers pandigitaux divisibles par 11 ?
On pose :
On sait que si est divisible par 11 on a soit S0=17 et S1=28, soit S1=17 et
S0=28.
On cherche donc les valeurs de vérifiant :
et .
Les valeurs trouvées seront donc soit les chiffres qui constituent S0 (on peut alors en déduire S1), soit les chiffres qui constituent S1 (on peut alors en
déduire S0).
On obtient :
0+1+2+5+9=17 donc 3+4+6+7+8=28
0+1+2+6+8=17 donc 3+4+5+7+9=28
0+1+3+4+9=17 donc 2+5+6+7+8=28
0+1+3+5+8=17 donc 2+4+6+7+9=28
0+1+3+6+7=17 donc 2+4+5+8+9=28
0+1+4+5+7=17 donc 2+3+6+8+9=28
0+2+3+4+8=17 donc 1+5+6+7+9=28
0+2+3+5+7=17 donc 1+4+6+8+9=28
0+2+4+5+6=17 donc 1+3+7+8+9=28
1+2+3+4+7=17 donc 0+5+6+8+9=28
1+2+3+5+6=17 donc 0+4+7+8+9=28
On a trouvé 11*2=22 possibilités pour les chiffres qui constituent S0.
Si S0 est constituée des chiffres 0,1,2,5,9 alors S1 est constituée des
chiffres 3,4,6,7,8 et si S0 est constituée des chiffres 3,4,6,7,8 alors S1
est constituée des chiffres 0,1,2,5,9.
La première ligne donne comme solution 2 nombres qui sont :
et
La somme S0 de est égale à la somme S1 de et
la somme S1 de est égale à la somme S0 de et
les chiffres de S0 (resp de S1) sont ordonnés (resp ).
Chaque permutation des chiffres de S0 ou des chiffres de S1,
ne mettant pas 0 comme chiffre de rang 9, donne un entier pandigital.
Pour il y a :
5!=120 permutations pour les chiffres de S0 et 5!=120 permutations pour les
chiffres de S1 donc
peut générer nombres pandigitaux.
Pour il y a :
5!=120 permutations pour les chiffres de S0 et 5!-4!=4*4!=96 permutations pour
les chiffres de S1 (car il y a 4! permutations qui commencent par 0) donc
génère possibilites.
La première ligne génère .
Il y a 11 lignes donc 25920*11=285120 entiers pandigitaux qui sont divisibles
par 11.
Il y a donc 10!-9!=9*9!=3265920 entiers pandigitaux et 285120 entiers
pandigitaux qui sont divisibles par 11.
Il y a donc parmi les entiers pandigitaux une proportion de
qui sont divisibles par 11 alors que
parmi les entiers la proportion est de .
2.5 Nombre d’entiers pandigitaux divisible par 11 dans [m=1024375869,1024600000]
Exercice4
1. Calculer le nombre d’entiers pandigitaux divisibles par 11 qui appartiennent
à .
2. Calculer le nombre d’entiers pandigitaux divisibles par 11 dans
.
3. Calculer le nombre d’entiers pandigitaux divisibles par 11 qui appartiennent
à [9876000000 M].
4. Calculer le nombre d’entiers pandigitaux divisibles par 11 qui appartiennent
à [9876500000 M].
Correction
1. On a , donc ces entiers pandigitaux sont de la forme :
les et les sont tous différents et
appartienent à [3,5,6,7,8,9].
et ils sont divisibles par 11 donc on a :
et i.e et
ou bien
et i.e et
La plus petite somme possible est 3+5+6=14 on ne peut donc pas avoir
.
Donc on cherche et avec
on trouve 3+5+6=14 et 7+8+9=24 donc:
ou ou
ou et
ou ou
ou ou
ou
Il y a donc 4*6=24 nombres pandigitaux divisibles par 11 dans :
2. Dans [m,1025000000], peut être égal à 6 donc on peut avoir :
ou
Le nombre d’entiers pandigitaux divisibles par 11 dans [m,1025000000] est donc
de 6*6=36.
3. pour on a :
S0= et S1=
On cherche pour avoir S0=17 ou S1=17.
Pour avoir S1=17 il faut que ce qui est impossible
puisque
Pour avoir S0=17 il faut que donc
et
il reste pour les chiffres donc
On retrouve lorsque et
ce qui fait bien
Il y a donc nombres pandigitaux divisibles par 11 dans
4. Pour avoir les nombres pandigitaux divisibles par 11 qui sont dans
on doit avoir
Il y donc nombres pandigitaux divisibles par 11 dans
ce sont :
2.6 Un programme pour vérifier les différents résultats
2.7 Un premier programme
Un premier programme pour les entiers de 4 chiffres différents appartenant
à [0,1,2,3] mais bien sûr 0 n’est pas le premier chiffre que l’on appelle
ici Digit04.
Pour transformer une liste de chiffres L en un nombre n on utilise
la commande : n:=convert(L,base,10).
On a donc :
convert([0,1,2,3],base,10) renvoie 3210
convert([3,2,1,0],base,10) renvoie 123
En utilisant la commande revlist(L) qui renvoie la liste L
inversée, on a :
convert(revlist([0,1,2,3]),base,10) renvoie 123 et un tel nombre ne
fait pas partie de l’ensemble Digit04 alors que
convert(revlist([3,2,1,0]),base,10) renvoie 3210.
Pour générer la permutation suivante de L dans l’ordre
lexicographique ( et ) on utilise la commande
nextperm(L).
Si L:=[0,1,2,3] on a :
On obtient R0 :
[0,1,2,3],[0,1,3,2],[0,2,1,3],[0,2,3,1],[0,3,1,2],[0,3,2,1]
donc ces listes ne donneront pas des entiers appartenant à
Digit04 car elles commencent par 0 et on a
qui est une suite croissante allant de 123 à 321.
Ces listes ne donneront pas des entiers appartenant à Digit04 car
elles commencent par 0 et donc n:=convert(revlist(L),base,10)
renvoie une liste croissante allant de 123 à 321.
Lorsque L vaut [0,3,2,1] et on a :
renvoie :
[1,0,2,3],[1,0,3,2],[1,2,0,3],[1,2,3,0],[1,3,0,2],[1,3,2,0],[2,0,1,3],
[2,0,3,1],[2,1,0,3],[2,1,3,0],[2,3,0,1],[2,3,1,0],[3,0,1,2],[3,0,2,1],
[3,1,0,2],[3,1,2,0],[3,2,0,1],[3,2,1,0]
Attention
Si on a L:=[3,2,1,0] alors nextperm(L) renvoie undef.
Exercice5
Écrire un programme qui trouve les entiers de Digit04 divisible par
11.
Solution
On tape pour trouver les entiers de Digit04 divisible par 11 :
digital04():={ local k,L,L11,n1,n0,n; L:=[0,1,2,3]; n1:=4!-3!;n0:=3!-1; L11:=NULL; pour k de 1 jusque n0 faire L:=nextperm(L); fpour; pour k de 1 jusque n1 faire L:=nextperm(L); n:=convert(revlist(L),base,10); si irem(n,11)==0 alors L11:=L11,n;fsi; fpour; return [L11]; }:;
onload
On amélore la vitesse du programme si :
on enlève le premier pour et on initialise L par
L:=[0,3,2,1]; et
surtout si on modifie L11 en place en remplaçant :
L11:=L11,n par L11.append(n).
Mais cette amélioration est peu visible pour les entiers de Digit14
Digital04():={ local k,L,L11,n1,n; L:=[0,3,2,1]; n1:=4!-3!; L11:=NULL; pour k de 1 jusque n1 faire L:=nextperm(L); n:=convert(revlist(L),base,10); si irem(n,11)==0 alors L11.append(n);fsi; fpour; return [L11]; }:;
onload
2.8 Le programme vérifiant les différents résultats
Exercice6
Écrire un programme qui trouve les entiers pandigitaux divisibles par
11.
Solution
Attention !!!!
Quand une liste XXXL devient longue, XXXL:=XXXL,n prend de plus en
plus de temps. Pour gagner du temps la solution est de modifier XXXL en
place, en écrivant XXXL.append(n) au lieu de XXXL:=XXXL,n.
On tape :
pandigital():={ local k,D,D11,n1,n0,n; D:=[0,1,2,3,4,5,6,7,8,9]; n0:=9! n1:=10!-9!; D11:=NULL; pour k de 1 jusque n0 faire D:=nextperm(D); fpour; pour k de 1 jusque n1 faire D:=nextperm(D); n:=convert(revlist(D),base,10); si irem(n,11)==0 alors D11.append(n);fsi; fpour; return [D11]; }:;
onload
ou on supprime la première boucle pour et on initialise D par :
D:=[0,9,8,7,6,5,4,3,2,1]; car :
On retrouve bien la valeur du minimum .
On tape :
Pandigital():={ local k,D,D11,n1,n; D:=[0,9,8,7,6,5,4,3,2,1]; n1:=10!-9!; D11:=NULL; pour k de 1 jusque n1 faire D:=nextperm(D); n:=convert(revlist(D),base,10); si irem(n,11)==0 alors D11.append(n);fsi; fpour; return [D11]; }:;
onload
Le nombre d’entier pandigitaux divisible par 11 (soyez patient il faut attendre
que Pandigital() vous fournisse la liste des pandigitaux divisibles
par 11 et la longueur de cette liste :
On trouve bien 285120.
Le minimum :
Le maximum :
Les 24 premiers entiers pandigitaux divisibles par 11 :
On prolonge cette suite jusqu’au 37ième pour montrer le 37ième ne convient pas (le dernier indice est 36 car les indices commencent à 0) :
Les 37 derniers entiers pandigitaux divisibles par 11 :
Les 12 derniers entiers pandigitaux divisibles par 11 :
9876503142,9876503241,9876504132,9876504231,9876513042,9876513240,
9876514032,9876514230,9876523041,9876523140,9876524031,9876524130
Remarque
On peut trouver les entiers pandigitaux divisibles par 11 qui sont dans
directement en modifiant le programme précédent.
Il suffit de débuter le programme avec D:=[9,8,7,6,5,0,1,2,3,4]; et
n1:=5! car il faut tester les 5! permutations à partir D
(5! puisque size([0,1,2,3,4]) vaut 5).
On tape :
Pandigital1(D,n1):={ local k,D11,n; D11:=NULL; pour k de 1 jusque n1 faire n:=convert(revlist(D),base,10); si irem(n,11)==0 alors D11.append(n);fsi; fpour; D:=nextperm(D); return [D11]; }:;
onload
Exercice
Modifier le programme précédent pour qu’il soit valable quelque soit D
i.e. il faut initialiser correctement n1.
3 Amusement : Un carré magique de 4x4 entiers pandigitaux
Voici le tableau de Kurchan (Rodolpho Kurchan de Buenos Aires) : c’est un
carré magique dont la somme est le nombre pandigital 4129607358.
1037956284 | 1036947285 | 1027856394 | 1026847395 |
1026857394 | 1027846395 | 1036957284 | 1037946285 |
1036847295 | 1037856294 | 1026947385 | 1027956384 |
1027946385 | 1026957384 | 1037846295 | 1036857294 |
On vérifie :
La somme des lignes est égale à 4129607358 :
La somme des colonnes est égale à 4129607358 :
La somme des diagonales est égale à 4129607358 :