\documentclass[12pt]{article}
\usepackage[height=250mm,width=183mm]{geometry}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[french]{babel}
\usepackage[upright]{fourier}
\usepackage{amsmath,amssymb,amsbsy,amsfonts,amstext,amscd,amsopn,amsxtra}
\usepackage{listings,keystroke}
\usepackage{xcolor,hyperref}
\usepackage[french]{varioref}
\usepackage[dvips,final]{graphicx}
%\usepackage{bold-extra,fancyvrb}
%\usepackage{luximono}
\newcommand{\ie}{\leqslant}  % inferieur ou egal
\newcommand{\se}{\geqslant}  % superieur ou egal




\lstset{numbers=none,language=XCAS,xleftmargin=10pt,%
keywordstyle =\color{red}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily\footnotesize\color{red},commentstyle=\normalfont\scriptsize\slshape,breaklines=true,backgroundcolor=\color{0.9white}}


\newcommand{\MarqueCommandeGiac}[1]{%
    \color{red}$>\ $}
\newcommand{\MarqueLaTeXGiac}{%
    \color{blue}}
\newcommand{\InscriptionFigureGiac}[1]{%
    \begin{center}
	\includegraphics[width=0.7\linewidth]{#1}
    \end{center}}

\definecolor{0.6white}{rgb}{0.6,0.6,0.6}
\definecolor{0.4white}{rgb}{0.4,0.4,0.4}
\definecolor{0.8white}{rgb}{0.8,0.8,0.8}
\definecolor{0.2white}{rgb}{0.2,0.2,0.2}
\definecolor{0.9white}{rgb}{0.9,0.9,0.9}
%% On redéfinit l'allure des sections en gardant \section, etc.

\usepackage{sectsty}


\sectionfont{\LARGE \sffamily\color{0.2white}}
\subsectionfont{\sffamily\color{0.4white}}
\renewcommand\thesection{\Roman{section} -}
\renewcommand\thesubsection{\arabic{subsection}. }
\subsubsectionfont{\sffamily\color{0.6white}}
\renewcommand\thesubsubsection{\alph{subsubsection}. }

\title{L'épreuve pratique de maths du Bac S sans tableur...}

\author{Guillaume CONNAN\\ \href{http://gconnan.free.fr}{http://gconnan.free.fr}}

\begin{document}


\setlength{\parindent}{0mm}

\maketitle

%\initablor



\section{Sujet 003}\label{003}

%\subsection{Variante sans tableur}

On  va  construire une  procédure  \texttt{toscane(n)} qui  va  réaliser  \texttt{n} simulations  de
$\nombre{10000}$ lancers de trois dés en renvoyant~:
\begin{itemize}
\item les fréquences de sortie de 9 et 10~;
\item les probabilités de gain de Bob et Alice~;
\item les boîtes à moustaches correspondant à chaque événement.
\end{itemize}


\subsection{Commandes utilisées}

\begin{description}
\item[rand(n)]~:~cette commande renvoie un entier $n$ vérifiant $0\ie n< n$. Par exemple 
%@Commande-1
\begin{lstlisting}
rand(2), rand(2), rand(2), rand(2), rand(2)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 1,1,0,0,1 \]}}

Pour simuler le lancer d'un dé cubique, nous utiliserons donc~:

%@Commande-2
\begin{lstlisting}
rand(6)+1
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 6 \]}}

\item[ranm(n,p,'tirage')]~:~construit un  tableau de  n lignes  et p  colonnes,  chaque cellule
  contenant l'issue d'un tirage. Par exemple~:

%@Commande-3
\begin{lstlisting}
T:=ranm(2,15,'rand(6)+1')
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{ccccccccccccccc}
5 & 6 & 4 & 6 & 1 & 2 & 6 & 5 & 4 & 1 & 3 & 4 & 2 & 4 & 3 \\
1 & 2 & 4 & 5 & 2 & 4 & 4 & 5 & 5 & 4 & 6 & 3 & 6 & 1 & 4
\end{array}\right)  \]}}

donne $2\times 15$ tirages d'un dé cubique.

\item[count\_eq(n,T)]~:~compte le nombre d'occurrences de n dans le tableau T. Par exemple~:


