MANUELS SCOLAIRES

COURS D’INFORMATIQUE, 2ÈME ANNÉE, ENSEIGNEMENT SECONDAIRE (CYCLE LONG)

Édition 2025 / Enseignement primaire, secondaire et technique en RDC

 

 

PRÉLIMINAIRES

1. Finalités et Buts du Cours

Ce programme a pour ambition de faire évoluer l’élève d’une programmation linéaire et simple vers une programmation structurée et modulaire. L’objectif est de le doter des compétences nécessaires pour traiter des problèmes plus complexes en automatisant les tâches répétitives, en organisant des ensembles de données et en décomposant un programme en sous-problèmes logiques. L’acquisition de ces techniques constitue le fondement de la conception de logiciels robustes et efficaces. 💻

2. Objectif Terminal d’Intégration (OTI)

Au terme de la deuxième année du cycle long, face à un problème impliquant le traitement d’une collection de données (par exemple, gérer une liste de notes d’élèves, analyser une série de relevés de température), l’élève sera capable de concevoir une solution algorithmique complète en utilisant des boucles pour l’itération, des tableaux pour le stockage des données, et des fonctions pour modulariser le code, avant de l’implémenter dans un programme fonctionnel.

3. Compétences de Base Attendues

  • Automatiser : L’élève doit pouvoir identifier une tâche répétitive au sein d’un problème et la traduire correctement en utilisant une structure de boucle appropriée, en maîtrisant les notions de compteur, de condition d’arrêt et de pas d’itération.
  • Organiser : Il doit démontrer sa capacité à déclarer un tableau, à y stocker une collection de données de même type, et à accéder à chaque élément individuellement via son indice pour le lire ou le modifier.
  • Structurer : L’élève doit être en mesure de concevoir et d’appeler des sous-programmes (fonctions) pour réaliser des tâches spécifiques, favorisant ainsi la réutilisabilité et la clarté du code.
  • Manipuler : Il doit maîtriser les opérations de base sur les chaînes de caractères, telles que l’extraction de sous-chaînes et la détermination de leur longueur, pour résoudre des problèmes liés au traitement de texte.

 

 

PARTIE I : L’AUTOMATISATION DES TÂCHES RÉPÉTITIVES : LES BOUCLES 🔁

Aperçu : Cette première partie introduit une des structures de contrôle les plus fondamentales en programmation : la boucle. L’élève apprendra à donner à l’ordinateur l’ordre de répéter une ou plusieurs actions un nombre défini de fois, ce qui ouvre la voie à l’automatisation de processus fastidieux et à la résolution de problèmes à grande échelle.

CHAPITRE 1 : LES STRUCTURES ITÉRATIVES

1.1. Le Principe de la Répétition Contrôlée

Ce point explique la nécessité des boucles pour éviter la redondance du code et pour traiter des volumes de données importants. L’idée est de passer d’une exécution séquentielle à une exécution cyclique et contrôlée.

1.2. La Boucle à Comptage « Pour… De… À… »

Cette section se concentre sur la boucle itérative la plus courante, où le nombre de répétitions est connu à l’avance. Les trois composantes essentielles sont étudiées en détail :

  • L’initialisation du compteur : La valeur de départ.
  • La condition de continuation : La valeur finale à atteindre.
  • L’incrémentation (le pas) : La manière dont le compteur évolue à chaque tour de boucle. Des exemples concrets, comme l’affichage des tables de multiplication ou le calcul de la somme des N premiers entiers, sont utilisés pour illustrer son fonctionnement.

 

 

PARTIE II : LA GESTION DE COLLECTIONS DE DONNÉES : LES TABLEAUX 🗃️

Aperçu : Après avoir appris à répéter des actions, l’élève va découvrir comment gérer efficacement de grandes quantités de données. Cette partie introduit les tableaux (variables indicées), des structures de données essentielles qui permettent de stocker et de manipuler des listes d’informations de manière organisée et accessible.

CHAPITRE 2 : LES VARIABLES INDICÉES (TABLEAUX)

2.1. De la Variable Simple au Tableau

Le cours explique les limites d’une variable simple qui ne peut contenir qu’une seule valeur à la fois. Le tableau (ou vecteur) est introduit comme une super-variable capable de contenir une collection ordonnée d’éléments de même type, chaque élément étant repérable par un numéro unique : son indice.

2.2. Déclaration et Utilisation d’un Tableau

L’élève apprend la nécessité de déclarer un tableau en spécifiant son nom et sa taille (le nombre d’éléments qu’il peut contenir) avant de pouvoir l’utiliser.

2.3. Parcours d’un Tableau avec une Boucle

