\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{latexsym}
\usepackage{amssymb}
\usepackage{times}
\usepackage{ifpdf}
\usepackage{makeidx}
\usepackage{graphicx}
\ifpdf
 \usepackage[pdftex,colorlinks]{hyperref}
\else
 \usepackage[ps2pdf,breaklinks=true,colorlinks=true,linkcolor=red,citecolor=green]{hyperref}
 \fi

\newtheorem{rem}{Remark}
\newcommand{\R}{{\mathbb{R}}}
\newcommand{\C}{{\mathbb{C}}}
\newcommand{\Z}{{\mathbb{Z}}}
\newcommand{\N}{{\mathbb{N}}}
\newcommand{\Q}{{\mathbb{Q}}}
\newcommand{\atan}{{\mbox{atan}}}
\input{giac.tex}
\giacmathjax
\title{Les nombres pandigitaux divisible par 11}
\author{Ren\'ee De Graeve}
\date{2019}
\begin{document}
\begin{giacjshere}
\maketitle
\newpage
%pandigitaux.xws
\section{Les entiers pandigitaux}
{\bf D\'efinition : entier pandigital}\\
Un entier pandigital (en grec pan=tout) est un nombre de 10 chiffres 
diff\'erents, mais bien s\^ur, 0 n'est pas le premier chiffre.\\
{\bf Exercice0}\\
Trouver $a$ le plus grand entier pandigital et $b$ le plus petit entier 
pandigital.\\
Combien y-a-t-il d'entiers pandigitaux ?\\
{\bf R\'eponse}\\
 On a $a=9876543210$ et $b=1023456789$.\\
Il y a 9 possibilit\'es pour le premier chiffre (car il ne peut pas \^etre \'egal \`a 0)\\
Il y a 9 possibilit\'es pour le second  chiffre,\\ 
Il y a 8 possibilit\'es pour le troisi\`eme  chiffre,\\ 
etc...\\
Il y a 2 possibilit\'es pour le neuvi\`eme  chiffre,\\
Il y a 1 possibilit\'e pour le dixi\`eme  chiffre.\\
Ily a donc $9*9!$ entiers pandigitaux.\\
On tape :\\
\giacinputbig{9*9!}\\
Il y a donc 3265920 entiers pandigitaux.
\section{Les entiers pandigitaux divisibles par 11}
\subsection{Crit\`ere de divisibilit\'e par 11}
Montrer que :
$10^0=1$,$10^1=11-1$,$100=9*11+1$,$1000=1001-1=11*91-1$\\
Montrer que si $10^{2p}=a*11+1$ alors $10^{2p+1}=b*11-1$ et $10^{2p+2)}=c*11+1$.\\
On en d\'eduit :\\
Si  $10^{2*p}=a*11+1$ on a :\\
$10^{2*p+1}=10*10^{2*p}=(11-1)*(a*11+1)=11*(11*a+1-a)-1$ et \\
$10^{2*(p+2)}=100*10^{2*p}=(9*11+1)*(a*11+1)=11*(9*a*11+a+9)+1$\\
On en d\'eduit que :\\
les puissances paires de 10 sont des multiples de 11 augment\'es de 1 et\\
les puissances impaires de 10 sont des multiples de 11 diminu\'es de 1.\\
On a donc {\bf Le crit\`ere de divisibilit\'e par 11} :\\
Le reste de la division de $n=\sum_{k=0}^Na_k*10^k$ par 11 est \'egal au
reste de la division par 11 de la diff\'erence de la somme des $a_{2p}$
 et de la somme des $a_{2p+1}$.\\
 On augmente s'il y a lieu la premi\`ere somme d'un multiple de 11 pour que la 
soustraction soit possible.\\
Par exemple :\\
si $n=a_710^7+a_610^6+a_510^5+a_410^7+a_310^3+a_210^2+a_110^1+a_0$, le reste de la 
division par 11 de $n$ est : $(a_0+a_2+a_4+a_6)-(a_1+a_3+a_5+a_7)$ ou \\
$11*k+(a_0+a_2+a_4+a_6)-(a_1+a_3+a_5+a_7)$ avec $k\in N$ pour que 
$0\leq 11*k+(a_0+a_2+a_4+a_6)-(a_1+a_3+a_5+a_7)<11$.\\
{\bf D\'efinition : rang pair, rang impair }\\
Soit un nombre $n$ \'ecrit en base 10 : $n=\sum_{k=0}^Na_k*10^k$\\
On dira que les chiffres de rang pair sont : $a_0$ le chiffre des unit\'es, 
$a_2$  le chiffre des centaines etc...et que les chiffres de rang impair sont : $a_1$  le chiffre des dizaines, $a_3$  le chiffre des milles etc...\\
Par exemple si $n=245701$, ses chiffres de rang pair sont 1,7,4 et ceux de rang
 impair sont 0,5,2.\\
{\bf 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 \`a 918372 est \'egale \`a la somme S1 
(resp S0) correspondant \`a 19273).\\
Le reste de la division de 918372 par 11 est 4.\\
On v\'erifie et on tape :\\
\giacinputbig{irem([625814,29395],11)}\\
\giacinputbig{irem([192738,918372],11)}
\subsection{Le plus grand entier pandigital divisible par 11}
{\bf Exercice1}\\
Trouver $M$, le plus grand entier pandigital divisible par 11.\\
Le plus grand nommbre qui s'\'ecrit avec 10 chiffres diff\'erents est :\\
$a=9876543210$.\\
Cherchons tout d'abord le reste de la division par 11 de $a=9876543210$.\\
On a pour $a=9876543210$ : \\
S0=0+2+4+6+8=20 et S1=1+3+5+7+9=25 donc\\
le reste R de la division de $a$ 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\'es diff\'erentes.\\
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 $a=9876543210$ 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.\\
{\bf Pour avoir S0-S1=-11 :}\\
S0=20-3=17, S1=25+3=28, S0-S1=17-28=-11.\\
on peut le faire soit en \'echangeant un chiffre figurant dans S0 
avec un chiffre figurant dans S1, soit en \'echangeant 3 chiffres figurant dans 
S0  avec trois chiffres figurant dans S1 pour avoir S0=17 et S1=28.\\
on peut par exemple \'echanger :\\
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  \'echanger \\ 
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.\\
{\bf 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 \'echanger  :\\
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)\`a n'importe place 
de rang pair (resp impair).\\ 
Comment trouver le plus grand entier ?\\
Il faut \'echanger 2 chiffres aussi petits que possible : ici c'est 1 et 4.\\
En \'echangeant 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 $N$, il suffit 
d'ordonner en d\'ecroissant les chiffres de rang pair (8,6,2,1,0) et d'ordonner 
en d\'ecroissant les chiffres de rang impair 9,7,5,4,3.\\
 On obtient alors $M=9876524130$.\\
\giacinputbig{irem(9876524130,11)}
\subsection{Le plus petit entier pandigital divisible par 11}
{\bf Exercice2}\\
Trouver $m$ le plus petit entier pandigital divisible par 11.\\
Le plus petit nommbre qui s'\'ecrit avec 10 chiffres diff\'erents est :\\
$b=1023456789$ puisque l'\'ecriture d'un nombre ne commence pas par 0.\\
On a pour $b=1023456789$ : \\
S0=0+3+5+7+9=24 et S1=1+2+4+6+8=21 donc\\
le reste R de la division de $b$ 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 $b=1023456789$, 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.\\
{\bf Pour avoir S0-S1=11 :}\\
Puisque 4=1+3, on peut \'echanger :\\
5 avec 8 et 3 avec 4 (ou 7 avec 8 et 3 avec 36 ou ce qui est \'equivalent 3 avec 8 et 7 avec 6).\\
{\bf Pour avoir S0-S1=-11 :}
pour diminuer S0 de 7 il faut \'echanger :\\
9 avec 2 (ou 8 avec 1).\\
Pour avoir le plus petit nombre il faut donc \'echanger 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 :\\
$m=1024375869$.\\
\giacinputbig{irem(1024375869,11)}
\subsection{Le nombre d'entiers pandigitaux divisibles par 11}
{\bf Exercice3}\\
Trouver toutes les suites croissantes des chiffres constituant S0 (chiffres de 
rang pair) et en d\'eduire la suite croissante correspondante des chiffres de S1
 (chiffres de rang impair) pour que $n$ soit divisible par 11.\\
On rappelle : le chiffre des unit\'es 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 :\\
$n=a_910^9+a_810^8+a_710^7+a_610^6+a_510^5+a410^4+a_410^4+a_310^3+a_210^2+10a_1+a_0$\\
On sait que si $n$ est divisible par 11 on a soit S0=17 et S1=28, soit S1=17 et
 S0=28.\\
On cherche donc les valeurs de $x_0,x_1,x_2,x_3,x_4$ v\'erifiant :\\
 $x_0+x_1+x_2+x_3+x_4=17$ et $0\leq x_0<x_1<x_2<x_3<x_4\leq 9$.\\
Les valeurs trouv\'ees seront donc soit les chiffres qui constituent S0 (on peut alors en d\'eduire S1), soit les chiffres qui constituent S1 (on peut alors en 
d\'eduire 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\'e 11*2=22 possibilit\'es pour les chiffres qui constituent S0.\\
Si S0 est constitu\'ee des chiffres 0,1,2,5,9 alors S1 est constitu\'ee des 
chiffres 3,4,6,7,8 et si S0 est constitu\'ee des chiffres 3,4,6,7,8 alors S1 
est constitu\'ee des chiffres 0,1,2,5,9.\\
La premi\`ere ligne donne comme solution 2 nombres  qui sont :\\
$n1=8975624130$ et $n2=9857261403$\\
La somme S0 de $n1$ est \'egale \`a la somme S1 de $n2$ et \\
la somme S1 de $n1$ est \'egale \`a la somme S0 de $n2$ et \\
les chiffres de S0 (resp de S1) sont ordonn\'es $a_0<a_2...<a_9$ (resp $a_1<a_3<...<a_8$).\\
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 $n1$ il y a :\\
5!=120 permutations pour les chiffres de S0 et 5!=120 permutations pour les 
chiffres de S1 donc\\
 $n1$ peut g\'en\'erer $5!^2=120^2=14400$ nombres pandigitaux.\\
Pour $n2$ 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\\
$n2$ g\'en\`ere $5!*4!*4=120*96=11520$ possibilites.\\
La premi\`ere ligne g\'en\`ere $5!^2+5!*4!*4=14400+11520=25920$.\\
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 
$\frac{285120}{3265920}=\frac{11}{126}$ qui sont divisibles par 11 alors que
parmi les entiers la proportion est de $\frac{1}{11}=\frac{11}{121}$. 
\subsection{Nombre d'entiers pandigitaux divisible par 11 dans [m=1024375869,1024600000]}
{\bf Exercice4}\\
1. Calculer le nombre d'entiers pandigitaux divisibles par 11 qui appartiennent 
\`a $[m,1024600000]$.\\
2. Calculer le nombre d'entiers pandigitaux divisibles par 11 dans 
$[m,1025000000]$.\\
3. Calculer le nombre d'entiers pandigitaux divisibles par 11 qui appartiennent 
\`a [9876000000 M].\\
4. Calculer le nombre d'entiers pandigitaux divisibles par 11 qui appartiennent 
\`a [9876500000 M].\\
{\bf Correction}\\
1. On a $m=1024375869$, donc ces entiers pandigitaux sont de la forme :\\
 $1024x_1y_1x_2y_2x_3y_3$ les $x_i$ et les $y_i$ sont tous diff\'erents et 
appartienent \`a [3,5,6,7,8,9].\\
et ils sont divisibles par 11 donc on a :\\
$1+2+x_1+x_2+x_3=28$ et $4+y_1+y_2+y_3=17$ i.e $x_1+x_2+x_3=25$ et 
$y_1+y_2+y_3=13$ \\
ou bien\\
$1+2+x_1+x_2+x_3=17$ et $4+y_1+y_2+y_3=28$ i.e $x_1+x_2+x_3=14$ et 
$y_1+y_2+y_3=24$\\
La plus petite somme possible est 3+5+6=14 on ne peut donc pas avoir 
$y_1+y_2+y_3=13$.\\
Donc on cherche  $x_1+x_2+x_3=14$ et $y_1+y_2+y_3=24$ avec $x_2\in [3,5]$\\
on trouve 3+5+6=14 et 7+8+9=24 donc:\\
$(x_1,x_2,x_3)=(3,5,6)$ ou $(x_1,x_2,x_3)=(3,6,5)$ ou\\
$(x_1,x_2,x_3)=(5,3,6)$ ou $(x_1,x_2,x_3)=(5,6,3)$  et\\
$(y_1,y_2,y_3)=(7,8,9)$ ou $(y_1,y_2,y_3)=(7,9,8)$ ou\\
$(y_1,y_2,y_3)=(8,7,9)$ ou $(y_1,y_2,y_3)=(8,9,7)$  ou\\
$(y_1,y_2,y_3)=(9,7,8)$ ou $(y_1,y_2,y_3)=(9,8,7)$\\
Il y a donc 4*6=24 nombres  pandigitaux divisibles par 11 dans $[m,1024600000]$:\\
$[1024375869,1024375968,1024376859,1024376958,1024385769,1024385967,1024386759,1024386957,1024395768,1024395867,1024396758,1024396857,$\\
$1024573869,1024573968,1024576839,1024576938,1024583769,1024583967,1024586739,1024586937,1024593768,1024593867,1024596738,1024596837]$\\
2. Dans [m,1025000000],$x_1$ peut \^etre \'egal \`a 6 donc on peut avoir :\\
$(x_1,x_2,x_3)=(6,3,5)$ ou $(x_1,x_2,x_3)=(6,5,3)$\\
Le nombre d'entiers pandigitaux divisibles par 11 dans [m,1025000000] est donc 
de 6*6=36.\\
3. pour $9876y_2x_2y_1x_1y_0x_0$ on a :\\
S0=$x_0+x_1+x_2+6+8$ et S1=$y_0+y_1+y_2+7+9$
On cherche $y_2x_2y_1x_1y_0x_0$ pour avoir S0=17 ou S1=17.
Pour avoir S1=17 il faut que $y_0+y_1+y_2=17-9-7=1$ ce qui est impossible 
puisque  $y_0+y_1+y_2\geq 0+1+2=0$
Pour avoir S0=17 il faut que $x_0+x_1+x_2=3=0+1+2$ donc\\
$([x_0,x_1,x_2]\in ([0,1,2],[0,2,1],[1,0,2],[1,2,0],[2,0,1],[2,1,0]$ et
il reste pour $(y_0,y_1,y_2)$ les chiffres $3,4,5$ donc\\
$[y_0,y_1,y_2]\in ([([3,4,5],[3,5,4],[4,3,5],[4,5,3],[5,3,4],[5,4,3]$\\
On retrouve $M$ lorsque $[x_0,x_1,x_2]=[2,1,0]$ et $[y_0,y_1,y_2]=[5,4,3]$
ce qui fait bien $M=9876524130$
Il y a donc $6*6=36$ nombres pandigitaux divisibles par 11 dans 
$[9876000000, M]$\\
4. Pour avoir les nombres pandigitaux divisibles par 11 qui sont dans 
$[9876500000, M]$ on doit avoir $[y_0,y_1,y_2]\in ([[5,3,4],[5,4,3])$\\
Il y donc $2*6=12$ nombres pandigitaux divisibles par 11 dans 
$[9876500000, M]$ ce sont :\\\\
$9876503142,9876503241,9876504132,9876504231,9876513042,9876513240,9876514032,9876514230,9876523041,9876523140,9876524031,9876524130$
\subsection{Un programme pour v\'erifier les diff\'erents r\'esultats}
\subsection{Un premier programme}
Un premier programme pour les entiers de 4 chiffres diff\'erents appartenant 
\`a [0,1,2,3] mais bien s\^ur 0 n'est pas le premier chiffre que l'on appelle 
ici {\tt Digit04}.\\
Pour transformer une liste de chiffres {\tt L} en un nombre {\tt n} on utilise 
la commande : {\tt n:=convert(L,base,10)}.\\
\giacinputbig{L:=[0,1,2,3];n:=convert(L,base,10) }\\
\giacinputbig{L:=[3,2,1,0];n:=convert(L,base,10) }\\
 On a donc :\\
{\tt convert([0,1,2,3],base,10)} renvoie {\tt 3210}\\
{\tt convert([3,2,1,0],base,10)} renvoie {\tt 123}\\
En utilisant la commande {\tt revlist(L)} qui renvoie la liste {\tt L} 
inversée, on a :\\
\giacinputbig{L:=[0,1,2,3];n:=convert(revlist(L),base,10) }\\
\giacinputbig{L:=[3,2,1,0];n:=convert(revlist(L),base,10) }\\
{\tt convert(revlist([0,1,2,3]),base,10)} renvoie {\tt 123} et un tel nombre ne 
fait pas partie de l'ensemble {\tt Digit04} alors que \\
{\tt convert(revlist([3,2,1,0]),base,10)} renvoie {\tt 3210}.\\
Pour g\'en\'erer la permutation suivante de {\tt L} dans l'ordre 
lexicographique ($a<b<..<z$ et $0<1<2..<3210$) on utilise la commande 
{\tt nextperm(L)}.\\
Si {\tt L:=[0,1,2,3]} on a :\\
\giacinputbig{ L:=[0,1,2,3];R0:=L,(L:=nextperm(L))$(k=1..3!-1)}\\
On obtient {\tt R0} :\\
{\tt [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 \`a 
{\tt Digit04} car elles commencent par 0 et on a 
\giacinputbig{convert(revlist(R0[k]),base,10)$(k=0..5)} \\
qui est une suite croissante allant de 123 \`a 321.\\
Ces listes ne donneront pas des entiers appartenant \`a {\tt Digit04} car
elles commencent par 0 et donc {\tt n:=convert(revlist(L),base,10)} 
renvoie une liste croissante allant de 123 \`a 321.\\
Lorsque {\tt L} vaut {\tt [0,3,2,1]} et on a :\\
\giacinputbig{ L:=[0,3,2,1];[(L:=nextperm(L))$(k=1..4!-3!)]}  renvoie :\\
{\tt [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],}\\
{\tt [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],}\\
{\tt [3,1,0,2],[3,1,2,0],[3,2,0,1],[3,2,1,0]}\\
{\bf Attention}\\
Si on a {\tt L:=[3,2,1,0]} alors {\tt nextperm(L)} renvoie {\bf undef}.\\
{\bf Exercice5}\\
\'Ecrire un programme qui trouve les entiers de {\tt Digit04} divisible par 
11.\\
{\bf Solution}\\
On tape pour trouver les entiers de {\tt Digit04} divisible par 11 :
\begin{giaconload}
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];
}:;
\end{giaconload} 
\giacinputbig{digital04()}\\
On am\'elore la vitesse du programme si :\\
on enl\`eve le premier {\tt pour} et on initialise {\tt L} par 
{\tt L:=[0,3,2,1];} et\\
surtout si on modifie {\tt L11} en place en rempla\c{c}ant :\\
 {\tt L11:=L11,n} par {\tt L11.append(n)}.\\ 
Mais cette am\'elioration est peu visible pour les entiers de {\tt Digit14}
\begin{giaconload}
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];
}:;
\end{giaconload} 
\giacinputbig{Digital04()}\\
\subsection{Le programme v\'erifiant les diff\'erents r\'esultats}
{\bf Exercice6}\\
\'Ecrire un programme qui trouve les entiers pandigitaux divisibles par 
11.\\
{\bf Solution}\\
{\bf Attention !!!!}\\
Quand une liste {\tt XXXL} devient longue, {\tt XXXL:=XXXL,n} prend de plus en 
plus de temps. Pour gagner du temps la solution est de modifier {\tt XXXL} en 
place,  en \'ecrivant {\tt XXXL.append(n)} au lieu de {\tt XXXL:=XXXL,n}.\\ 
On tape :\\
\begin{giaconload}
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];
}:;
\end{giaconload} 
ou on supprime la premi\`ere boucle pour et on initialise {\tt D} par :\\
{\tt D:=[0,9,8,7,6,5,4,3,2,1];} car :\\
\giacinputbig{ L:=[0,9,8,7,6,5,4,3,2,1];nextperm(L);convert(revlist(nextperm(L)),base,10)}\\
On retrouve bien la valeur du minimum $m$.\\
On tape :\\
\begin{giaconload}
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];
}:;
\end{giaconload} 
Le nombre d'entier pandigitaux divisible par 11 (soyez patient il faut attendre 
 que {\tt Pandigital()} vous fournisse la liste des pandigitaux divisibles 
par 11 et la longueur de cette liste :\\
\giacinputbig{R:=Pandigital():;s:=size(R)}\\
On trouve bien 285120.\\
Le minimum $m$ :\\
\giacinputbig{R[0],min(R)}\\
Le maximum $m$ :\\
\giacinputbig{R[s-1],max(R)}\\
Les 24 premiers entiers pandigitaux divisibles par 11 :\\
\giacinputbig{R[k]$(k=0..11)}\\
\giacinputbig{R[k]$(k=12..23)}\\
On prolonge cette suite jusqu'au 37i\`eme  pour montrer le 37i\`eme ne convient  pas (le dernier indice est 36 car les indices commencent \`a 0) :\\
\giacinputbig{R[k]$(k=24..36)}
Les 37 derniers  entiers pandigitaux divisibles par 11 :\\
\giacinputbig{R[285083+k]$(k=0..11)}\\
\giacinputbig{R[285095+k]$(k=0..12)}\\
\giacinputbig{R[285108+k]$(k=0..11)}\\
Les 12 derniers  entiers pandigitaux divisibles par 11 :\\
{\tt 9876503142,9876503241,9876504132,9876504231,9876513042,9876513240,}\\
{\tt 9876514032,9876514230,9876523041,9876523140,9876524031,9876524130}\\
{\bf Remarque}\\
On peut trouver les entiers pandigitaux divisibles par 11 qui sont dans 
$[9876500000, M]$ directement en modifiant le programme pr\'ec\'edent.\\
Il suffit de d\'ebuter le programme avec {\tt D:=[9,8,7,6,5,0,1,2,3,4];} et 
{\tt n1:=5!} car il faut tester les {\tt 5!} permutations \`a partir {\tt D} 
({\tt 5!} puisque {\tt size([0,1,2,3,4])} vaut 5).\\
On tape :\\
\begin{giaconload}
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];
}:;
\end{giaconload}
\giacinputbig{Pandigital1([9,8,7,6,5,0,1,2,3,4],5!)}\\
{\bf Exercice}\\
Modifier le programme pr\'ec\'edent pour qu'il soit valable quelque soit {\tt D}
i.e. il faut initialiser correctement {\tt n1}.
\section{Amusement : Un carr\'e magique de 4x4 entiers pandigitaux}
Voici le tableau de Kurchan (Rodolpho Kurchan de Buenos Aires) : c'est un 
carr\'e magique dont la somme est le nombre pandigital 4129607358.\\
\begin{tabular}{|c|c|c|c|}
\hline
1037956284 & 1036947285 & 1027856394 & 1026847395\\
1026857394 & 1027846395 & 1036957284 & 1037946285\\
1036847295 & 1037856294 & 1026947385 & 1027956384\\
1027946385 & 1026957384 & 1037846295 & 1036857294\\
\hline
\end{tabular}\\

On v\'erifie :\\
La somme des lignes est \'egale \`a 4129607358 :\\
\giacinputbig{1037956284+ 1036947285 + 1027856394 + 1026847395}\\
\giacinputbig{1026857394 + 1027846395 + 1036957284 + 1037946285}\\
\giacinputbig{1036847295 + 1037856294 + 1026947385 + 1027956384}\\
\giacinputbig{1027946385 + 1026957384 + 1037846295 + 1036857294}\\

La somme des colonnes est \'egale \`a 4129607358 :\\
\giacinputbig{1037956284+1026857394 +1036847295 +1027946385}\\
\giacinputbig{1036947285 +1027846395 +1037856294 +1026957384 }\\
\giacinputbig{1027856394 +1036957284 + 1026947385 +1037846295}\\
\giacinputbig{1026847395+1037946285+ 1027956384+10368572941}\\

La somme des diagonales est \'egale \`a 4129607358 :\\
\giacinputbig{1037956284+ 1027846395 +1026947385 + 1036857294}\\
\giacinputbig{1026847395+1036957284 +1037856294 +1027946385}
\end{giacjshere}
\end{document}