%@Commande-4
\begin{lstlisting}
count_eq(4,T)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 9 \]}}

compte le nombre de sorties de 4 dans le tableau T.

\item[moyenne(L)]~:~calcule la moyenne des éléments d'une liste~:

%@Commande-5
\begin{lstlisting}
moyenne([16,15,12,10,19,7])
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \frac{79}{6} \]}}

Attention~!  T  n'est  pas  une  liste  mais  un tableau,  c'est-à-dire  une  liste  de  listes.  La
n\textsuperscript{e} ligne  étant obtenue en entrant  \texttt{T[n-1]} car XCAS commence  à compter à
partir de 0.


%@Commande-6
\begin{lstlisting}
moyenne(T[0])
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \frac{56}{15} \]}}

Le résultat est sous forme exacte. Pour avoir une approximation, on utilise \texttt{evalf}

%@Commande-7
\begin{lstlisting}
evalf(moyenne(T[0]))
\end{lstlisting}
{\MarqueLaTeXGiac{\[      3.733333 \]}}

Si l'on ne veut que deux chiffres après la virgule, on peut par exemple utiliser \texttt{format}~:

%@Commande-8
\begin{lstlisting}
format(moyenne(T[0]),"f2")
\end{lstlisting}
{\MarqueLaTeXGiac{\[\text{3.73}\]}}


\item[moustache(L)]~:~renvoie la «~boîte à moustache~» correspondant à la liste T~:

%@Commande-9
\begin{lstlisting}
moustache(T[0],couleur=magenta+rempli+epaisseur_ligne_3)
\end{lstlisting}
\InscriptionFigureGiac{EPTS-01.eps}    

la  partie \verb|couleur=magenta+rempli+epaisseur_ligne_3|  est  bien sûr  optionnelle  mais permet  de
choisir l'aspect du graphique.

\end{description}


\subsection{Observation du problème}

On va simuler n  séries de $\nombre{10000}$ lancers de trois dés.  On créera une liste \texttt{neuf}
qui contiendra  le nombre d'occurrences  de 9  dans chacune des  n séries et  pareil pour 10.  On en
calculera les moyennes et les boîtes à moustache correspondant.

%@Commande-10
\begin{lstlisting}
toscane(n):={
neuf:=NULL; //  une séquence vide au départ pour compter les 9
dix:=NULL; // idem pour 10
pour k de 1 jusque n faire // pour chacun des n simulations
T:=ranm(1,10000,'rand(6)+rand(6)+rand(6)+3') // on lance 10000 fois 3 dés et on fait la somme des numéros obtenus.
neuf:=neuf,count_eq(9,T); // on compte le nombre de 9 dans T et on le rajoute dans notre séquence
dix:=dix,count_eq(10,T); // idem pour 10
fpour;
N:=moyenne([neuf])/10000*100; // fréquence des sorties de 9
D:=moyenne([dix])/10000*100; // fréquence des sorties de 10
mousN:=moustache([neuf],couleur=magenta+rempli+epaisseur_ligne_3);
mousD:=moustache([dix],couleur=vert+rempli+epaisseur_ligne_3);
print("Sur "+10000*n+" essais, la fréquence de sortie de 9 est de "+format(N,"f2")+"% et celle de 10 est de "+format(D,"f2")+"%");
mousN,mousD;
}:;
\end{lstlisting}

Par exemple, pour obtenir 100 simulations de $\nombre{10000}$ lancers on entre~:

%@Commande-11
\begin{lstlisting}
toscane(100)
\end{lstlisting}
\InscriptionFigureGiac{EPTS-02.eps}    

\begin{center}
  \textcolor{blue}{"Sur 1000000 essais, la fréquence de sortie de 9 est de 11.26\% et celle de 10 est de 12.53\%"}
\end{center}



