
\begin{enumerate}
\item Un algorithme possible est le suivant:

\begin{center}
\fbox{\begin{minipage}{0.5\linewidth}
\ttfamily
Initialisation\\
\hspace*{1em}U $\leftarrow$ 1\\
\hspace*{1em}N $\leftarrow$ 0\\
Traitement\\
\hspace*{1em}Tant que U $\leqslant$ 1000000:\\
\hspace*{2em} N $\leftarrow$ N+1\\
\hspace*{2em} U $\leftarrow$ 2$^\text{N}$\\
\hspace*{1em}Fin du Tant Que\\
Sortie:
\hspace*{1em}Afficher N
\end{minipage}}
\end{center}

\item Le programme Python correspondant à cet algorithme est:
\begin{python}
u = 1
n = 0
while u <= 1000000:
    n = n + 1
    u = 2**n
print(n)
\end{python}

\bigskip

Il affiche la valeur \og 20 \fg, ce qui signifie que $2^{19}\leqslant10^6$ et $2^{20}>10^6$.

\vspace{1cm}~
\end{enumerate}
