

\begin{enumerate}
\item Entre $2^k$ et $2^{k+1}$ (non compris), il y a $2^{k+1}-2^k = 2^k-1$ nombres. Le nombre avant $2^{k+1}$ étant nécessairement pair, on peut alors dire qu'il y a:
\[
\dfrac{2^k-2}{2}=2^{k-1}-1
\]
nombres pairs, pour $k\in\N*$.

\bigskip

\item $\fact{(2^4)}=2^1\times3\times2^2\times5\times6\times7\times2^3\times\cdots\times2^4$.

Dans cette décomposition, il y a d'une part toutes les puissances de 2, mais aussi les nombres pairs entre ces puissances, nombres qui peuvent s'écrire sous la forme $q \times2^p$, $p\geqslant1$.

\begin{itemize}
\item Entre $2^2$ et $2^3$, il y a 1 multiple de 2 : $6=2\times3$.
\item Entre $2^3$ et $2^4$, il y a 3 multiples de 2: $10=2\times5$, $12=2^2\times3$ et $14=2\times7$.
\end{itemize}
Finalement, l'exposant de 2 dans la décomposition de $\fact{(2^4)}$ le plus grand est:
\[
(1+2+3+4) + 1+1+2+1=15.
\]

\item Voici un programme possible:
\begin{python}
def fact(n):
    f = 1
    for i in range(1,n+1):
        f = f * i

    return f


def maxpow(n):
    N = fact(2**n)
    p = 0
    while N%2 == 0:
        p = p+1
        N = N//2

    return p
\end{python}

Ces fonctions ont tout de même leur limite (surtout \texttt{fact(n)}. En effet, à partir de\linebreak $n=15$, cette dernière fonction est longue pour renvoyer le résultat.
On peut tout de même contrôler que $2^{\numprint{65535}}$ est la plus grande puissance de 2 qui divise $\fact{(2^{16})}$.
\end{enumerate}