\subsection{À la recherche de l'origine du problème}

On peut se  demander si les six lancers  correspondant à 9 sont équiprobables~;~la  question se pose
évidement en les mêmes termes pour 10. Pour se donner une
idée,  on  va  déterminer  la  fréquence  de  sortie  de  chacun  de  ces  lancers  en  en  simulant
$\nombre{10000}$.

On utilise à bon escient la notion  d'ensemble pour XCAS~:~il s'agit d'une collection d'éléments non
ordonnée qu'on écrit entre \%\{ et \%\}.

On utilise également la fonction \texttt{apply(fonction,liste)} qui applique une fonction à chaque élément d'une liste.

%@Commande-12
\begin{lstlisting}
neneuf():={
L:=[0$6];
neuf:=NULL:;
pour k de 1 jusque 10000 faire
a:=rand(6)+1:;b:=rand(6)+1:;c:=rand(6)+1:;
si a+b+c==9 alors neuf:=neuf,[a,b,c]; // on liste les tirages donnant 9
fsi:;
fpour:;
N:=[neuf]:;
n:=size(N)-1;
pour k de 0 jusque n faire
si %{op(N[k])%}==%{6,1,2%} alors L[0]:=L[0]+1;
sinon  si %{op(N[k])%}==%{5,2,2%} alors L[1]:=L[1]+1;
           sinon si %{op(N[k])%}==%{5,3,1%} alors L[2]:=L[2]+1;
                     sinon si %{op(N[k])%}==%{4,4,1%} alors L[3]:=L[3]+1;
                               sinon si %{op(N[k])%}==%{4,3,2%} alors L[4]:=L[4]+1;
                                         sinon si %{op(N[k])%}==%{3,3,3%} alors L[5]:=L[5]+1;
fsi;fsi;fsi;fsi;fsi;fsi;
fpour;
s:=sum(L);
T:=[["6,1,2","5,2,2","5,3,1" ,"4,4,1","4,3,2" ,"3,3,3"],apply(x->floor((x/s)*100),L)];
return(T);
}:;
\end{lstlisting}

%$

Lançons $\nombre{10000}$ fois nos trois dés :

%@Commande-13
\begin{lstlisting}
neneuf()
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccc}
\mbox{6,1,2} & \mbox{5,2,2} & \mbox{5,3,1} & \mbox{4,4,1} & \mbox{4,3,2} & \mbox{3,3,3} \\
23 & 11 & 24 & 12 & 23 & 3
\end{array}\right)  \]}}

On remarque  que les  tirages comportant un  double sortent 2  fois moins  que les tirages  de faces
toutes distinctes. La proportion est de 6 contre 1 pour le tirage "3,3,3".

On peut aisément adapter la procédure à 10~:


%@Commande-14
\begin{lstlisting}
didix():={
L:=[0$6];
dix:=NULL:;
pour k de 1 jusque 10000 faire
a:=rand(6)+1:;b:=rand(6)+1:;c:=rand(6)+1:;
si a+b+c==10 alors dix:=dix,[a,b,c]; 
fsi:;
fpour:;
N:=[dix]:;
n:=size(N)-1;
pour k de 0 jusque n faire
si %{op(N[k])%}==%{6,3,1%} alors L[0]:=L[0]+1;
sinon  si %{op(N[k])%}==%{6,2,2%} alors L[1]:=L[1]+1;
           sinon si %{op(N[k])%}==%{5,4,1%} alors L[2]:=L[2]+1;
                     sinon si %{op(N[k])%}==%{5,3,2%} alors L[3]:=L[3]+1;
                               sinon si %{op(N[k])%}==%{4,4,2%} alors L[4]:=L[4]+1;
                                         sinon si %{op(N[k])%}==%{4,3,3%} alors L[5]:=L[5]+1;
fsi;fsi;fsi;fsi;fsi;fsi;
fpour;
s:=sum(L);
T:=[["6,3,1","6,2,2","5,4,1","5,3,2","4,4,2","4,3,3"],apply(x->floor((x/s)*100),L)];
return(T);
}:;
\end{lstlisting}

%$

%@Commande-15
\begin{lstlisting}
didix()
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccc}
\mbox{6,3,1} & \mbox{6,2,2} & \mbox{5,4,1} & \mbox{5,3,2} & \mbox{4,4,2} & \mbox{4,3,3} \\
21 & 10 & 23 & 22 & 11 & 10
\end{array}\right)  \]}}


Il ne reste plus qu'à prouver ce phénomène par des considérations probabilistes...




















\section{Sujet 007}

%\subsection{Solution sans tableur}

