%!TEX lualatex

\documentclass[french,a4paper,11pt]{article}
%géométrie
\usepackage[margin=1.5cm,includehead,includefoot]{geometry}
\usepackage{ProfLycee}
\usepackage{ProfSio}
\usepackage{ResolSysteme}
\useproflyclib{ecritures,piton}
\usepackage{customenvs}
\usepackage[math-style=french,bold-style=ISO]{fourier-otf}
\setsansfont{Fira Sans}[Scale=MatchLowercase]
\setmonofont{Fira Mono}[Scale=MatchLowercase]
\usepackage{fancyhdr}
\usepackage{babel}
\setlength{\parindent}{0pt}
%variables
\newcommand{\session}{2024}
\newcommand{\annee}{2024}
\newcommand{\serie}{SIO}
\newcommand{\lieu}{Métropole}
\newcommand{\jour}{16}
\newcommand{\mois}{Mai}
\newcommand{\nomfichier}{[BTS\annee{}\serie{}] \lieu{} (\mois)}
%métadonnées
\author{Pierquet}
\title{\nomfichier}
\usepackage{hyperref}
\hypersetup{pdfauthor={Pierquet},pdftitle={\nomfichier},allbordercolors=white,pdfborder=0 0 0,pdfstartview=FitH}
\lhead{\footnotesize\textsf{BTS\session{} Série \serie{}}}
\chead{\footnotesize\textsf{\lieu{}}}
\rhead{\footnotesize\textsf{\jour{} \mois{} \annee{}}}
\lfoot{\footnotesize\textsf{24-SIE2MAT-1}}
\cfoot{\footnotesize\textsf{- \thepage{} -}}
\rfoot{\footnotesize\textsf{}}
%\setlength{\headsep}{2mm}

\begin{document}

\pagestyle{fancy}

\begin{center}
	\textsf{\LARGE \lieu{}, \serie{}, \jour{} \mois{} \annee}
\end{center}