Cette section cruciale fait le lien direct avec la Partie I. L’élève découvre que la boucle « Pour » est l’outil idéal pour parcourir un tableau, c’est-à-dire pour visiter chaque « case » du tableau afin de lire sa valeur, la modifier ou l’utiliser dans un calcul. Des exercices pratiques sont proposés, comme le calcul de la moyenne des notes d’une classe stockées dans un tableau.

 

 

PARTIE III : LA PROGRAMMATION STRUCTURÉE : FONCTIONS ET SOUS-PROGRAMMES 🧩

Aperçu : Ce volet enseigne à l’élève l’art de la programmation modulaire. Au lieu d’écrire un long bloc de code monolithique, il apprendra à le découper en plusieurs sous-programmes (fonctions), chacun responsable d’une tâche précise. C’est une étape clé vers l’écriture de programmes clairs, faciles à déboguer et réutilisables.

CHAPITRE 3 : LA MODULARISATION DU CODE

3.1. Le Principe du « Diviser pour Régner »

Ce point introduit la notion de sous-programme comme une stratégie pour gérer la complexité. Un problème complexe est décomposé en sous-problèmes plus simples, chacun résolu par une fonction dédiée.

3.2. Définition et Appel d’une Fonction

L’élève apprend à définir une fonction (un bloc de code nommé) qui peut être « appelée » à plusieurs reprises depuis différentes parties du programme principal. Le concept de retour de valeur est expliqué comme le mécanisme par lequel une fonction renvoie un résultat à la partie du code qui l’a appelée.

3.3. Les Aiguillages de Sous-Programmes

Les concepts d’aiguillage conditionnel sont modernisés et présentés comme des structures de sélection multiple (équivalentes à un « switch-case » ou une série de « if-elif-else ») qui permettent d’appeler différentes fonctions en fonction de la valeur d’une variable, créant ainsi des menus interactifs ou des comportements dynamiques.

 

 

PARTIE IV : LE TRAITEMENT AVANCÉ DES DONNÉES : LES CHAÎNES DE CARACTÈRES 📝

Aperçu : L’informatique ne manipule pas que des nombres. Cette dernière partie se concentre sur le traitement des données textuelles, une tâche omniprésente dans les applications réelles. L’élève acquerra les compétences nécessaires pour analyser, découper et transformer des chaînes de caractères.

CHAPITRE 4 : LA MANIPULATION DE TEXTE

4.1. Fonctions de Base sur les Chaînes de Caractères

Ce chapitre couvre les opérations essentielles sur le type de données « texte » :

  • Calculer la longueur : Obtenir le nombre de caractères dans une chaîne.
  • Extraire des sous-chaînes : Isoler une partie d’une chaîne depuis le début, la fin, ou une position quelconque.
  • Concaténer : Assembler plusieurs chaînes de caractères pour en former une nouvelle.

4.2. Applications Pratiques du Traitement de Texte

Des exercices concrets montrent l’utilité de ces fonctions. Par exemple :

  • Un programme qui demande à l’utilisateur son nom complet et qui en extrait automatiquement le prénom et le postnom.
  • Une application qui vérifie si un numéro de téléphone entré par un habitant de Mbandaka commence bien par l’indicatif local requis.
  • Un petit analyseur de mot de passe qui vérifie que sa longueur est suffisante pour être considéré comme sécurisé.

ANNEXES

1. Guide Pédagogique et Concertation

Cette section offre des directives à l’enseignant pour une mise en œuvre efficace du programme. Elle insiste sur la nécessité de lier constamment les nouveaux concepts (boucles, tableaux, fonctions) aux acquis de l’année précédente. Une concertation régulière avec les professeurs de mathématiques est encouragée pour les chapitres sur les fonctions et le traitement des tableaux (matrices).

2. Banque de Projets Intégrateurs

Des idées de projets sont proposées pour permettre aux élèves de mobiliser l’ensemble des compétences acquises durant l’année.

  • Projet « Bulletin Scolaire » : Un programme qui demande de saisir les notes de plusieurs élèves pour différentes matières, les stocke dans des tableaux, calcule la moyenne de chaque élève à l’aide d’une fonction, et affiche un bulletin de notes final.
  • Projet « Mini-Jeu de Devinettes » : Un programme qui choisit un nombre au hasard et utilise une boucle pour permettre à l’utilisateur de faire plusieurs tentatives, en lui donnant des indices (« plus grand », « plus petit ») jusqu’à ce qu’il trouve la bonne réponse.
  • Projet « Analyseur de Noms » : Une application pour une administration de la ville de Kikwit qui prend une liste de noms complets et utilise les fonctions de chaînes pour trier les personnes par leur postnom.

Pour acheter le livre (Version électronique PDF)