\definecolor{algobleu}{HTML}{0000cc}
\definecolor{algomarron}{HTML}{800000}
\definecolor{algobeige}{HTML}{bb8800}
\definecolor{algoorange}{HTML}{DD6F06}
\definecolor{algoviolet}{HTML}{800080}
\newcommand{\bleu}[1]{\textcolor{algobleu}{#1}}
\newcommand{\marron}[1]{\textbf{\textcolor{algomarron}{#1}}}
\newcommand{\beige}[1]{\textbf{\textcolor{algobeige}{#1}}}
\newcommand{\orange}[1]{\textbf{\textcolor{algoorange}{#1}}}
\newcommand{\violet}[1]{\textcolor{algoviolet}{#1}}

\begin{activite}[Virus informatique]
À l'instant $t=0$, un système informatique est attaqué par un virus  qui occupe une mémoire de 1 ko (kilo-octet). Par la suite, à chaque instant, le virus se propage et sa mémoire croît.\\
On note $f(t)$ la mémoire (en ko) occupée par le virus à l'instant $t$ (en secondes).\\

\partie[Étude de cas discrets]\vspace{-5mm}
\begin{enumerate}
\item  On suppose d'abord que la mémoire du virus augmente de 100 \% chaque seconde.
\begin{enumerate}
\item Justifier que chaque seconde, il y a duplication de la mémoire.
\item Quelle progression suit $f(t)$ seconde après seconde ?
\item Les unités Mo (mégaoctet), Go (gigaoctet) et  To (téraoctet)  vérifient :
 \begin{colitemize}{3}
\item  $1\text{~Mo}=1\,024\text{~ko}$  \item $1\text{~Go}=1\,024\text{~Mo}$ \item  $1\text{~To}=1\,024\text{~Go}$
\end{colitemize}
Au bout de combien de temps la mémoire occupée par le virus atteindra-t-elle 1 To ?
\end{enumerate}
\item On suppose maintenant que la mémoire du virus augmente de $10~\%$ chaque 0,1 s.\par
On s'aide d'un tableur pour calculer les mémoires successives.
\begin{center}\vspace{2mm}
    \begin{tabularx}{0.95\linewidth}
{|c|c|*{12}{>{\centering \arraybackslash}X|}}
    \hline
\rowcolor{FondTableaux}     & A & B & C & D & E & F & G & H & I & J & K & L & M \\
    \hline
\cellcolor{Gris1}   1 & t & 0 & 0,1 & 0,2 & 0,3 & 0,4 & 0,5 & 0,6 & 0,7 & 0,8 & 0,9 & 1 & 1,1 \\
    \hline
\cellcolor{Gris1}   2 & f(t) & 1 & \cellcolor{G4} &  &  &  &  &  &  &  &  &  &  \\
    \hline
\cellcolor{Gris1}   3 &  f(t+0,1) & \cellcolor{G3} &   &   &  &  &  &  &  &  &  &  & \cellcolor{black} \\
    \hline
\cellcolor{Gris1}   4 & [f(t+0,1)-f(t)]/0,1 & \cellcolor{G2} &  &  &  &  &  &  &  &  &  &  & \cellcolor{black} \\
    \hline
    \end{tabularx}
    \end{center}
\begin{enumerate}
\item Dans la cellule C2, quelle formule doit-on écrire et recopier jusqu'à la cellule M2 ?
\item Dans la cellule B3, quelle formule doit-on écrire et recopier jusqu'à la cellule L3 ?
\item Dans la cellule B4, quelle formule doit-on écrire et recopier jusqu'à la cellule L4 ?\par
     Que représentent les nombres de la ligne 4 d'après l'étiquette écrite en cellule A4 ?
\item Que remarque-t-on en comparant les lignes 2 et 4 ? Expliquer pourquoi.
\end{enumerate}
\end{enumerate}

\partie[Étude du cas continu]
On considère que la mémoire occupée par le virus augmente de $h$ \% toutes les $h$ centièmes de seconde pour $h\neq0$ mais  proche de 0 autant qu'on veut.
\begin{enumerate}
\item
\begin{enumerate}
  \item On pose $\Delta t=\dfrac{h}{100}$. Démontrer que $\dfrac{f(t+\Delta t)-f(t)}{\Delta t}=f(t)$.\vspace{1mm}
 \item En déduire que, pour tout $t\geqslant0$, $f'(t)=f(t)$.
\end{enumerate}
\end{enumerate}
 \begin{cadre}[A1][A4]
Il semblerait qu'il existe une fonction $f$ définie et dérivable sur $[0~;~+\infty[$ telle que :
\begin{center}$f(0)=1$ et $f'=f$.\end{center}
 \end{cadre}\vspace{-5mm}
\begin{enumerate}\setcounter{enumi}{1}
\item  On considère l'algorithme ci-après.
\begin{enumerate}
\item Expliquer à quoi sert cet algorithme.
\item Programmer cet algorithme sur un ordinateur ou une calculatrice et le faire tourner avec les valeurs suivantes :
\begin{minipage}{10cm}\begin{colitemize}{4}
\item $\texttt{h}=10$
\item $\texttt{h}=1$
\item $\texttt{h}=0,1$
\item $\texttt{h}=0,01$
\end{colitemize}
\end{minipage}
\item Vérifier que les valeurs trouvées approchent de mieux en mieux un nombre que la calculatrice fournit ainsi : repérer ~\textcolor{A1}{$\boldsymbol{\e^x}$}~ au-dessus de la touche ~\colorbox{A1}{\textcolor{white}{$\boldsymbol{\ln}$}}~ et faire ~\includegraphics[scale=.2]{exp1.eps}.
\end{enumerate}
\end{enumerate}

\begin{center}
\begin{minipage}{.5\linewidth}
\begin{oldalgorithme}
\marron{VARIABLES}
e, t, h \bleu{SONT\_DU\_TYPE} NOMBRE
\marron{DEBUT\_ALGORITHME}
\bleu{LIRE} h
t \bleu{PREND\_LA\_VALEUR} 0
e \bleu{PREND\_LA\_VALEUR} 1
\orange{TANT\_QUE} (t<1) \orange{FAIRE}
    e \bleu{PREND\_LA\_VALEUR} e*(1+h/100)
    t \bleu{PREND\_LA\_VALEUR} t+h/100
\bleu{AFFICHER} e
\marron{FIN\_ALGORITHME}
\end{oldalgorithme}
\end{minipage}
\end{center}
 \begin{cadre}[A1][A4]
Le nombre $\pmb{\e}$ est une constante mathématique appelée \textbf{nombre d'Euler} ou  \textbf{constante de Néper} d'après Leonhard Euler et John Napier. Euler a démontré que $\e$  est \textbf{irrationnel} (on ne peut pas l'écrire sous la forme d'une fraction) et Charles Hermite a prouvé que $\e$ est \mbox{\textbf{transcendant}} (comme $\pi$, il n'est racine d'aucun polynôme non nul à coefficients entiers).
 \end{cadre}
\end{activite}

