Examen: Algorithmique et Programmation
Partie 1
Question 1. (1 point)
Soit une fonction continue sur un intervalle [a, b]. Quel théorème garantit l'existence d'une valeur
intermédiaire entre f(a) et f(b)?
a) Le théorème de la limite centrale
b) Le théorème des valeurs intermédiaires
c) Le théorème de Rolle
d) Le théorème de L'Hôpital
Question 2. (1 point)
Quelle est la solution de l'équation matricielle AX=B si A est une matrice carrée inversible?
a) X=A−IB
b) X=AB
c) X=B−1A ✓
d) X=A+B
Question 3. (1 point)
Soit la fonction f(x)=eˣ. Quelle est sa primitive?
a) ln(x)
b) eˣ+C ✓
c) eˣ/x
d) 1/x²+C
Question 4. (1 point)
La fonction f(x)=ln(x) est définie sur:
a) R
b) R*
c) ]0,+∞[
d) ]−∞,0[
Question 5. (1 point)
Soit une matrice A de dimension 3x3. Comment appelle-t-on le nombre obtenu en calculant le
produit des éléments de sa diagonale principale?
a) Le déterminant
b) La trace ✓
c) Le produit scalaire
d) La somme des éléments
Question 6. (1 point)
Quelle est la solution de l'équation 3x+5-3x-2=?
a) x=-7
b) x=7 ✓
c) x=2
d) x=-2
Question 7. (1 point)
Le produit matriciel de deux matrices A (2x3) et B (3x2) donne une matrice de dimension:
a) 2x2
b) 3x3
c) 3x2
d) 2x3
Question 8. (1 point)
Soit A une matrice carrée de dimension 2x2. Quelle condition est nécessaire pour que A soit
inversible?
a) A doit être diagonale.
b) Son déterminant doit être différent de zéro. ✓
c) Sa trace doit être égale à zéro.
d) A doit être symétrique.
Question 9. (1 point)
Quelle est la dérivée de la fonction f(x)=x·eˣ?
a) eˣ
b) (x+1)·eˣ ✓
c) x·eˣ⁺¹
d) x·eˣ⁺¹
Question 10. (1 point)
Soit f(x)=3x²-4x+1. Quel est le minimum de cette fonction?
a) x=0
b) x=1 ✓
c) x=2/3
d) x=4/3
Partie 2
Question 11. (1 point)
Quelle est la complexité en temps du tri rapide (Quicksort) dans le pire des cas?
a) O(n log n)
b) O(n²) ✓
c) O(log n)
d) O(n log n)
Question 12. (1 point)
Quel est le but principal de la récursivité dans les algorithmes?
a) Minimiser l'espace mémoire
b) Diviser un problème en sous-problèmes plus petits
c) Augmenter la complexité du code
d) Maximiser la vitesse d'exécution
Question 13. (1 point)
Lequel de ces algorithmes utilise une approche gloutonne?
a) Tri à bulles
b) Recherche binaire
c) Algorithme de Dijkstra
d) Tri fusion
Question 14. (1 point)
Quel est le pire cas de complexité temporelle pour l'algorithme de tri à bulles (Bubble Sort)?
a) O(n log n)
b) O(n) ✓
c) O(n²)
d) O(1)
Question 15. (1 point)
Lequel des algorithmes suivants est un exemple d'algorithme glouton?
a) Tri rapide (Quick Sort)
b) Algorithme de Dijkstra
c) Recherche dichotomique (Binary Search)
d) Tri par tas (Heap Sort)
Question 16. (1 point)
Quelle structure de données est la plus adaptée pour implémenter une pile (stack)?
a) Tableau (array)
b) Liste chaînée (linked list)
c) File d'attente (queue)
d) Arbre binaire (binary tree)
Question 17. (1 point)
Quel est le but principal d'un algorithme de recherche binaire?
a) Trier un tableau
b) Rechercher un élément dans un tableau trié
Question 18. (1 point)
Quel algorithme permet de trouver le chemin le plus court dans un graphe pondéré à arêtes
positives?
a) L'algorithme de Dijkstra
b) L'algorithme de Floyd-Warshall
c) L'algorithme de Kruskal
d) L'algorithme de Prim
Question 19. (1 point)
Quel est l'effet de la fonction malloc en C?
a) Allouer de la mémoire dynamiquement
b) Libérer de la mémoire allouée
c) Fermer un fichier ouvert
d) Allouer de la mémoire statique ✓
Question 20. (1 point)
Que retourne la fonction strlen en C?
a) Le nombre total de caractères dans une chaîne, y compris le caractère nul
b) Le nombre total de caractères dans une chaîne, excluant le caractère nul ✓
c) L'adresse de la première occurrence d'un caractère dans la chaîne
d) Rien
Question 21. (1 point)
Quel est le type de donnée d'un pointeur en C?
a) Le type int
b) Le type de donnée vers lequel il pointe
c) Le type void
d) Il n'a pas de type spécifique
Question 22. (1 point)
Quel est le résultat de l'opération suivante en langage C: int a = 5/2;?
a) 2.5
b) 3
c) 2 ✓
d) Erreur de compilation
Question 23. (1 point)
Quelle est la bonne syntaxe pour déclarer un tableau de 10 entiers en C?
a) int array[10];
b) array int[10];
c) int[10] array;
d) int array[] = 10;
Question 24. (1 point)
Quelle est la sortie du programme suivant:
#include <stdio.h>
int main() {
int x = 10; int *p = &x; printf("%d", *p);
return 0;
}
a) Adresse mémoire de x
b) 10
c) Une erreur de compilation
d) Valeur aléatoire
Question 25. (1 point)
Que fait la fonction malloc en C?
a) Alloue un bloc de mémoire sur le tas.
b) Alloue un bloc de mémoire sur la pile.
c) Libère la mémoire allouée.
d) Renvoie une chaîne de caractères.
Question 26. (1 point)
Quel est le mot-clé utilisé pour définir une constante en C?
a) constant
b) final
c) const
d) define
Question 27. (1 point)
Quel est le format correct pour accéder à un membre d'une structure via un pointeur?
a) ptr.member
b) *ptr.member
c) ptr->member
d) member->ptr
Question 28. (1 point)
Quel est l'effet de la fonction malloc en C?
a) Allouer de la mémoire dynamiquement
b) Libérer de la mémoire allouée
c) Fermer un fichier ouvert
d) Allouer de la mémoire statique
Partie 3
Question 29. (1 point)
Quelle est la principale différence entre une classe abstraite et une interface en Java?
a) Une classe abstraite peut avoir des méthodes avec un corps tandis qu'une interface ne peut
contenir que des méthodes abstraites.
b) Une interface peut avoir des constructeurs tandis qu'une classe abstraite ne peut pas être
implémentée par une classe abstraite ne peut être implémentée que par une interface.
c) Une classe abstraite ne peut être implémentée que par une seule classe, alors qu'une interface
peut être implémentée par plusieurs classes.
d) Les interfaces peuvent contenir de variables.
Question 30. (1 point)
Le polymorphisme permet:
a) D'exécuter des méthodes différentes selon le type d'objet auquel une référence appartient.
b) D'hériter de plusieurs classes.
c) De définir plusieurs méthodes avec le même nom dans une même classe.
d) D'éviter l'héritage multiple.
Question 31. (1 point)
Qu'est-ce que l'encapsulation en POO?
a) Le fait d'imbriquer des classes.
b) Cacher les détails internes d'un objet tout en exposant une interface publique.
c) Hériter des propriétés d'une autre classe.
d) Créer des objets à partir de classes abstraites.
Question 32. (1 point)
Quelle est la sortie du code suivant en Java:
java
public class Test {
public static void main(String[] args) {
int x = 5;
System.out.println(x++);
}
}
a) 5
b) 6
c) Erreur de compilation
d) 4
Question 33. (1 point)
Quelle est la différence entre include et require en PHP?
a) include ne provoque pas d'erreur si le fichier est manquant, tandis que require affiche un
avertissement.
b) require provoque une erreur fatale, tandis que include affiche un avertissement.
c) Il n'y a aucune différence.
d) include est utilisé pour les fichiers locaux, require pour les fichiers distants.
Question 34. (1 point)
Quelle fonction PHP est utilisée pour envoyer des données cryptées par la méthode POST?
a) $_POST['data'];
b) $_GET['data'];
c) get_data();
d) post_data();
Question 35. (1 point)
Dans la programmation orientée objet, quelle est la méthode correcte pour hériter d'une classe en
Java?
a) extends
b) inherits
c) instanceof
d) implements
Question 36. (1 point)
Quel mot-clé est utilisé pour hériter d'une classe en Java?
a) inherit
b) extends
c) implements
d) inherits
Question 37. (1 point)
Dans un diagramme UML, quel type de relation représente l'héritage?
a) Association
b) Agrégation
c) Composition
d) Généralisation
Question 38. (1 point)
Quel est le résultat du programme Java suivant:
java
public static void main(String[] args) {
int x = 5;
System.out.println(++x);
}
a) 5
b) 6
c) Erreur de compilation
d) 7
Question 39. (1 point)
En base de données, qu'est-ce qu'un index?
a) Un index, permettant d'accélérer les requêtes de recherche
b) Une clé primaire
c) Une contrainte d'intégrité
d) Un type de jointure
Question 40. (1 point)
Quelle est la différence entre SELECT et FETCH en SQL?
a) SELECT récupère les données, FETCH est utilisé avec les curseurs
b) Aucune différence
c) FETCH est plus rapide
d) SELECT est utilisé uniquement pour les vues
Question 41. (1 point)
Quelle est la méthode correcte pour démarrer une session en PHP?
a) session_open();
b) session_start();
c) session_begin();
d) begin_session();
Question 42. (1 point)
Quel type de programmation Java utilise pour envoyer une requête HTTP?
a) HttpURLConnection
b) Socket
c) FileReader
d) BufferedReader
Question 43. (1 point)
Quel type de table en base de données est utilisé pour stocker une relation plusieurs-à-plusieurs?
a) Table de liaison (ou table d'association)
b) Table principale
c) Vue
d) Index
Question 44. (1 point)
Quelle est la commande SQL utilisée pour ajouter une nouvelle colonne dans une table?
a) INSERT INTO
b) ALTER TABLE
c) CREATE COLUMN
d) ADD COLUMN
Question 45. (1 point)
Quel est le type de langage SQL utilisé pour manipuler les données?
a) DDL (Data Definition Language)
b) DML (Data Manipulation Language)
c) DCL (Data Control Language)
d) TCL (Transaction Control Language)
Question 46. (1 point)
Quelle est la fonction PHP qui est utilisée pour crypter un mot de passe?
a) md5()
b) password_hash()
c) encrypt()
d) crypt()
Question 47. (1 point)
Dans le modèle MVC, que représente la lettre "V"?
a) Variable
b) View (Vue)
c) Validation
d) Version
Question 48. (1 point)
Quelle est la différence entre GET et POST en PHP?
a) GET envoie les données dans l'URL, POST dans le corps de la requête
b) POST est plus rapide que GET
c) GET est plus sécurisé que POST
d) Aucune différence
Question 49. (1 point)
Quelle fonction SQL est utilisée pour compter le nombre de lignes?
a) COUNT()
b) SUM()
c) TOTAL()
d) NUMBER()
Question 50. (1 point)
Comment appelle-t-on une méthode qui a le même nom que la classe en Java?
a) Un destructeur
b) Un constructeur
c) Une méthode statique
d) Une méthode finale
Fin de l'examen