Ci-dessous se trouvent les réponses détaillées aux questions posées.
────────────────────────
I – Algorithmiques de l’Ingénieur – Compréhension Tests (5 points)
1. Pour contribuer à l’émergence de votre domaine par les algorithmes, il s’agit de développer des solutions
informatiques adaptées aux besoins locaux, d’optimiser les processus dans les infrastructures (santé,
agriculture, éducation, etc.) et de former des équipes capables de concevoir des algorithmes performants et
économiquement viables dans un contexte de ressources limitées.
2. Une expression est une combinaison de variables, constantes et opérateurs qui évalue une valeur. Une
instruction est une commande exécutée par l’ordinateur qui modifie l’état du programme (affectation,
condition, boucle, etc.).
3. Une fonction est un sous-programme qui retourne une valeur et peut être utilisée dans des expressions.
Une procédure (ou sous-programme sans valeur de retour) effectue une série d’instructions sans renvoyer
de valeur explicite.
4. L’algorigramme sert à représenter graphiquement l’enchaînement des opérations d’un algorithme. Il
permet ainsi de visualiser la logique, la structure et le flux des instructions avant la programmation.
5. Apprendre à concevoir les algorithmes est souhaitable car ce processus développe la capacité d’analyse,
permet d’optimiser les solutions, encourage une compréhension fine des problèmes et constitue une
compétence essentielle pour l’innovation en programmation.
────────────────────────
II – Circuits Logiques (4 points)
1. Simplification des fonctions en utilisant les théorèmes de l’algèbre de Boole :
(a) On part de
Dans le premier facteur, , ainsi
Le produit devient
En développant et en utilisant les annulations (ex. ), on démontre que l’expression se simplifie en
(b) On considère
Développez d’abord :
En multipliant par , chaque terme étant déjà associé à ou , l’expression reste
(c) Pour
remarquez que
. Alors
et de même
Le produit vaut alors
2. Pour le tableau de vérité donné, on identifie d’abord les lignes pour lesquelles la sortie vaut 1 :
• Ligne 1 ( ) : minterme .
• Ligne 3 ( ) : minterme .
• Ligne 5 ( ) : minterme .
• Ligne 8 ( ) : minterme .
L’expression en somme de mintermes est donc
On peut remarquer que dans les trois premiers termes, est commun. On écrit alors
En simplifiant l’expression entre parenthèses, on obtient
Ainsi, la forme simplifiée par mintermes est
Pour la forme en produit de maxtermes, on considère les lignes où la sortie vaut 0, à savoir :
• Ligne 2 ( ) : maxterme .
• Ligne 4 ( ) : maxterme .
• Ligne 6 ( ) : maxterme .
• Ligne 7 ( ) : maxterme .
La forme produit est alors
3. Le tableau de Karnaugh présenté est :
1 1 1
1 1 1
Tous les éléments valent 1. La fonction logique associée se simplifie donc en
────────────────────────
III – Algorithmes (11 points)
1. Algorithme pour déterminer si une matrice carrée d’ordre 3 est inversible (1,5 points) :
Variables : matrice , déterminant .
Début
Lire .
Calculer
.
Si alors
Afficher "La matrice est inversible."
Sinon
Afficher "La matrice n’est pas inversible."
Fin
2. Algorithme pour résoudre l’équation (1,5 points) :
Variables : nombres et , solution .
Début
Lire et .
Si alors
Si alors
Afficher "Équation indéterminée."
Sinon
Afficher "Équation impossible."
FinSi
Sinon
Calculer .
Afficher "La solution est ", .
Fin
3. Algorithme pour calculer le prix d’un certain nombre de photocopies (2 points) :
Variables : nombre de photocopies , prix total .
Début
Lire .
Si alors
.
SinonSi alors
.
Sinon
.
FinSi
Afficher "Le prix est de ", , " francs."
Fin
4. Algorithme traitant un tableau de 2000 entiers positifs (3 points) :
Variables : tableau , compteur , somme\_imp, compteur\_imp, indice .
Fonction Parité(n)
Si alors
Retourner "pair"
Sinon
Retourner "impair"
FinFonction
Début
Lire le tableau .
Initialiser .
Pour allant de 1 à 2000 faire
Si est impair et alors
.
FinPour
Initialiser et .
Pour allant de 1 à 2000 faire
Si est pair et alors
.
.
FinPour
Si alors
.
Sinon
.
FinSi
Afficher "Nombre d'éléments pairs en positions impaires : ", .
Afficher "Moyenne des éléments impairs en positions paires : ", .
Afficher "Parité de chaque élément :"
Pour de 1 à 2000 faire
Afficher "T[", ,"]= ", , " est ", Parité( ).
FinPour
Fin
5. Algorithme sur une matrice carrée d’ordre 20000 entiers (3 points) :
Variables : matrice avec ,
et pour la moyenne,
pour la diagonale,
pour compter les zéros,
Pour la variance : , et ,
indice .
Début
Lire la matrice .
// Calcul de la moyenne des éléments négatifs au-dessus de la diagonale principale
Initialiser et .
Pour de 1 à faire
Pour de à faire
Si alors
FinSi
FinPour
FinPour
Si alors
Sinon
FinSi
// Calcul de la trace
Initialiser .
Pour de 1 à faire
FinPour
// Comptage des zéros en dessous de la diagonale principale
Initialiser .
Pour de 2 à faire
Pour de 1 à faire
Si alors
FinSi
FinPour
FinPour
// Calcul de la variance des éléments de l’avant-dernière colonne (colonne )
Initialiser .
Pour de 1 à faire
FinPour
.
Initialiser .
Pour de 1 à faire
FinPour
.
// Affichage des résultats
Afficher "Moyenne des éléments négatifs au-dessus de la diagonale : ", .
Afficher "Trace de la matrice : ", .
Afficher "Nombre d'occurrences de zéro en dessous de la diagonale : ", .
Afficher "Variance des éléments de l'avant-dernière colonne : ", .
Fin
────────────────────────
Tu sèmes où bien tu récoltes?
@ImaginAI 2025