\begin{center}
	\textsf{\faSortNumericDown\:\:{\large Épreuve U2 - Mathématiques pour l'Informatique}\:\:\faProjectDiagram}
\end{center}

\vspace{0.25cm}

\textbf{\textsf{\Large Exercice 1\dotfill(5 points)}}%exo1

\medskip

\textit{Cet exercice est un questionnaire à choix multiple. Aucune justification n'est demandée.\\
Pour chaque question, une seule affirmation est exacte.\\
Recopier sur la copie le numéro de la question et la lettre correspondante à l'affirmation exacte.\\
Une réponse exacte vaut 1 point. Une réponse fausse ou une absence de réponse n'est pas pénalisée.}

\medskip

\textbf{Question 1.} On pose $M = \begin{pmatrix}1&0&0\\0&1&0\\0&1&a\end{pmatrix}$ où $a$ désigne un réel quelconque. Alors :

\smallskip

\ReponsesQCM[NbCols=3,Filets,Labels={A :}]%
	{$M^2 = \begin{pmatrix}1&0&0\\0&1&0\\0&1&a^2\end{pmatrix}$ § $M^2 = \begin{pmatrix}1&0&0\\0&1&0\\0&a+1&a^2\end{pmatrix}$ § $M^2 = \begin{pmatrix}1&0&0\\0&1&0\\a&1&a\end{pmatrix}$}

\bigskip

\textbf{Question 2.} Le nombre 323 :

\smallskip

\ReponsesQCM[NbCols=3,Filets,Labels={A :}]%
	{est premier avec 420 § est un nombre premier § est divisible par 9}

\bigskip

Les \textbf{questions 3.}, \textbf{4.} et \textbf{5.} portent sur le graphe orienté de sommets $x$, $y$, $z$ et $t$, pris dans cet ordre, de matrice d'adjacence $M=\begin{pmatrix}0&1&0&1\\1&1&1&0\\0&1&0&1\\0&1&1&1\end{pmatrix}$. On donne $M^3=\begin{pmatrix}2&6&3&4\\3&7&5&4\\2&6&3&4\\3&8&5&5\end{pmatrix}$.

\medskip

\textbf{Question 3.} Le sommet $y$ a :

\smallskip

\ReponsesQCM[NbCols=3,Filets,Labels={A :}]%
	{2 prédécesseurs § 3 prédécesseurs § 4 prédécesseurs}

\bigskip

\textbf{Question 4.} Le chemin suivant de longueur 4 est possible :

\smallskip

\ReponsesQCM[NbCols=3,Filets,Labels={A :}]%
	{$z-y-t-x-y$ § $z-t-t-y-x$ § $x-y-z-t-x$}

\bigskip

\textbf{Question 5.} Le nombre de chemins de longueur 3 d'origine t et d'extrémité y est égal à :

\smallskip

\ReponsesQCM[NbCols=3,Filets,Labels={A :}]%
	{6 § 7 § 8}

\pagebreak

\textbf{\textsf{\Large Exercice 2\dotfill(5 points)}}%exo2

\medskip

La norme de codage ASCII (American Standard Code for Infonmation Interchange), défini aux États-Unis en 1963, associe aux caractères les plus utilisés dans les documents en langue anglaise un entier représentable en binaire sur 7 bits.

\begin{enumerate}
	\item Combien de caractères peut-on ainsi encoder ?
	\item Aux lettres majuscules A, B, \ldots, Z sont associés les nombres de 65 à 90, et aux lettres minuscules a, b, \ldots, z ceux de 97 à 122.
	\begin{enumerate}
		\item Donner l'écriture binaire associée à la lettre "d".
		\item Quel caractère correspond à l'écriture binaire 1101101 ?
	\end{enumerate}
	\item Lors de la transmission des données, pour éviter les erreurs, une méthode consiste à ajouter pour chaque caractère, un bit de parité à la fin du codage en binaire. Pour cela, on compte le nombre de 1 apparaissant dans le codage sur 7 bits d'un
	caractère :
	
	\begin{itemize}
		\item si le nombre obtenu est pair, on rajoute O à la fin du codage ;
		\item sinon on rajoute 1.
	\end{itemize}
	
	Chaque caractère est alors codé par un groupe de 8 bits appelé octet. Par exemple :
	
	\begin{itemize}
		\item la lettre "A" est codée par 1000001 en binaire. Ce codage contient un nombre pair de 1, donc on ajoute O à la fin, et la lettre "A" sera codée sur 8 bits par 10000010 ;
		\item la lettre "C" est codée par 1000011 en binaire. Ce codage contient un nombre impair de 1, donc on ajoute 1 à la fin, et la lettre "C" sera codée sur 8 bits par 10000111.
	\end{itemize}
	
	On considère l'algorithme ci-dessous écrit en langage naturel où \texttt{ajoute\_bit\_parite} est la fonction prenant en paramètre une chaîne de caractères code de longueur 7 représentant un codage binaire et qui renvoie le codage obtenu en lui ajoutant le bit de parité à la fin.
	
	Ainsi :
	
	\begin{itemize}
		\item \texttt{ajoute\_bit\_parite("1101100")} renvoie \texttt{"11011000"} et ;
		\item \texttt{ajoute\_bit\_parite("1100001")} renvoie \texttt{"11000011"}.
	\end{itemize} 
	
	\begin{PseudoCodePiton}[Filigrane,Lignes=false,BarreTitre=false,Gobble=tabs]{}
	Fonction ajoute_bit_parite(code)
		compt ← 0
		Pour i allant de 0 à 6 Faire
			Si code[i] est égal à "1"
			Alors
				..................
			Fin de Si
		Fin de Pour
		Si le reste de la division de ...... par 2 est 0
		Alors
			code ← code + "0"
		Sinon
			..................
		Fin de Si
		Renvoyer code
	\end{PseudoCodePiton}
	
	Recopier et compléter cet algorithme pour qu'il renvoie le code binaire sous forme de
	chaîne de caractères, complété par le bit de parité.
\end{enumerate}

\pagebreak

\textbf{\textsf{\Large Exercice 3\dotfill(10 points)}}%exo3

\medskip

\textbf{Partie A}

\medskip

La directrice d'une entreprise doit recruter une personne pour son équipe. Ce poste requiert
des compétences professionnelles et humaines.

L'évaluation du candidat attribue une note sur 10 points à ses compétences professionnelles et une note sur 10 points à ses compétences humaines. Le total des points du candidat forme ainsi une note sur 20 appelée note finale.

Pour qu'un candidat soit sélectionné, il faut qu'au moins un des critères suivants soit respecté :

\begin{itemize}
	\item le candidat a obtenu une note finale supérieure ou égale à 12 et il a eu au moins 5 points aux compétences humaines ;
	\item le candidat a obtenu une note finale inférieure strictement à 12 et il a obtenu 10 points aux compétences professionnelles ;
	\item le candidat n'a pas obtenu au moins 5 points aux compétences humaines et il a obtenu 10 points aux compétences professionnelles.
\end{itemize}

On définit les trois variables booléennes $a$, $b$, $c$ de la façon suivante :

\begin{itemize}
	\item $a$ lorsque le candidat a obtenu une note finale supérieure ou égale à 12, $\overline{a}$ sinon ;
	\item $b$ lorsque le candidat a obtenu au moins 5 points aux compétences humaines, $\overline{b}$ sinon ;
	\item $c$ lorsque le candidat a obtenu 10 points aux compétences professionnelles, sinon.
\end{itemize}

\begin{enumerate}
	\item On considère la proposition : « Tous les candidats ont obtenu une note finale supérieure ou égale à 12 ». Donner la négation de cette proposition.
	\item On note $E$ l'expression booléenne correspondant aux critères de sélection d'un
	candidat.
	\begin{enumerate}
		\item Exprimer $E$ en fonction des variables booléennes $a$, $b$ et $c$.
		\item Représenter l'expression $E$ dans un tableau de Karnaugh. En déduire une expression simplifiée de $E$ sous la forme d'une somme de deux termes.
		\item Traduire la forme simplifiée de $E$ à l'aide d'une phrase.
		\item Un candidat a obtenu au moins 5 points aux compétences humaines, et il n'a pas obtenu 10 points aux compétences professionnelles. Sa candidature peut-elle être retenue ? Justifier.
	\end{enumerate}
\end{enumerate}

\smallskip

\textbf{Partie B}

\medskip

Pour équiper ses bureaux, l'entreprise a besoin de tables, d'armoires et de chaises. Ayant demandé un devis à trois fournisseurs notés A, B, C, l'entreprise a obtenu les renseignements suivants, où les prix sont en euros :

\begin{Centrage}
	\begin{tblr}{hlines,vlines,width=0.9\linewidth,colspec={*{4}{X[m,c]}},stretch=1.15}
		Fournisseur & Prix d'une armoire & Prix d'une table & Prix d'une chaise \\
		A & 240 & 120 & 80 \\
		B & 220 & 140 & 60 \\
		C & 260 & 160 & 40 \\
	\end{tblr}
\end{Centrage}

On considère la matrice $M = \begin{pmatrix}220&120&80\\220&140&60\\260&160&40\end{pmatrix}$.

\begin{enumerate}
	\item L'entreprise envisage de commander 8 armoires, 6 tables et 8 chaises. Cependant, elle se fixe un budget maximum de \num{3100}\,€.
	
	On considère la matrice colonne : $N = \begin{pmatrix}8\\6\\8\end{pmatrix}$.
	\begin{enumerate}
		\item Calculer le produit $M \times N$.
		\item Interpréter le résultat obtenu dans le contexte de l'exercice.
		\item Chez quel fournisseur l'entreprise peut-elle passer commande ?
	\end{enumerate}
	\item Finalement, l'entreprise envisage une commande de \num{2960} euros avec le fournisseur A, de \num{2820} euros avec le fournisseur B et de \num{2980} euros avec le fournisseur C. On note $x$ le nombre d'armoires, $y$ le nombre de tables et $z$ le nombre de chaises correspondant à cette commande.
	
	On note $X$ la matrice $\begin{pmatrix}x\\y\\z\end{pmatrix}$ et $Y$ la matrice $\begin{pmatrix}\num{2960}\\\num{2820}\\\num{2980}\end{pmatrix}$.
	\begin{enumerate}
		\item Déterminer une relation entre $M$, $X$ et $Y$.
		\item Soit $P$ la matrice $P=\begin{pNiceMatrix}[cell-space-limits = 2pt]\frac{1}{60}&-\frac{1}{30}&\frac{1}{60}\\-\frac{17}{600}&\frac{7}{150}&-\frac{1}{75}\\\frac{1}{200}&\frac{3}{100}&-\frac{3}{100} \end{pNiceMatrix}$ et la matrice identité $I=\begin{pmatrix}1&0&0\\0&1&0\\0&0&1\end{pmatrix}$.
		
		On admet que $P \times M = I$. Que peut-on en déduire ?
		\item Montrer que $X=P\times Y$.
		\item En déduire le nombre de tables correspondant à cette commande ?
	\end{enumerate}
\end{enumerate}

\newpage

\setcounter{page}{1}

%si pyluatex utilisé, avec du shell-escape
%\begin{python}
%def ajoute_bit_parite(code) :
%	compt = 0
%	for bit in code :
%		if bit == "1" :
%			compt += 1
%	if compt % 2 == 0 :
%		code += "0"
%	else :
%		code += "1"
%	return code
%
%\end{python}

%---CORRECTION---%

\begin{center}
	\textsf{\LARGE \lieu{}, \serie{}, \jour{} \mois{} \annee}
\end{center}

\begin{center}
	\textsf{\faSortNumericDown\:\:{\large Épreuve U2 - Mathématiques pour l'Informatique}\:\:\faProjectDiagram}
\end{center}

\vspace{0.25cm}

\textbf{\textsf{\Large Exercice 1\dotfill(5 points)}}%exo1c

\medskip

\textbf{Question 1.}

\smallskip

Le seul coefficient différent entre les trois matrices proposées est la coefficient \og 23 \fg.

Et le coefficient \og 23 \fg{} de $M^2$ est $0\time0+1\times1+a\times1=1+a$.

La bonne réponse est donc la réponse \textbf{B}.

\bigskip

\textbf{Question 2.}

\smallskip

On peut (facilement) vérifier que $323=17\times19$.

On peut donc déjà éliminer la réponse \textbf{B} (nombre premier) et la réponse \textbf{C} (divisible par 9).

De plus, $420 = 2^2 \times 3 \times 5 \times 7$, ce qui justifie que 323 et 420 sont premiers entre eux.

La bonne réponse est donc la réponse \textbf{A}.

\bigskip

\textbf{Question 3.}

\smallskip

La ligne n°2 de la matrice $M$ donne 3 successeurs ($1+1+1+0$) à $y$.

La colonne n°2 de la matrice $M$ donne 4 prédécesseurs ($1+1+1+1$) à $y$.

La bonne réponse est donc la réponse \textbf{C}.

\bigskip

\textbf{Question 4.}

\smallskip

En analysant les \textit{liaisons directes} entre les sommets :

\begin{itemize}
	\item $y-t$ n'existe pas, donc cela ne peut pas être la réponse \textbf{A} ;
	\item $t-x$ n'existe pas, donc cela ne peut pas être la réponse \textbf{C} ;
	\item et toutes les liaisons présentes dans la réponse \textbf{B} existent.
\end{itemize}

La bonne réponse est donc la réponse \textbf{B}.

\bigskip

\textbf{Question 5.}

\smallskip

Le nombre de chemins de longueur 3 entre $t$ et $y$ est donné par le coefficient \og 42 \fg{} de $M^3$, qui vaut 8.

La bonne réponse est donc la réponse \textbf{C}.

\vspace{7.5mm}

\textbf{\textsf{\Large Exercice 2\dotfill(5 points)}}%exo2c

\smallskip

\begin{enumerate}
	\item Sur 7 bits, on peut encoder $2^7 = \xinteval{2**7}$ caractères.
	\item 
	\begin{enumerate}
		\item On a "d" qui est associée au nombre 100. Et $100=64+32+4=1100100$.
		
		Donc "d" est associée à l'écriture binaire 1100011.
		\item 1101101 correspond à $64+32+8+4+1=\inteval{64+32+8+4+1}$ en decimal, donc au caractère "m".
	\end{enumerate}
	\item La variable \texttt{compt} est une variable de comptage, qui va être incrémentée de 1 dès que le caractère lu est de \texttt{"1"} (\textsf{L6} de l'algorithme).
	
	Dans le cas où la variable \texttt{compt} est impaire (\textsf{L9} de l'algorithme) , on ajoute 1 à la fin de la chaîne \texttt{code} (\textsf{L13} de l'algorithme).
	
	\begin{PseudoCodePiton}[Filigrane,BarreTitre=false,Gobble=tabs]{}
	Fonction ajoute_bit_parite(code)
		compt ← 0
		Pour i allant de 0 à 6 Faire
			Si code[i] est égal à "1"
			Alors
				compt ← compt + 1
			Fin de Si
		Fin de Pour
		Si le reste de la division de compt par 2 est 0
		Alors
			code ← code + "0"
		Sinon
			code ← code + "1"
		Fin de Si
		Renvoyer code
	\end{PseudoCodePiton}
%	%si pyluatex utilisé, avec du shell-escape
%	\begin{minipage}[t]{0.49\linewidth}\vspace{0pt}
%	\begin{PitonThonnyEditor}<Gobble=tabs,NomFichier=e2m24.py>{\linewidth}
%	def ajoute_bit_parite(code) :
%		compt = 0
%		for bit in code :
%			if bit == "1" :
%				compt += 1
%		if compt % 2 == 0 :
%			code += "0"
%		else :
%			code += "1"
%		return code
%	\end{PitonThonnyEditor}
%	\end{minipage}\hfill
%	\begin{minipage}[t]{0.49\linewidth}\vspace{0pt}
%	\begin{PitonThonnyConsole}<IntroConsole={/usr/bin/python 3.12}>{\linewidth}
%	#Run e2m24.py
%	ajoute_bit_parite("1101100")
%	ajoute_bit_parite("1100001")
%	\end{PitonThonnyConsole}
%	\end{minipage}%
\end{enumerate}

\vspace{5mm}

\textbf{\textsf{\Large Exercice 2\dotfill(10 points)}}%exo3c

\medskip

\textbf{Partie A}

\begin{enumerate}
	\item La négation de : « Tous les candidats ont obtenu une note finale supérieure ou égale à 12 » est « Il existe au-moins un candidat qui a obtenu une note finale strictement inférieure à 12 ».
	\item 
	\begin{enumerate}
		\item L'énoncé nous donne $E=\ExprBool{(ab)+(a*c)+(b*c)}$.
		\item On peut proposer le tableau de Karnaugh suivant :
		
		\begin{Centrage}
			\begin{TableKarnaugh}
				\KarnaughCasesAuto*{(ab)+(a*c)+(b*c)}
				\KarnaughBlocRegroupAuto{(c)+(ab)}
			\end{TableKarnaugh}
		\end{Centrage}
		
		On obtient donc, par regroupement, $E=\mathcolor{red}{c}\mathcolor{orange}{+}\mathcolor{blue}{a\§b}$.
		\item On en déduit que la candidat est sélectionné \og \textcolor{red}{s'il a obtenu 10 points aux compétences professionnelles} \textcolor{orange}{ou} \textcolor{blue}{s'il  obtenu une note finale supérieure ou égale à 12 et au moins 5 points aux compétences humaines} \fg.
		\item Si $b=1$ et $c=0$, alors $E=a\times1+\overline{a}\times0+0\times0=a$.
		
		Ainsi il faudrait qu'il ait obtenu une note finale supérieure ou égale à 12 pour être retenu.
	\end{enumerate}
\end{enumerate}

\smallskip

\textbf{Partie B}

\begin{enumerate}
	\item 
	\begin{enumerate}
		\item On a $M \times N = \ProduitMatrices(240,120,80 § 220,140,60 § 260,160,40)(8 § 6 § 8)[Aff]$.
		\item Concrètement, le fournisseur A a un devis de \num{3280} euros, le fournisseur B a un devis de \num{3080} euros et le fournisseur C a un devis de \num{3360} euros.
		\item Le seul fournisseur chez qui l'entreprise peut commander est donc le fournisseur B.
	\end{enumerate}
	\item 
	\begin{enumerate}
		\item De manière classique, on a $M\times X=Y$.
		\item Sachant que $P \times M=I$, on peut en déduire que $M$ et $P$ sont inverses l'une de l'autre.
		\item On a $M \times N = Y \underset{\times P}{\Longrightarrow} \underbrace{P \times M}_{I} \times X = P \times Y \Longrightarrow X = P \times Y$.
		\item On a $X = P \times Y = 
		\SolutionSysteme(240,120,80 § 220,140,60 § 260,160,40)(2960,2820,2980)[Matrice]$.
		
		Ainsi il y a 8 tables pour cette commande.
	\end{enumerate}
\end{enumerate}

\end{document}