
COURS D’INFORMATIQUE, 1ÈRE 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 marque une transition fondamentale, faisant passer l’élève du statut d’utilisateur de logiciels à celui d’initié à la logique de programmation. L’objectif est de cultiver la pensée algorithmique, une compétence transversale qui consiste à décomposer un problème complexe en une séquence d’instructions simples et ordonnées. Il s’agit de former des esprits capables de structurer leur raisonnement pour résoudre des problèmes de manière logique et efficace, une aptitude cruciale pour toutes les filières techniques et scientifiques. 💡
2. Objectif Terminal d’Intégration (OTI)
Au terme de la première année du cycle long, face à un problème simple dont la solution peut être automatisée (par exemple, calculer une moyenne, convertir une devise), l’élève sera capable de concevoir un algorithme, de le traduire en ordinogramme, et de l’implémenter dans un langage de programmation simple en utilisant correctement les variables, les instructions d’entrée-sortie et les structures conditionnelles de base.
3. Compétences de Base Attendues
- Analyser et Modéliser : L’élève doit pouvoir identifier les données d’entrée, le traitement à effectuer et les résultats de sortie pour un problème donné. [cite_start]Il doit être capable de représenter la solution sous forme d’un algorithme textuel et d’un ordinogramme utilisant les symboles normalisés[cite: 127].
- Traduire : Il doit démontrer sa capacité à transcrire un algorithme simple en un programme fonctionnel, en respectant la syntaxe d’un langage de programmation élémentaire.
- [cite_start]Mettre en œuvre : L’élève doit pouvoir saisir, tester et déboguer un court programme, en corrigeant les erreurs de syntaxe et de logique pour obtenir le résultat attendu[cite: 127, 129, 130].
- [cite_start]Raisonner : Il doit appliquer la logique conditionnelle (structures alternatives) pour créer des programmes qui peuvent prendre des décisions simples[cite: 129].
PARTIE I : DE LA PENSÉE HUMAINE À LA LOGIQUE DE LA MACHINE 🧠
Aperçu : Cette partie introductive jette les bases de la programmation en se concentrant sur la méthode avant l’outil. L’élève apprendra à formaliser sa pensée pour la rendre compréhensible par un ordinateur. La maîtrise de l’algorithmique et de ses outils de représentation est le prérequis indispensable avant d’écrire la moindre ligne de code.
CHAPITRE 1 : FONDEMENTS DE L’ALGORITHMIQUE
1.1. Notions Préliminaires Essentielles
1.1.1. Programme et Langage de Programmation
[cite_start]Ce point établit une distinction claire entre le programme, qui est une suite d’instructions destinée à la machine, et le langage de programmation, qui est l’outil formel (avec sa syntaxe et son vocabulaire) utilisé pour écrire ce programme[cite: 127].
1.1.2. Algorithme : La Recette de la Résolution de Problèmes
[cite_start]L’algorithme est présenté comme une séquence finie et non ambiguë d’opérations permettant de résoudre une classe de problèmes[cite: 127]. L’analogie avec une recette de cuisine ou un itinéraire est utilisée pour rendre le concept intuitif et accessible.
1.2. Les Outils de Représentation d’un Algorithme
1.2.1. Le Pseudocode : Structurer l’Idée en Langage Humain
Le pseudocode est introduit comme une méthode de description d’un algorithme qui utilise un langage naturel structuré, à mi-chemin entre le français et un véritable langage de programmation. Il permet de se concentrer sur la logique sans se soucier de la syntaxe.
1.2.2. L’Ordinogramme : Visualiser le Flux d’Instructions
[cite_start]L’élève apprendra à utiliser l’ordinogramme (ou logigramme) pour représenter graphiquement les étapes et les décisions d’un algorithme[cite: 127]. [cite_start]La signification de chaque symbole normalisé (début/fin, traitement, entrée/sortie, décision) sera étudiée et mise en pratique[cite: 127].
PARTIE II : LES BRIQUES ÉLÉMENTAIRES D’UN PROGRAMME INFORMATIQUE 🧱
Aperçu : Une fois la logique de résolution de problèmes établie, ce volet se concentre sur les composants fondamentaux de tout programme. L’élève découvrira comment un ordinateur mémorise et manipule l’information à travers les concepts de variables, de constantes et d’opérateurs.
CHAPITRE 2 : MANIPULATION DES DONNÉES
2.1. Variables et Constantes
[cite_start]La variable est expliquée comme une « boîte » nommée dans la mémoire de l’ordinateur, dont le contenu peut changer au cours de l’exécution du programme[cite: 127]. [cite_start]La constante, quant à elle, est une valeur qui reste fixe[cite: 127]. L’élève apprendra à choisir des noms de variables significatifs (par exemple, prixUnitaire plutôt que p).
2.2. Les Types de Données de Base
Une introduction aux types de données les plus courants est faite pour montrer que l’ordinateur ne traite pas toutes les informations de la même manière : les nombres entiers, les nombres réels (décimaux) et les chaînes de caractères (texte).
2.3. Expressions et Opérateurs
[cite_start]Ce point couvre la construction d’expressions qui combinent variables, constantes et opérateurs pour effectuer des calculs[cite: 127].
- Opérateurs arithmétiques : Addition (+), soustraction (-), multiplication (*), division (/).
- Opérateurs de comparaison : Égal à (=), différent de (<>), plus grand que (>), plus petit que (<).
- [cite_start]Priorité des opérateurs : Les règles de priorité (PEMDAS) sont rappelées en collaboration avec le cours de mathématiques[cite: 129, 135].
PARTIE III : DIALOGUE AVEC LA MACHINE : ENTRÉES, SORTIES ET INSTRUCTIONS ⌨️
Aperçu : Ce volet rend la programmation concrète et interactive. L’élève apprendra à écrire des programmes qui communiquent avec l’utilisateur : ils pourront poser des questions, recevoir des données, effectuer des traitements et afficher des résultats. C’est l’étape où le code prend vie.
CHAPITRE 3 : LE FLUX D’EXÉCUTION SÉQUENTIEL
3.1. L’Instruction d’Affectation
[cite_start]L’instruction d’affectation (équivalente au LET en BASIC) est présentée comme l’opération fondamentale qui consiste à stocker une valeur ou le résultat d’une expression dans une variable[cite: 127]. Par exemple, totalVente = quantite * prixUnitaire.
3.2. L’Instruction d’Affichage
[cite_start]L’instruction d’affichage (équivalente au PRINT en BASIC) permet au programme de communiquer un résultat à l’utilisateur en l’affichant à l’écran[cite: 127]. L’élève apprendra à afficher des messages textuels et le contenu de variables.
3.3. L’Instruction d’Entrée
[cite_start]L’instruction d’entrée (équivalente à l’ INPUT en BASIC) met le programme en pause pour permettre à l’utilisateur de saisir une donnée au clavier, qui sera ensuite stockée dans une variable pour un traitement ultérieur[cite: 129].
3.4. Le Branchement Inconditionnel et la Séquentialité
[cite_start]Le concept du GOTO est modernisé et présenté comme la nature fondamentalement séquentielle d’un programme simple, qui exécute les instructions les unes après les autres, de haut en bas[cite: 127]. L’importance de l’ordre des instructions est mise en évidence à travers des exemples concrets.
PARTIE IV : LE CŒUR DE LA LOGIQUE : LES STRUCTURES DE CONTRÔLE CONDITIONNELLES ⚖️
Aperçu : Cette dernière partie introduit le concept le plus puissant de la programmation de base : la capacité pour un programme de prendre des décisions. L’élève apprendra à créer des programmes « intelligents » qui peuvent adapter leur comportement en fonction des données qu’ils reçoivent ou des conditions rencontrées.
CHAPITRE 4 : LA PRISE DE DÉCISION
4.1. La Structure Alternative « Si… Alors… »
[cite_start]La structure conditionnelle (équivalente au IF…THEN en BASIC) est le cœur de ce chapitre[cite: 129]. L’élève apprendra à formuler une condition logique et à définir le bloc d’instructions qui ne sera exécuté que si cette condition est vraie. Par exemple : Si moyenne >= 50 Alors afficher « Admis ».
4.2. L’Alternative Complète « Si… Alors… Sinon… »
La structure est étendue pour gérer les deux cas de figure d’une condition : ce qu’il faut faire si elle est vraie, et ce qu’il faut faire si elle est fausse. Exemple : Si age >= 18 Alors afficher « Majeur » Sinon afficher « Mineur ».
4.3. Les Opérateurs Logiques « ET » et « OU »
[cite_start]Les opérateurs logiques AND et OR sont introduits pour permettre la construction de conditions plus complexes, en combinant plusieurs tests[cite: 129]. Par exemple : Si age > 18 ET nationalite == « Congolaise » Alors…
4.4. Introduction aux Fonctions Prédéfinies
[cite_start]Le cours se termine par une introduction à l’utilisation de fonctions simples déjà intégrées au langage, comme celles permettant d’obtenir la partie entière d’un nombre (équivalent de INT) ou de générer un nombre aléatoire (équivalent de RND) pour des programmes ludiques[cite: 129].
ANNEXES
1. Guide Pédagogique pour l’Enseignant
Cette section fournit des conseils méthodologiques à l’enseignant. Elle suggère l’utilisation d’un langage de programmation moderne et accessible comme Python pour sa syntaxe claire, ou d’environnements de programmation visuels par blocs pour une première initiation. [cite_start]L’importance de la collaboration avec les professeurs de mathématiques est soulignée, notamment pour les notions d’expressions et de logique[cite: 129, 135].
2. Banque de Problèmes et de Projets
Une série d’exercices à complexité progressive est proposée pour chaque chapitre, ancrée dans des contextes congolais.
- Projet 1 : Un programme qui calcule le coût total d’un achat au marché de la Liberté à Masina, en demandant le prix et la quantité de plusieurs articles.
- Projet 2 : Un petit « guichet automatique » qui vérifie un code PIN simple et autorise ou refuse un retrait en fonction du solde.
- Projet 3 : Un programme qui détermine si un élève du Kasaï doit être admis en classe supérieure sur base de ses points en période.