On va  obtenir directement $a_n$ et  $b_n$ pour tout naturel  $n$ à l'aide du  programme suivant qui
calcule  les listes  $[a_n,b_n]$.  Ainsi, $a_n=w(n)[0]$,  le premier  élément  de la  liste w(n)  et
$b_n=w(n)[1]$, le deuxième élément de la liste w(n)~:

%@Commande-16
\begin{lstlisting}
w(n):={
W:=[20,60];
si n=0 alors return(W); 
sinon
 pour k de 1 jusque n faire
 W:=[(2*W[0]+W[1])/4,(W[0]+2*W[1])/4]
 // on calcule le nouveau W en fonction du précédent
fpour;
fsi;
}:;
\end{lstlisting}


Par exemple~:

%@Commande-17
\begin{lstlisting}
w(50)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ [\frac{7178979876918525887702485}{316912650057057350374175801344},\frac{7178979876918525887702495}{316912650057057350374175801344}] \]}}

Pour en avoir une valeur approchée, on utilise \texttt{evalf}

%@Commande-18
\begin{lstlisting}
evalf(w(50))
\end{lstlisting}
{\MarqueLaTeXGiac{\[ [     0.000023,     0.000023] \]}}

Et si l'on veut tous les termes pair jusqu'à $w_{50}$~:

%@Commande-19
\begin{lstlisting}
[seq(evalf(w(2*j)),j=0..25)]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cc}
    20.000000 &     60.000000 \\
    21.250000 &     23.750000 \\
    12.578125 &     12.734375 \\
     7.114258 &      7.124023 \\
     4.004211 &      4.004822 \\
     2.252522 &      2.252560 \\
     1.267053 &      1.267055 \\
     0.712718 &      0.712718 \\
     0.400904 &      0.400904 \\
     0.225508 &      0.225508 \\
     0.126848 &      0.126848 \\
     0.071352 &      0.071352 \\
     0.040136 &      0.040136 \\
     0.022576 &      0.022576 \\
     0.012699 &      0.012699 \\
     0.007143 &      0.007143 \\
     0.004018 &      0.004018 \\
     0.002260 &      0.002260 \\
     0.001271 &      0.001271 \\
     0.000715 &      0.000715 \\
     0.000402 &      0.000402 \\
     0.000226 &      0.000226 \\
     0.000127 &      0.000127 \\
     0.000072 &      0.000072 \\
     0.000040 &      0.000040 \\
     0.000023 &      0.000023
\end{array}\right)  \]}}

On obtient encore plus facilement les termes des suites $(u_n)$ et $(v_n)$~:

%@Commande-20
\begin{lstlisting}
u(n):=w(n)[0]+w(n)[1]:;
\end{lstlisting}

%@Commande-21
\begin{lstlisting}
v(n):=w(n)[1]-w(n)[0]:;
\end{lstlisting}


Visualisons les premiers termes grâce à la commande \texttt{seq}~:

%@Commande-22
\begin{lstlisting}
seq(v(j),j=0..10)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 40,10,\frac{5}{2},\frac{5}{8},\frac{5}{32},\frac{5}{128},\frac{5}{512},\frac{5}{2048},\frac{5}{8192},\frac{5}{32768},\frac{5}{131072} \]}}

%@Commande-23
\begin{lstlisting}
seq(u(j),j=0..10)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 80,60,45,\frac{135}{4},\frac{405}{16},\frac{1215}{64},\frac{3645}{256},\frac{10935}{1024},\frac{32805}{4096},\frac{98415}{16384},\frac{295245}{65536} \]}}

Pour enfoncer le clou, étudions les rapports entre termes consécutifs~:

%@Commande-24
\begin{lstlisting}
seq(v(j+1)/v(j),j=0..10)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4},\frac{1}{4} \]}}


%@Commande-25
\begin{lstlisting}
seq(u(j+1)/u(j),j=0..10)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4},\frac{3}{4} \]}}




\section{Sujet 030}

%\subsection{Étude sans tableur}

Encore une suite définie  par une relation de récurrence~! Nous commençons  à savoir comment faire~!
Petite variante ici~:~le premier terme varie et nous voulons une représentation graphique.


%@Commande-26
\begin{lstlisting}
u(n):={
U:=uo;
si n==1 alors U;
sinon
  pour k de 2 jusque n faire
  U:=U/(k-1)+1.0;
  fpour;
fsi;
}:;
\end{lstlisting}

