Première année · années préparatoires intégrées · S1
Informatique 1 — Algorithmique et langage C, API 1, ENSAM Rabat
Le module Informatique 1 de l'ENSAM Rabat apprend à résoudre un problème en deux temps : écrire un algorithme, puis le traduire en langage C. Ce parcours suit les six chapitres du polycopié du module, dans leur ordre : algorithmique ; éléments de base du C ; structures de contrôle ; tableaux et chaînes de caractères ; pointeurs et allocation dynamique ; fonctions.
Chaque programme que tu écris est compilé par un vrai compilateur C (Clang, norme C17) directement dans ton navigateur, puis vérifié par des tests. Quand ton programme divise par zéro, sort d'un tableau ou oublie de libérer sa mémoire, la page te le dit et t'explique pourquoi.
Après le parcours, la bibliothèque de TD et de TP reprend, exercice par exercice, les quatre séries « TD & TP » du module, le TP final, les exercices du polycopié et une série complémentaire sur les boucles : l'algorithme d'abord, le programme C ensuite. Elle est facultative.
- Modules
- 12
- Leçons
- 43
- Durée
- ~23 heures
Construit à partir du syllabus API (2024), du polycopié de langage C, des séries de TD & TP et du TP final d'Informatique 1 de l'ENSAM Rabat (2024-2026). Understand est indépendant de l'école.
CommencerCe que tu sauras faire
- Analyser un problème et écrire son algorithme en pseudo-langage (données, résultats, lexique)
- Écrire, compiler et corriger un programme C - types, constantes, printf et scanf, opérateurs et priorités
- Programmer des choix (if, else, switch) et des répétitions (while, for, do-while), et suivre leur exécution à la main
- Manipuler des tableaux à une et deux dimensions et des chaînes de caractères
- Suivre un pointeur à la main, parcourir un tableau par pointeur, réserver et libérer de la mémoire avec malloc et free
- Découper un programme en fonctions et choisir entre passage par valeur et passage par adresse
Pour qui
Les étudiants de première année API de l'ENSAM Rabat, et tout étudiant qui suit un premier cours d'algorithmique et de programmation en C.
Ce qu'il te faut
Aucune connaissance en programmation n'est supposée. Un ordinateur est recommandé : le compilateur tourne dans le navigateur (téléchargement unique d'environ 20 Mo). Les lectures, les prédictions, les tableaux de suivi et les QCM fonctionnent aussi sur téléphone.
Programme
Chapitre 1 — AlgorithmiqueDu problème à l'algorithme, puis au programme. Variables, types, opérateurs, lecture et écriture. 1 module · 5 leçons
- 1 Algorithmes et pseudo-langageRésoudre le problème avant d'écrire la moindre ligne de C.
Chapitre 2 — Éléments de base du langage CPremier programme, variables et types, constantes, affichage, saisie, opérations et priorités. 2 modules · 9 leçons
- 2 Premier programme, types et constantesCe que contient un programme C, et la nature exacte de chaque valeur qu'il manipule.
- 3 Affichage, saisie et opérationsprintf et scanf avec les bons formats ; division entière, modulo, incrémentation et priorités.
Chapitre 3 — Structures de contrôleInstructions et blocs, if-else, conditions imbriquées, switch ; boucles while, for et do-while. 2 modules · 9 leçons
- 4 Instructions conditionnellesFaire exécuter une instruction, ou une autre, selon les données.
- 5 Les bouclesRépéter une instruction tant qu'il le faut - et savoir qu'elle s'arrêtera.
Chapitre 4 — Tableaux et chaînes de caractèresTableaux à une dimension, chaînes de caractères et string.h, tableaux à deux dimensions. 3 modules · 8 leçons
- 6 Tableaux à une dimensionRanger n valeurs du même type sous un seul nom, et les traiter avec une boucle.
- 7 Chaînes de caractèresUn tableau de char terminé par '\0' - et les fonctions de string.h qui le manipulent.
- 8 Tableaux à deux dimensionsDes lignes et des colonnes - deux indices, deux boucles imbriquées.
Chapitre 5 — Pointeurs et allocation dynamiqueAdresses, opérateurs & et *, pointeurs et tableaux, pointeurs void, malloc et free. 2 modules · 7 leçons
- 9 PointeursUne variable qui contient l'adresse d'une autre - pour lire et écrire à distance.
- 10 Allocation dynamique de mémoireRéserver la mémoire quand la taille n'est connue qu'à l'exécution - et la rendre.
Chapitre 6 — FonctionsDéclaration, prototype, appel, passage par valeur, passage par adresse, tableaux en argument. 2 modules · 5 leçons
- 11 FonctionsDécouper un programme en sous-programmes nommés, qui reçoivent des valeurs et en renvoient une.
- 12 Passage par adresse et tableaux en argumentDonner à une fonction l'adresse d'une variable pour qu'elle la modifie ; lui passer un tableau.