QCM : Introduction aux structures et concepts fondamentaux en informatique — 10 questions

Questions et réponses du QCM

1. Qu'est-ce qu'une interface en programmation orientée objet ?

Une classe concrète qui implémente toutes ses méthodes
Un contrat qui définit des fonctionnalités sans fournir leur implémentation
Un objet spécifique créé à partir d'une classe
Une classe abstraite avec des méthodes partiellement implémentées

Un contrat qui définit des fonctionnalités sans fournir leur implémentation

Explication

Une interface en programmation orientée objet est un contrat qui définit des fonctionnalités (méthodes) que les classes doivent implémenter, sans fournir leur implémentation. Elle sert de spécification pour assurer la cohérence et l'interopérabilité entre classes.

2. En quelle année la Loi de Moore a-t-elle été formulée ?

1955
1975
1965
1980

1965

Explication

La Loi de Moore a été formulée en 1965 par Gordon Moore, cofondateur d'Intel, qui a observé que le nombre de transistors sur une puce doublait environ tous les 18 à 24 mois.

3. Quel est le rôle principal d’un arbre binaire dans une structure de données ?

Représenter des relations entre des entités dans une base de données
Organiser efficacement des données hiérarchiques pour la recherche, l’insertion et la suppression
Stocker des données de façon séquentielle pour un accès rapide
Gérer la mémoire de manière dynamique lors de l’exécution d’un programme

Organiser efficacement des données hiérarchiques pour la recherche, l’insertion et la suppression

Explication

L’arbre binaire est principalement utilisé pour organiser efficacement des données hiérarchiques, ce qui facilite la recherche, l’insertion et la suppression d’éléments. Il exploite la structure hiérarchique pour optimiser ces opérations, contrairement à une simple organisation séquentielle ou à d’autres usages comme la gestion mémoire ou la représentation relationnelle.

4. Quand la représentation par matrice d'adjacence d'un graphe a-t-elle été formalisée ou publiée pour la première fois ?

1980
1990
1972
1960

1972

Explication

La représentation par matrice d'adjacence a été formalisée et popularisée dans la littérature informatique par Robert Tarjan dans ses travaux des années 1970, notamment en 1972. Les autres dates sont incorrectes : 1960 correspond à peu près à l'époque des premiers travaux sur la théorie des graphes, mais pas spécifiquement pour la matrice d'adjacence, 1980 et 1990 sont postérieurs à cette formalisation.

5. En quoi la structure d'une base de données relationnelle et le langage SQL diffèrent-ils ou se ressemblent-ils ?

La structure est une méthode de stockage physique, alors que SQL est un langage de programmation général.
La structure est spécifique à chaque base de données, alors que SQL est un langage universel pour toutes.
La structure définit comment les données sont organisées, tandis que SQL est le langage utilisé pour manipuler ces données.
La structure est une étape de conception, alors que SQL est utilisé uniquement pour la sauvegarde des données.

La structure définit comment les données sont organisées, tandis que SQL est le langage utilisé pour manipuler ces données.

Explication

La structure d'une base de données relationnelle concerne l'organisation physique ou logique des données (tables, relations), tandis que SQL est le langage permettant d'interroger, d'insérer ou de modifier ces données. La différence réside dans leur nature : l'une est un modèle d'organisation, l'autre un moyen d'interaction.

6. Qui a formulé ou est crédité de l'algorithme de routage OSPF ?

RIP, 1988, proposé par Xerox PARC
RIPv2, 1990, conçu par David D. Clark
OSPF, 1998, formulé par John Moy
BGP, 1989, développé par Yakov Rekhter et Tatu Ylönen

OSPF, 1998, formulé par John Moy

Explication

L'algorithme de routage OSPF (Open Shortest Path First) a été formulé et standardisé par John Moy en 1998. Les autres options correspondent à d'autres protocoles de routage ou à des dates différentes, mais ne sont pas liés à la formulation d'OSPF.

7. Quelle est la cause principale de l'efficacité de la méthode Divide & Conquer ?

Elle utilise la parallélisation pour exécuter plusieurs sous-problèmes simultanément
Elle optimise la mémoire en évitant la récursion
Elle divise le problème en sous-problèmes plus petits, puis les résout indépendamment
Elle réduit la nombre d'opérations en utilisant des heuristiques

Elle divise le problème en sous-problèmes plus petits, puis les résout indépendamment

Explication

La cause principale de l'efficacité de Divide & Conquer est qu'il divise le problème en sous-problèmes plus petits, puis les résout indépendamment, ce qui permet de simplifier la résolution et d'optimiser la complexité.

8. Comment peut-on appliquer un système sur puce (SoC) dans la conception d’un produit électronique ?

En utilisant uniquement des composants discrets pour maximiser la contrôle sur chaque élément
En intégrant tous les composants nécessaires dans une seule puce pour réduire la taille et la consommation
En programmant un microcontrôleur externe pour gérer la communication avec le SoC
En utilisant des modules séparés pour chaque composant afin d’augmenter la modularité du produit

En intégrant tous les composants nécessaires dans une seule puce pour réduire la taille et la consommation

Explication

L’intégration de tous les composants essentiels dans une seule puce, caractéristique principale des SoC, permet de réduire la taille, la consommation d’énergie et d’optimiser la performance du produit électronique. Cette approche est couramment utilisée dans la conception de smartphones, objets connectés, et autres appareils compacts.

9. Quelle est la caractéristique principale de la modularité en programmation ?

Elle garantit que chaque module utilise la même implémentation interne
Elle oblige à écrire tout le code dans un seul fichier pour simplifier la maintenance
Elle empêche la réutilisation du code entre différents modules
Elle permet de diviser un système en modules indépendants avec des interfaces clairement définies

Elle permet de diviser un système en modules indépendants avec des interfaces clairement définies

Explication

La modularité en programmation consiste à diviser un système en modules indépendants, chacun avec une interface claire, facilitant la maintenance, la réutilisation et l’extensibilité du code.

10. Le tri par sélection est une méthode de tri qui consiste à :

À chaque étape, sélectionner le plus grand élément du sous-tableau non trié et l’échanger avec l’élément en début de sous-tableau.
À chaque étape, sélectionner le plus petit élément du sous-tableau non trié et l’échanger avec l’élément en début de sous-tableau.
Insérer chaque nouvel élément à sa place dans la partie déjà triée en décalant les autres éléments.
Diviser le tableau en deux parties, trier chacune séparément, puis fusionner les résultats.

À chaque étape, sélectionner le plus petit élément du sous-tableau non trié et l’échanger avec l’élément en début de sous-tableau.

Explication

Le tri par sélection consiste à parcourir le tableau, à chaque étape, sélectionner le plus petit élément du sous-tableau non trié, puis l’échanger avec l’élément en début de cette partie. Cette méthode répète cette opération jusqu’à ce que tout le tableau soit trié.

Révisez avec les flashcards

Mémorisez les réponses avec 20 flashcards sur Introduction aux structures et concepts fondamentaux en informatique.

Programmation orientée objet — définition ?

Paradigme basé sur classes et objets.

Interface — rôle ?

Définir un contrat de méthodes sans implémentation.

Encapsulation — principe ?

Protection des données internes via des attributs privés.

Voir les flashcards →

Approfondir avec la fiche

Consultez la fiche de révision complète sur Introduction aux structures et concepts fondamentaux en informatique.

Voir la fiche →

Cours similaires

Crée tes propres QCM

Importe ton cours et l'IA génère des QCM avec corrections en 30 secondes.

Générateur de QCM