Par exemple, fixons uo à $-10$ et observons les 15 premiers termes~:

%@Commande-27
\begin{lstlisting}
uo:=-10:;
\end{lstlisting}


%@Commande-28
\begin{lstlisting}
seq(u(k),k=1..15)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ -10,    -9.000000,    -3.500000,    -0.166667,     0.958333,     1.191667,     1.198611,     1.171230,     1.146404,     1.127378,     1.112738,     1.101158,     1.091763,     1.083982,     1.077427 \]}}

ou, de manière plus lisible~:

%@Commande-29
\begin{lstlisting}
 [[seq("u("+k+")",k=1..15)],[seq(format(u(k),"f2"),k=1..15)]]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{ccccccccccccccc}
\mbox{u(1)} & \mbox{u(2)} & \mbox{u(3)} & \mbox{u(4)} & \mbox{u(5)} & \mbox{u(6)} & \mbox{u(7)} & \mbox{u(8)} & \mbox{u(9)} & \mbox{u(10)} & \mbox{u(11)} & \mbox{u(12)} & \mbox{u(13)} & \mbox{u(14)} & \mbox{u(15)} \\
\mbox{-10.00} & \mbox{-9.00} & \mbox{-3.50} & \mbox{-0.17} & \mbox{0.96} & \mbox{1.19} & \mbox{1.20} & \mbox{1.17} & \mbox{1.15} & \mbox{1.13} & \mbox{1.11} & \mbox{1.10} & \mbox{1.09} & \mbox{1.08} & \mbox{1.08}
\end{array}\right)  \]}}

Ensuite, regardons ce que cela donne graphiquement~:

%@Commande-30
\begin{lstlisting}
seq(point(k,u(k)),k=5..30)
\end{lstlisting}
\InscriptionFigureGiac{EPTS-03.eps}    

ou, de manière plus visible~:

%@Commande-31
\begin{lstlisting}
seq(couleur(point(k,u(k)),rouge+point_width_3),k=5..30)
\end{lstlisting}
\InscriptionFigureGiac{EPTS-04.eps}    

Est-ce que le premier terme joue un rôle  important~? Créons un curseur le faisant varier en ouvrant
une fenêtre de géométrie (\Alt + \keystroke{G})~:

\begin{lstlisting}
  uo:=element((-100) .. 100) // uo varie entre -100 et 100
  seq(couleur(point(k,u(k)),rouge+point_width_3),k=1..30)
  graphe(1,x=0..30,couleur=bleu) // pour visualiser la limite
\end{lstlisting}

Il ne reste plus qu'à faire varier le curseur~:

\begin{center}
  \includegraphics[width=\textwidth]{capture030.eps}
\end{center}



\section{Sujet 044}


Nous allons ré-utiliser n donc vidons les mémoires d'affectation~:

%@Commande-32
\begin{lstlisting}
restart(NULL)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ [D,L,N,T,U,W,a,b,c,\mbox{didix},\mbox{dix},\mbox{mousD},\mbox{mousN},n,\mbox{neneuf},\mbox{neuf},s,P,u,\mbox{uo},v,w] \]}}


Le problème ici, c'est que XCAS peut donner directement la réponse~!

%@Commande-33
\begin{lstlisting}
factoriser((6/n)*somme(k^2,k=1..n))
\end{lstlisting}
{\MarqueLaTeXGiac{\[ (n+1)(2n+1) \]}}

... donc faisons comme si nous ne le savions pas...


Nous allons donc construire une somme avec une boucle \textit{pour}~:


%@Commande-34
\begin{lstlisting}
u(n):={
local s,k;
s:=0;
pour k de 1 jusque n faire 
  s:=s+k^2; // on rajoute k^2 à chaque fois
fpour;
return(6*s/n) // on n'oublie pas de multiplier par 6/n
}:;
\end{lstlisting}


Nous obtenons alors~:

%@Commande-35
\begin{lstlisting}
seq(u(j),j=1..10)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 6,15,28,45,66,91,120,153,190,231 \]}}

ou, sous forme de tableau~:

%@Commande-36
\begin{lstlisting}
 [[seq("u("+k+")",k=1..10)],[seq(u(k),k=1..10)]]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccccccc}
