\documentclass[a4paper,11pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[french]{babel}
\usepackage[a4paper,top=3.2cm,bottom=2cm,left=2cm,right=2cm]{geometry}
\usepackage{graphicx}
\usepackage[export]{adjustbox}
\usepackage{fancyhdr}
\usepackage{qrcode}
\usepackage[table]{xcolor}
\usepackage{amsmath,amssymb}
\usepackage{enumitem}
% Puces nettes (babel-french remplace sinon la puce par un tiret « – » peu pro).
% Vaut pour TOUTES les fiches qui importent ce module. AtBeginDocument pour
% passer après la personnalisation des listes faite par babel-french.
\AtBeginDocument{%
  \setlist[itemize]{leftmargin=1.8em,itemsep=0.5ex,topsep=0.4ex,parsep=0pt}%
  \setlist[itemize,1]{label=\textcolor{red!75!black}{\small\textbullet}}%
  \setlist[itemize,2]{label=\textcolor{red!75!black}{\scriptsize\textbullet}}%
}
% Titres compacts (gain de place vertical, fiches plus denses) — vaut pour tous.
\usepackage{titlesec}
\titlespacing*{\section}{0pt}{1.4ex}{0.6ex}
\titlespacing*{\subsection}{0pt}{1.0ex}{0.3ex}
% multicol : listes denses (calcul mental) sur 2 colonnes — neutre tant qu'il
% n'est pas utilisé, dispo pour tous les générateurs.
\usepackage{multicol}
\setlength{\columnsep}{1.5em}
% needspace : empêche un titre d'exercice de rester orphelin en bas de page
% (réserve quelques lignes ; sinon le titre passe à la page suivante avec sa
% liste). Neutre tant qu'il n'est pas appelé — dispo pour tous les générateurs.
\usepackage{needspace}
\usepackage{tikz}
\usetikzlibrary{decorations.text}

\usepackage{tgheros}
\pagestyle{fancy}
\fancyhf{}
\setlength{\headheight}{75pt}
\setlength{\headsep}{10pt}

\newcommand{\logowouf}{%
\begin{tikzpicture}[baseline={(current bounding box.center)},scale=0.55,
                    line cap=round,line join=round]
    \path[use as bounding box] (-2.20,-1.45) rectangle (2.20,2.20);
    \path[
        postaction={decorate},
        decoration={
            text along path,
            text={|\fontfamily{qhv}\bfseries\fontsize{9}{9}\selectfont|site2wouf.fr},
            text align={center},
            raise=0.03ex
        }
    ] (-1.29,0.48) arc[start angle=160,end angle=20,radius=1.29];
    \begin{scope}[xshift=-0.06cm]
        \fill[black] (-0.66,0.14) ellipse (0.21 and 0.31);
        \fill[black] ( 0.66,0.14) ellipse (0.21 and 0.31);
        \fill[black] (-0.23,0.49) ellipse (0.22 and 0.35);
        \fill[black] ( 0.23,0.49) ellipse (0.22 and 0.35);
        \fill[black]
            (0,-0.10)
            .. controls (-0.36,-0.02) and (-0.63,-0.24) .. (-0.58,-0.58)
            .. controls (-0.52,-0.93) and (-0.16,-1.12) .. (0,-0.90)
            .. controls (0.16,-1.12) and (0.52,-0.93) .. (0.58,-0.58)
            .. controls (0.63,-0.24) and (0.36,-0.02) .. (0,-0.10)
            -- cycle;
    \end{scope}
\end{tikzpicture}%
}

\newcommand{\titre}{Le programme de calcul}
\newcommand{\soustitre}{Probl\`eme --- Fiche n\textdegree 399}

\fancyhead[C]{%
\raisebox{4pt}{%
\begin{minipage}[c]{0.15\textwidth}
    \centering
    \logowouf
\end{minipage}
\begin{minipage}[c]{0.62\textwidth}
    \centering
    {\Large\bfseries \titre\par}
    {\small\color{gray} \soustitre}
\end{minipage}
\begin{minipage}[c]{0.21\textwidth}
    \centering
    \qrcode[height=1.5cm]{https://site2wouf.fr/programmes_calcul.php?x=399}\\[2pt]
    {\small\ttfamily\bfseries\color{red} PCAL0399}
\end{minipage}%
}
}

\begin{document}

\begin{center}
    \small Un programme de calcul à appliquer, un résultat à observer, et surtout une propriété à démontrer. Essayer sur deux ou trois nombres ne prouve rien : il faut appeler n le nombre choisi et mener le calcul avec la lettre.
\end{center}
\vspace{0.5em}
\sloppy
\needspace{5\baselineskip}
\subsection*{\textcolor{red}{Le programme de calcul}}
\noindent Voici un programme de calcul :\par\addvspace{0.35em}
\begin{enumerate}
  \item Choisis un nombre.
  \item Retranche 6.
  \item Multiplie par 6.
  \item Ajoute le quadruple du nombre choisi.
  \item Ajoute 1.
\end{enumerate}
\noindent Réponds aux trois questions, dans l'ordre : la première se fait de tête, la dernière demande une démonstration.\par\addvspace{0.45em}
\begin{enumerate}
  \item Applique ce programme au nombre \textbf{4}, puis au nombre \textbf{13}.
  \item Les deux résultats sont-ils des multiples de \textbf{5} ?
  \item Démontre que le résultat est \textbf{toujours} un multiple de 5, quel que soit le nombre choisi.
\end{enumerate}
\noindent Fais tes calculs au brouillon, puis rédige.\par\addvspace{0.35em}
\newpage
\section*{\textcolor{red}{Correction}}
\needspace{5\baselineskip}
\subsection*{\textcolor{red}{Le programme de calcul — Correction}}
\noindent \textbf{1.} On applique le programme pas à pas :\par\addvspace{0.35em}
\begin{center}
\renewcommand{\arraystretch}{1.35}
\begin{tabular}{|c|c|c|}
\hline
\cellcolor{blue!7}\bfseries Étape & \cellcolor{blue!7}\bfseries avec 4 & \cellcolor{blue!7}\bfseries avec 13 \\ \hline
Nombre choisi & 4 & 13 \\ \hline
Retranche 6 & \(-\)2 & 7 \\ \hline
Multiplie par 6 & \(-\)12 & 42 \\ \hline
Ajoute le quadruple du nombre choisi & 4 & 94 \\ \hline
Ajoute 1 & 5 & 95 \\ \hline
\end{tabular}
\end{center}
\noindent \textbf{2. et 3.} Un tableau de nombres ne démontre rien : il faut refaire le calcul avec une lettre.\par\addvspace{0.35em}
\noindent On appelle \textbf{n} le nombre choisi et on refait le programme avec la lettre :\par\addvspace{0.35em}
\noindent\hspace{1.2em}Nombre choisi : \textbf{n}\par\addvspace{0.3em}
\noindent\hspace{1.2em}Retranche 6 : \textbf{n \(-\) 6}\par\addvspace{0.3em}
\noindent\hspace{1.2em}Multiplie par 6 : \textbf{6n \(-\) 36}\par\addvspace{0.3em}
\noindent\hspace{1.2em}Ajoute le quadruple du nombre choisi : \textbf{10n \(-\) 36}\par\addvspace{0.3em}
\noindent\hspace{1.2em}Ajoute 1 : \textbf{10n \(-\) 35}\par\addvspace{0.3em}
\noindent{\color{red!80!black}\bfseries \textbf{Le résultat est toujours un multiple de 5.}}\par\addvspace{0.4em}
\noindent L'expression finale est \textbf{10n \(-\) 35}. On met 5 en facteur :\par\addvspace{0.35em}
\noindent\hspace{1.2em}10n \(-\) 35 = 5(2n \(-\) 7)\par\addvspace{0.3em}
\noindent Or n est un nombre entier, donc 2n \(-\) 7 en est un aussi : le résultat s'écrit 5 \(\times\) (un entier), c'est donc un multiple de 5.\par\addvspace{0.35em}
\noindent{\color{green!45!black}\textbf{La règle du jeu.} Un exemple peut \textbf{infirmer} une affirmation — il suffit d'un contre-exemple. Il ne peut jamais la \textbf{confirmer} : pour cela il faut un calcul qui vaut pour tous les nombres à la fois, et c'est précisément à quoi sert la lettre n.}\par\addvspace{0.4em}
\end{document}
