\documentclass[10pt,aspectratio=169]{beamer}

% --- Thème ---
\usetheme[language=french]{Celestia}

% Avec [allowframebreaks] sur les frames de questions, Beamer ajoute
% par défaut « (1) », « (2) », « (3) »... sur chaque sous-slide. On
% supprime entièrement cette annotation : un template vide pour
% « frametitle continuation ». L'enseignant identifie visuellement la
% continuation par le contenu de la slide. (Les variantes [from second]
% et [roman] interagissent mal avec un titre contenant \textemdash{}
% sous Celestia : elles déclenchent une erreur « Missing $ inserted ».)
\setbeamertemplate{frametitle continuation}{}

\subject{Numérique et sciences informatiques}
\title{Représentation du texte}
\subtitle{QCM}
\author{Première}
\date{\today}

\begin{document}

\begin{frame}
    \titlepage
\end{frame}

% Q1 - Réponse en C
\begin{frame}[fragile]{Question 1 \textemdash{} Définition d'ASCII}
    Que signifie le sigle \textbf{ASCII} ?\medskip
    \begin{itemize}
        \item[A.] Architecture Standard pour Calculs et Instructions Internes
        \item[B.] Algorithme Standard pour la Compression d'Images
        \item[\alert<2>{C.}] \alert<2>{American Standard Code for Information Interchange}
        \item[D.] Acronyme Standard de Compatibilité Inter-Systèmes
    \end{itemize}
\end{frame}

% Q2 - Réponse en D
\begin{frame}[fragile]{Question 2 \textemdash{} Taille de la table ASCII standard}
    Combien de caractères différents peut-on coder avec l'ASCII
standard (sur sept bits) ?\medskip
    \begin{itemize}
        \item[A.] $512$
        \item[B.] $64$
        \item[C.] $256$
        \item[\alert<2>{D.}] \alert<2>{$128$}
    \end{itemize}
\end{frame}

% Q3 - Réponse en C
\begin{frame}[fragile]{Question 3 \textemdash{} Code ASCII de la lettre 'A'}
    En Python, que renvoie l'expression \texttt{ord('A')} ?\medskip
    \begin{itemize}
        \item[A.] $32$
        \item[B.] $1$
        \item[\alert<2>{C.}] \alert<2>{$65$}
        \item[D.] $97$
    \end{itemize}
\end{frame}

% Q4 - Réponse en A
\begin{frame}[fragile]{Question 4 \textemdash{} Fonction \texttt{chr} en Python}
    Quelle est la valeur renvoyée par \texttt{chr(66)} en Python ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{\texttt{'B'}}
        \item[B.] \texttt{66}
        \item[C.] \texttt{'b'}
        \item[D.] \texttt{'A'}
    \end{itemize}
\end{frame}

% Q5 - Réponse en A
\begin{frame}[fragile]{Question 5 \textemdash{} Point de code Unicode}
    Comment écrit-on conventionnellement un point de code Unicode ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{\texttt{U+0041}}
        \item[B.] \texttt{\textbackslash{}u0041}
        \item[C.] \texttt{0x41}
        \item[D.] \texttt{UC-0041}
    \end{itemize}
\end{frame}

% Q6 - Réponse en C
\begin{frame}[fragile]{Question 6 \textemdash{} Caractéristique principale d'UTF-8}
    Pourquoi UTF-$8$ est-il l'encodage le plus répandu sur le web ?\medskip
    \begin{itemize}
        \item[A.] Parce qu'il code tous les caractères sur un seul octet
        \item[B.] Parce qu'il a remplacé Unicode
        \item[\alert<2>{C.}] \alert<2>{Parce qu'il est rétro-compatible avec ASCII et de taille variable selon les caractères}
        \item[D.] Parce qu'il code tous les caractères sur exactement deux octets
    \end{itemize}
\end{frame}

% Q7 - Réponse en D
\begin{frame}[fragile]{Question 7 \textemdash{} Nombre de caractères Unicode}
    Environ combien de caractères différents la norme Unicode
peut-elle référencer ?\medskip
    \begin{itemize}
        \item[A.] $256$
        \item[B.] $128$
        \item[C.] $65\ 536$
        \item[\alert<2>{D.}] \alert<2>{Plus d'un million}
    \end{itemize}
\end{frame}

% Q8 - Réponse en B
\begin{frame}[fragile]{Question 8 \textemdash{} Différence majuscule / minuscule en ASCII}
    Quelle est la différence entre le code ASCII d'une lettre
majuscule et celui de la même lettre en minuscule ?\medskip
    \begin{itemize}
        \item[A.] $1$
        \item[\alert<2>{B.}] \alert<2>{$32$}
        \item[C.] $65$
        \item[D.] $26$
    \end{itemize}
\end{frame}

% Q9 - Réponse en A
\begin{frame}[fragile]{Question 9 \textemdash{} Texte enrichi vs texte simple}
    Qu'est-ce qui distingue un \textbf{texte enrichi} d'un texte simple ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{Le texte enrichi contient en plus des informations de mise en forme (police, taille, couleur, etc.)}
        \item[B.] Le texte enrichi est forcément en couleur
        \item[C.] Le texte enrichi est plus long
        \item[D.] Le texte enrichi est codé en Unicode obligatoirement
    \end{itemize}
\end{frame}

% Q10 - Réponse en D
\begin{frame}[fragile]{Question 10 \textemdash{} Signification du sigle HTML}
    Que signifie l'acronyme HTML ?\medskip
    \begin{itemize}
        \item[A.] High-level Text Manipulation Language
        \item[B.] Hypothetical Text Macro Library
        \item[C.] Hyper Type Modern Language
        \item[\alert<2>{D.}] \alert<2>{HyperText Markup Language}
    \end{itemize}
\end{frame}

% Q11 - Réponse en C
\begin{frame}[fragile]{Question 11 \textemdash{} Représentation binaire d'un caractère}
    Quelle est la représentation binaire (sur huit bits) du
caractère 'A' en ASCII ?\medskip
    \begin{itemize}
        \item[A.] $00000001$
        \item[B.] $01100001$
        \item[\alert<2>{C.}] \alert<2>{$01000001$}
        \item[D.] $10000001$
    \end{itemize}
\end{frame}

% Q12 - Réponse en A
\begin{frame}[fragile]{Question 12 \textemdash{} Décoder un texte ASCII}
    Quel mot représente la suite de codes ASCII (en décimal)
$$78,\ 83,\ 73$$ ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{\texttt{NSI}}
        \item[B.] \texttt{nsi}
        \item[C.] \texttt{123}
        \item[D.] \texttt{abc}
    \end{itemize}
\end{frame}

% Q13 - Réponse en C
\begin{frame}[fragile]{Question 13 \textemdash{} Taille d'un caractère en UTF-8}
    En UTF-$8$, sur combien d'octets est codé un caractère ASCII
standard (par exemple la lettre A) ?\medskip
    \begin{itemize}
        \item[A.] $3$ octets
        \item[B.] $2$ octets
        \item[\alert<2>{C.}] \alert<2>{$1$ octet}
        \item[D.] $4$ octets toujours
    \end{itemize}
\end{frame}

% Q14 - Réponse en C
\begin{frame}[fragile]{Question 14 \textemdash{} Taille fixe d'UTF-32}
    Pourquoi UTF-$32$ n'est-il presque jamais utilisé pour stocker
des fichiers texte sur le web ?\medskip
    \begin{itemize}
        \item[A.] Parce qu'il ne peut pas représenter tous les caractères Unicode
        \item[B.] Parce qu'il ne supporte pas les emojis
        \item[\alert<2>{C.}] \alert<2>{Parce qu'il consomme quatre octets par caractère, même pour les caractères ASCII très fréquents}
        \item[D.] Parce qu'il n'est pas standardisé par l'ISO
    \end{itemize}
\end{frame}

% Q15 - Réponse en C
\begin{frame}[fragile]{Question 15 \textemdash{} Code ASCII en hexadécimal}
    Quelle est la représentation hexadécimale du code ASCII de la
lettre 'a' minuscule ?\medskip
    \begin{itemize}
        \item[A.] \texttt{0x65}
        \item[B.] \texttt{0x97}
        \item[\alert<2>{C.}] \alert<2>{\texttt{0x61}}
        \item[D.] \texttt{0x41}
    \end{itemize}
\end{frame}

% Q16 - Réponse en A
\begin{frame}[fragile,allowframebreaks]{Question 16 \textemdash{} Parcours d'une chaîne en Python}
    Que renvoie le code Python suivant ?

\begin{lstlisting}
sum(ord(c) for c in "BA")
\end{lstlisting}\medskip
    \begin{itemize}
        \item[A.] $131$
        \item[B.] La chaîne \texttt{"BA"}
        \item[C.] $130$
        \item[D.] $66$
    \end{itemize}
\end{frame}

% Q16 - Réponse en A
\begin{frame}[fragile,allowframebreaks]{Question 16 \textemdash{} Parcours d'une chaîne en Python}
    Que renvoie le code Python suivant ?

\begin{lstlisting}
sum(ord(c) for c in "BA")
\end{lstlisting}\medskip
    \begin{itemize}
        \item[\alert{A.}] \alert{$131$}
        \item[B.] La chaîne \texttt{"BA"}
        \item[C.] $130$
        \item[D.] $66$
    \end{itemize}
\end{frame}

% Q17 - Réponse en A
\begin{frame}[fragile]{Question 17 \textemdash{} Codage des caractères accentués}
    En UTF-$8$, sur combien d'octets est codée la lettre 'é' ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{$2$ octets}
        \item[B.] $4$ octets
        \item[C.] $3$ octets
        \item[D.] $1$ octet
    \end{itemize}
\end{frame}

% Q18 - Réponse en B
\begin{frame}[fragile]{Question 18 \textemdash{} ASCII étendu}
    Quelle modification a permis le passage d'ASCII à l'ASCII
étendu ?\medskip
    \begin{itemize}
        \item[A.] L'ajout d'un neuvième bit pour le drapeau de signe
        \item[\alert<2>{B.}] \alert<2>{L'utilisation du huitième bit (mis à $0$ dans l'ASCII standard) pour doubler la table}
        \item[C.] Le passage à un codage en hexadécimal
        \item[D.] La conversion en UTF-$8$ obligatoire
    \end{itemize}
\end{frame}

% Q19 - Réponse en B
\begin{frame}[fragile]{Question 19 \textemdash{} Rôle des balises HTML}
    Que représentent les balises ouvrantes et fermantes en HTML
(par exemple \texttt{<p>...</p>}) ?\medskip
    \begin{itemize}
        \item[A.] Les noms des fichiers liés au document
        \item[\alert<2>{B.}] \alert<2>{Des marqueurs qui structurent le contenu et indiquent au navigateur comment afficher le texte}
        \item[C.] Des macros pour remplacer du texte
        \item[D.] Des commandes envoyées au serveur web
    \end{itemize}
\end{frame}

% Q20 - Réponse en A
\begin{frame}[fragile]{Question 20 \textemdash{} Particularité de TeX/LaTeX}
    Quel est le \textbf{point fort} de TeX/LaTeX, créé par Donald Knuth
en $1977$, par rapport aux traitements de texte WYSIWYG ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{Il produit une mise en page typographique de très haute qualité, particulièrement pour les équations mathématiques}
        \item[B.] Il génère du HTML directement
        \item[C.] Il est compatible avec Microsoft Word
        \item[D.] Il permet de modifier le texte directement à l'écran
    \end{itemize}
\end{frame}

% Q21 - Réponse en B
\begin{frame}[fragile]{Question 21 \textemdash{} Motivation historique d'Unicode}
    Pour quelle raison principale Unicode a-t-il été créé après
l'ASCII étendu ?\medskip
    \begin{itemize}
        \item[A.] Pour réduire la taille des fichiers texte
        \item[\alert<2>{B.}] \alert<2>{Pour unifier les nombreuses tables d'ASCII étendu (Latin-1, Latin-2, etc.) qui rendaient l'échange international de fichiers difficile}
        \item[C.] Pour ajouter le support de la couleur dans le texte
        \item[D.] Pour remplacer le format PDF
    \end{itemize}
\end{frame}

% Q22 - Réponse en A
\begin{frame}[fragile]{Question 22 \textemdash{} Calcul de la taille d'un texte}
    Combien d'octets occupe la chaîne \texttt{"NSI"} lorsqu'elle est
stockée en UTF-$8$ ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{$3$ octets}
        \item[B.] $1$ octet
        \item[C.] $12$ octets
        \item[D.] $6$ octets
    \end{itemize}
\end{frame}

% Q23 - Réponse en C
\begin{frame}[fragile]{Question 23 \textemdash{} Différence entre HTML et OpenDocument}
    Quelle est la principale différence entre \textbf{HTML} et
\textbf{OpenDocument} (le format \texttt{.odt} de LibreOffice) ?\medskip
    \begin{itemize}
        \item[A.] HTML est propriétaire, OpenDocument est libre
        \item[B.] HTML est un format binaire, OpenDocument est textuel
        \item[\alert<2>{C.}] \alert<2>{HTML est destiné à l'affichage web ; OpenDocument est conçu pour les documents bureautiques}
        \item[D.] OpenDocument est rétro-compatible avec ASCII, pas HTML
    \end{itemize}
\end{frame}

% Q24 - Réponse en B
\begin{frame}[fragile]{Question 24 \textemdash{} Mojibake et erreurs de décodage}
    Vous ouvrez un fichier \texttt{texte.txt} qui contient le mot français
« café », mais vous voyez s'afficher « cafÃ© ». Quelle est la
cause la plus probable ?\medskip
    \begin{itemize}
        \item[A.] Le fichier utilise un mauvais saut de ligne (Windows vs Unix)
        \item[\alert<2>{B.}] \alert<2>{Le fichier est en UTF-$8$ mais affiché comme s'il était en Latin-$1$ (ISO-$8859$-$1$)}
        \item[C.] Le fichier est corrompu
        \item[D.] Le fichier est en ASCII pur
    \end{itemize}
\end{frame}

% Q25 - Réponse en C
\begin{frame}[fragile]{Question 25 \textemdash{} Rétrocompatibilité d'UTF-8}
    Pourquoi peut-on dire qu'un fichier ASCII pur est aussi un
fichier UTF-$8$ valide ?\medskip
    \begin{itemize}
        \item[A.] Parce que tous les fichiers texte sont automatiquement convertis en UTF-$8$ par le système
        \item[B.] Parce qu'ASCII et UTF-$8$ utilisent tous deux des points de code Unicode
        \item[\alert<2>{C.}] \alert<2>{Parce qu'UTF-$8$ a été conçu pour reproduire à l'identique le codage des $128$ caractères ASCII (un seul octet, bit de poids fort à $0$)}
        \item[D.] Parce qu'UTF-$8$ et ASCII sont strictement le même format
    \end{itemize}
\end{frame}

% Q26 - Réponse en C
\begin{frame}[fragile]{Question 26 \textemdash{} Taille d'un caractère accentué en UTF-8}
    Combien d'octets sont nécessaires en UTF-$8$ pour coder le
caractère \texttt{é} (point de code Unicode U+00E9, soit $233$ en
décimal) ?\medskip
    \begin{itemize}
        \item[A.] $1$ octet
        \item[B.] $3$ octets
        \item[\alert<2>{C.}] \alert<2>{$2$ octets}
        \item[D.] $4$ octets
    \end{itemize}
\end{frame}

% Q27 - Réponse en C
\begin{frame}[fragile]{Question 27 \textemdash{} Marqueur d'un octet de continuation en UTF-8}
    En UTF-$8$, dans une séquence multi-octets, quels sont les
bits de tête qui marquent un \textbf{octet de continuation}
(deuxième, troisième ou quatrième octet d'un caractère) ?\medskip
    \begin{itemize}
        \item[A.] \texttt{1110xxxx}
        \item[B.] \texttt{0xxxxxxx}
        \item[\alert<2>{C.}] \alert<2>{\texttt{10xxxxxx}}
        \item[D.] \texttt{110xxxxx}
    \end{itemize}
\end{frame}

% Q28 - Réponse en A
\begin{frame}[fragile]{Question 28 \textemdash{} Caractères de contrôle ASCII}
    Les codes ASCII de $0$ à $31$ ne correspondent pas à des
caractères imprimables. À quoi servent-ils ?\medskip
    \begin{itemize}
        \item[\alert<2>{A.}] \alert<2>{À des caractères de contrôle (saut de ligne, retour chariot, tabulation, etc.) qui pilotent le terminal ou la transmission}
        \item[B.] À coder les chiffres et la ponctuation
        \item[C.] À aucun usage : ils sont réservés et inutilisés
        \item[D.] À coder les caractères accentués des langues européennes
    \end{itemize}
\end{frame}

% Q29 - Réponse en C
\begin{frame}[fragile,allowframebreaks]{Question 29 \textemdash{} Longueur d'une chaîne accentuée en Python}
    En Python $3$, les deux instructions du code suivant
affichent-elles la même valeur ?

\begin{lstlisting}
texte = "café"
print(len(texte))
print(len(texte.encode("utf-8")))
\end{lstlisting}\medskip
    \begin{itemize}
        \item[A.] Oui, les deux affichent $5$
        \item[B.] Oui, les deux affichent $4$
        \item[C.] Non, $4$ pour la première et $5$ pour la seconde
        \item[D.] Non, $5$ pour la première et $4$ pour la seconde
    \end{itemize}
\end{frame}

% Q29 - Réponse en C
\begin{frame}[fragile,allowframebreaks]{Question 29 \textemdash{} Longueur d'une chaîne accentuée en Python}
    En Python $3$, les deux instructions du code suivant
affichent-elles la même valeur ?

\begin{lstlisting}
texte = "café"
print(len(texte))
print(len(texte.encode("utf-8")))
\end{lstlisting}\medskip
    \begin{itemize}
        \item[A.] Oui, les deux affichent $5$
        \item[B.] Oui, les deux affichent $4$
        \item[\alert{C.}] \alert{Non, $4$ pour la première et $5$ pour la seconde}
        \item[D.] Non, $5$ pour la première et $4$ pour la seconde
    \end{itemize}
\end{frame}

\begin{frame}[standout]{}
    Fin de l'évaluation
\end{frame}

\end{document}