\mbox{u(1)} & \mbox{u(2)} & \mbox{u(3)} & \mbox{u(4)} & \mbox{u(5)} & \mbox{u(6)} & \mbox{u(7)} & \mbox{u(8)} & \mbox{u(9)} & \mbox{u(10)} \\
6 & 15 & 28 & 45 & 66 & 91 & 120 & 153 & 190 & 231
\end{array}\right)  \]}}

Si ces nombres ne nous parlent pas, observons graphiquement~:

%@Commande-37
\begin{lstlisting}
seq(point(j,u(j)),j=1..100)
\end{lstlisting}
\InscriptionFigureGiac{EPTS-05.eps}    

Puisqu'il s'agit d'un sujet de Bac, il ne faut pas chercher trop loin :-)

Ça ressemble à un  segment de parabole donc on va chercher $f(n)$ sous  la forme d'une expression du
type  $an^2+bn+c$. On  peut calculer  facilement $u_1$,  $u_2$  et $u_3$  donc on  peut par  exemple
résoudre le système~:

\[
\begin{cases}
a+b+c=u_1\\
4a+2b+c=u_2\\
9a+3b+c=u_3
\end{cases}
\]


ce qui donne avec XCAS~:

%@Commande-38
\begin{lstlisting}
f(n):=a*n^2+b*n+c // on définit f
\end{lstlisting}
{\MarqueLaTeXGiac{\[\text{(n)\(\rightarrow\)a*n\^{}2+b*n+c}\]}}


%@Commande-39
\begin{lstlisting}
linsolve([f(1)=u(1),f(2)=u(2),f(3)=u(3)],[a,b,c]) // on résout le système
\end{lstlisting}
{\MarqueLaTeXGiac{\[ [2,3,1] \]}}

On obtient donc que $f(n)=2n^2+3n+1$~:

%@Commande-40
\begin{lstlisting}
[a,b,c]:=linsolve([f(1)=u(1),f(2)=u(2),f(3)=u(3)],[a,b,c]):; f(n)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \mbox{Done},2n^{2}+3n+1 \]}}


Observons graphiquement~:


%@Commande-41
\begin{lstlisting}
seq(point(j,u(j)),j=1..100),graphe(f(n),n=1..100,couleur=bleu)
\end{lstlisting}
\InscriptionFigureGiac{EPTS-06.eps}    


Cela semble correspondre graphiquement. Du point de vue numérique~:

%@Commande-42
\begin{lstlisting}
seq(f(k)-u(k),k=1..30)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 \]}}

\section{Sujet 063}

Tiens, encore  une suite~! Bon,  cette fois-ci,  c'est en arithmétique  mais c'est malgré  tout plus
simple informatiquement puisque nous avons la formule explicite donnant $u_n$ en fonction de $n$.

%@Commande-43
\begin{lstlisting}
u(n):=12*n+5:;
\end{lstlisting}

%@Commande-44
\begin{lstlisting}
seq(u(k) mod 20, k=0..19)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 5\%20,-3\%20,9\%20,1\%20,-7\%20,5\%20,-3\%20,9\%20,1\%20,-7\%20,5\%20,-3\%20,9\%20,1\%20,-7\%20,5\%20,-3\%20,9\%20,1\%20,-7\%20 \]}}

Le \% 20 indique que nous travaillons modulo  20. XCAS donne par défaut le reste symétrique. Si nous
voulons avoir des entiers, il faut donc travailler «~modulo zéro~»~:

%@Commande-45
\begin{lstlisting}
seq((u(k) mod 20)%0, k=0..19)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 5,-3,9,1,-7,5,-3,9,1,-7,5,-3,9,1,-7,5,-3,9,1,-7 \]}}

On  nous demande  ensuite de  faire varier  a,  b et  p. Nous  allons donc  construire une  fonction
dépendant de ces trois variables~:

%@Commande-46
\begin{lstlisting}
f(a,b,p):=seq((a*k+b mod p)%0, k=0..19):;
\end{lstlisting}

Observons les cas particuliers demandés~:

%@Commande-47
\begin{lstlisting}
f(5,-3,20)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ -3,2,7,-8,-3,2,7,-8,-3,2,7,-8,-3,2,7,-8,-3,2,7,-8 \]}}

%@Commande-48
\begin{lstlisting}
f(5,-3,7)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ -3,2,0,-2,3,1,-1,-3,2,0,-2,3,1,-1,-3,2,0,-2,3,1 \]}}

On peut multiplier les exemples.

On peut observer  les influences de chaque paramètre. Construisons d'abord  une procédure donnant la
période~:

%@Commande-49
\begin{lstlisting}
periode(a,b,p):={
K:=1;
tantque (a*K+b) mod p != b mod p faire K:=K+1; 
ftantque;
K;
}:;
\end{lstlisting}

puis observons avec plusieurs valeurs de p~:

%@Commande-50
\begin{lstlisting}
seq(periode(5,-3,p),p=1..20)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 1,2,3,4,1,6,7,8,9,2,11,12,13,14,3,16,17,18,19,4 \]}}

Est-ce que b semble influer~?

%@Commande-51
\begin{lstlisting}
[seq([seq(periode(5,b,p),p=1..20)],b=-3..3)]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccccccccccccccccc}
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4
\end{array}\right)  \]}}

et a ~?

%@Commande-52
\begin{lstlisting}
[seq([seq(periode(a,-3,p),p=1..20)],a=1..10)]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccccccccccccccccc}
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 & 11 & 12 & 13 & 14 & 15 & 16 & 17 & 18 & 19 & 20 \\
1 & 1 & 3 & 2 & 5 & 3 & 7 & 4 & 9 & 5 & 11 & 6 & 13 & 7 & 15 & 8 & 17 & 9 & 19 & 10 \\
1 & 2 & 1 & 4 & 5 & 2 & 7 & 8 & 3 & 10 & 11 & 4 & 13 & 14 & 5 & 16 & 17 & 6 & 19 & 20 \\
1 & 1 & 3 & 1 & 5 & 3 & 7 & 2 & 9 & 5 & 11 & 3 & 13 & 7 & 15 & 4 & 17 & 9 & 19 & 5 \\
1 & 2 & 3 & 4 & 1 & 6 & 7 & 8 & 9 & 2 & 11 & 12 & 13 & 14 & 3 & 16 & 17 & 18 & 19 & 4 \\
1 & 1 & 1 & 2 & 5 & 1 & 7 & 4 & 3 & 5 & 11 & 2 & 13 & 7 & 5 & 8 & 17 & 3 & 19 & 10 \\
1 & 2 & 3 & 4 & 5 & 6 & 1 & 8 & 9 & 10 & 11 & 12 & 13 & 2 & 15 & 16 & 17 & 18 & 19 & 20 \\
1 & 1 & 3 & 1 & 5 & 3 & 7 & 1 & 9 & 5 & 11 & 3 & 13 & 7 & 15 & 2 & 17 & 9 & 19 & 5 \\
1 & 2 & 1 & 4 & 5 & 2 & 7 & 8 & 1 & 10 & 11 & 4 & 13 & 14 & 5 & 16 & 17 & 2 & 19 & 20 \\
1 & 1 & 3 & 2 & 1 & 3 & 7 & 4 & 9 & 1 & 11 & 6 & 13 & 7 & 3 & 8 & 17 & 9 & 19 & 2
\end{array}\right)  \]}}


Ça change plus... Il semble y avoir des liens entre la période et le PGCD de a et p... mais ceci est
une autre histoire.



\section{Sujet 066}

Une suite~! Bon, elle est aléatoire cette fois nous dit le sujet... 

Construisons-la~:

%@Commande-53
\begin{lstlisting}
s(n):={
local S,k;
S:=0;
pour k de 1 jusque n faire
  si rand(2)==0 alors S:=S+1;
  sinon S:=S-1;
  fsi;
fpour;
}:;
\end{lstlisting}

Observons~:

%@Commande-54
\begin{lstlisting}
seq(s(k),k=1..10)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 1,2,-1,-4,-1,4,-1,-2,5,2 \]}}

simulons à plus grande échelle~:

%@Commande-55
\begin{lstlisting}
[seq([seq(s(k),k=1..10)],j=1..20)]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccccccc}
-1 & 2 & -1 & -2 & -1 & 0 & -5 & -4 & 3 & 0 \\
-1 & -2 & -3 & -2 & 1 & -2 & -5 & 4 & 1 & -4 \\
1 & 0 & 3 & 0 & -1 & -2 & 5 & 2 & 3 & -4 \\
1 & 0 & -1 & 0 & 3 & 4 & -1 & -2 & 1 & 0 \\
1 & 2 & 1 & -2 & 1 & 0 & 3 & 2 & -1 & -4 \\
-1 & 0 & -1 & 2 & -1 & 2 & 3 & -6 & -1 & 2 \\
1 & 0 & -1 & 0 & -3 & 0 & 1 & 4 & 5 & 0 \\
-1 & 2 & -1 & -2 & -1 & -2 & -1 & 0 & -1 & 2 \\
-1 & -2 & 3 & -4 & -1 & 0 & -1 & 4 & -3 & -2 \\
-1 & 2 & -1 & 4 & -1 & 0 & 1 & 0 & 3 & 2 \\
1 & 0 & 1 & 2 & 1 & -2 & -1 & -4 & 3 & 2 \\
1 & 0 & 1 & 0 & -1 & -2 & 1 & 2 & -1 & 0 \\
-1 & -2 & 1 & 4 & -3 & 0 & -1 & -2 & 5 & -2 \\
-1 & 0 & -1 & -2 & -3 & 2 & -1 & -2 & -3 & -4 \\
-1 & -2 & -3 & 0 & 1 & -4 & -7 & 2 & -3 & -4 \\
-1 & 0 & -1 & 0 & -3 & -2 & 1 & 0 & -3 & -2 \\
-1 & 0 & -1 & 2 & 3 & 4 & 1 & -4 & 3 & 0 \\
-1 & 2 & -1 & 0 & 1 & 4 & -1 & 6 & -5 & 4 \\
1 & 0 & 1 & 0 & -1 & 0 & -1 & 0 & -1 & 0 \\
-1 & 0 & -1 & -2 & -3 & 4 & -1 & -4 & -1 & 2
\end{array}\right)  \]}}

À chaque fois que nous tapons sur \Enter, nous obtenons 20 nouvelles simulations~:~ça fait gagner un
peu de place...


Voyons un peu plus loin et effectuons $\nombre{10000}$ simulations~:

%@Commande-56
\begin{lstlisting}
A:=[seq([seq(s(k),k=1..10)],j=1..10000)]:;
\end{lstlisting}

cela peut prendre jusqu'à 15 secondes avec un ordinateur peu performant.

Occupons-nous  du calcul  des fréquences.
Le problème revient à comptabiliser, pour une  colonne donnée, la fréquence d'apparition de 0. Notre
tableau a 10  colonnes et $\nombre{10000}$ lignes. Pour extraire  la j\textsuperscript{e} colonne on
entre \verb+col(A,j-1)+ car XCAS commence à compter à O~!  On n'oublie pas d'utiliser la commande \verb+count_eq+ rencontrée au paragraphe~\vref{003}.


%@Commande-57
\begin{lstlisting}
seq(count_eq(0,col(A,j))/100,j=0..9)
\end{lstlisting}
{\MarqueLaTeXGiac{\[ 0,\frac{4987}{100},0,\frac{3753}{100},0,\frac{771}{25},0,\frac{2663}{100},0,\frac{602}{25} \]}}

Ou, plus joliment~:

%@Commande-58
\begin{lstlisting}
[[seq("A"+j,j=0..9)],[seq(evalf(count_eq(0,col(A,j))/100)+"%",j=0..9)]]
\end{lstlisting}
{\MarqueLaTeXGiac{\[ \left(\begin{array}{cccccccccc}
\mbox{A0} & \mbox{A1} & \mbox{A2} & \mbox{A3} & \mbox{A4} & \mbox{A5} & \mbox{A6} & \mbox{A7} & \mbox{A8} & \mbox{A9} \\
\mbox{0.0\%} & \mbox{49.87\%} & \mbox{0.0\%} & \mbox{37.53\%} & \mbox{0.0\%} & \mbox{30.84\%} & \mbox{0.0\%} & \mbox{26.63\%} & \mbox{0.0\%} & \mbox{24.08\%}
\end{array}\right)  \]}}


%\nettoyer

\end{document}


%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: 
