Académique Documents
Professionnel Documents
Culture Documents
OFFICIELLES
PO U R L E N S E I G N E M E N T D E
LINFORMATIQUE
Premire et deuxime annes des classes prparatoires
filires : MP, PSI et TSI
PREAMBULE
Les technologies de linformation et les sciences du numrique sont
aujourdhui utilises dans les diffrents secteurs dactivits et spcialement en
ingnierie. Aussi leur intgration dans le cursus des Classes Prparatoires aux
Grandes Ecoles (CPGE) est une ncessit pour prparer tous les lves leurs
futurs mtiers.
Ces technologies de linformation tant en perptuelle volution, le
programme denseignement relatif ces disciplines est amen aussi tre modifi
continuellement afin de sadapter cette volution permanente.
Ainsi, Le Ministre de lEducation Nationale entreprend rgulirement
dimportants efforts pour rviser les programmes dinformatique dans les classes
prparatoires marocaines. A cet effet, ce prsent guide a t labor pour permettre
de :
SOMMAIRE
page 4
B- Capacits concernes
page 5
page 6
page 8
E-
page 15
pratique de la programmation,
C.3/ Mthodologie
* Il est recommand de mettre laccent sur le raisonnement algorithmique
beaucoup plus que sur la syntaxe du langage de programmation.
* Il est conseill de donner des exemples et de proposer des exercices
inspirs des autres disciplines scientifiques (mathmatiques, physique,
sciences de lindustrielle et chimie).
* II est ncessaire de transcrire les algorithmes vus pendant les sances
de cours en langage de programmation.
* Il est souhaitable dintgrer des lments de la discipline informatique
dans llaboration des travaux dinitiative personnelle encadre(TIPE).
Juillet 2014 Page 5
* Il nest pas demand daborder les aspects thoriques qui relvent des
autres disciplines scientifiques, mais de mettre en uvre les algorithmes
permettant lanalyse des rsultats surtout concernant lutilisation du
logiciel de simulation.
* Il est noter que le langage de programmation, le logiciel de simulation
numrique ainsi que le systme de gestion de bases de donnes (SGBD)
qui seront utiliss dans le cadre de ce cours feront lobjet dune note de
service manant de lautorit gouvernementale charge des classes
prparatoires aux grandes coles.
D.I
D.I.a/Capacits vises
se familiariser
programmation,
avec
la
syntaxe
de
base
dun
langage
de
appeler quelques
programmation.
fonctions
lmentaires
du
langage
de
D.I.c/ Contenu
D.I.c.1/ Environnement matriel et logiciel dun systme informatique
Le but de ce paragraphe est de prsenter succinctement lensemble des
ressources physiques constituant le systme informatique ainsi que lensemble des
moyens qui permettent dutiliser lordinateur. On abordera aussila reprsentation des
donnes numriques sous forme binaire dans la mmoire.
a/ Architecture simplifie dun ordinateur
*Composants de base
- ordinateur personnel, tablette, PDA,
- diffrencier les diffrents composants constituant un ordinateur
(mmoire vive, mmoire de masse, unit centrale, priphriques
dentre-sortie, ports de communication)
* Mmoire centrale et reprsentation des donnes
- rle, caractristiques, capacit (notion de bit, de mot mmoire,
dadresse mmoire, ).
* Reprsentation de donnes dans la mmoire
- types de donnes (nombres ou caractres),
- systme binaire,
- reprsentation des nombres entiers en mmoire (nombre positif ou
ngatif, bit de signe, nombre non sign),
- reprsentation des nombres rels en mmoire (mantisse et exposant,
dfinition de lcriture en virgule flottante normalise)
- limites et dpassement de la mmoire (illustration par des exemples
simple (division par zro,)),
- codage et reprsentation des caractres (code ASCII, UTF8, UTF16,
Unicode),
- tude des mcanismes de dpassement de capacit (les "overflow"),
les erreurs d'arrondis, les divisions par zro.
* Processeur
- caractristiques (vitesse, frquence de lhorloge, ),
- fonctions (oprations arithmtiques et logiques).
* Priphriques
- priphriques d'entre-sortie, ports de communication, Mmoires
auxiliaires,).
b/ Systme dexploitation dun ordinateur
- dfinition et exemples de systmes dexploitation (Windows et Linux),
- fonctions principales dun systme dexploitation (vrification des
ressources, gestion de fichiers, gestion de dossiers, ),
-exemples dutilisation de quelques commandes usuelles (cration
de dossiers, copie de fichiers, ),
-mise en uvre d'un environnement de dveloppement.
D.I.c.2/Algorithmique de base
Le but de ce paragraphe est dinitier les lves la conception dalgorithmes
lmentaires manipulant des variables de types simples, des expressions et des
structures de contrle, puis convertir ces algorithmes en programmes laide dun
langage de programmation
a/Dfinitions
* algorithme et programme,
*langage de programmation,
*interprteur et compilateur.
b/Elments de base dun algorithme
*variables.
*types simples (entier, flottant, caractre),
*affectation,
*entres / sorties standards et fonctions de la bibliothque.
c/Oprateurs et les expressions
*les oprateurs arithmtiques et logiques,
* les expressions.
d/Structures de contrle
*les instructions de choix (la slection logique),
*les instructions ditration ou de rptition (les boucles).
e/ Dmarche danalyse descendante
*principe de la dmarche,
*affinements successifs,
*exemples.
f) Modlisation.
*analyser une situation,
*spcifier,
*modliser.
g) Vrification du code
*invariants de boucle,
*tests des segments itratifs,
*estimation de la complexit d'un calcul.
organiser les lments sous forme dune pile afin de leur exploitation,
D.II.c/Contenu en programmation
* prsentation des diffrents types d'objets,
* objets simples : entier, flottant, complexe, boolen et chaines de
caractres,
* les oprateurs,
* les collections d'objets (les listes, les tuples, les dictionnaires, les
ensembles),
* la logique d'un programme (les oprations conditionnelles, les boucles for
et while),
* les fonctions (les instructions break et continue, variable locale, variable
globale),
* les modules de base du langage choisi.
D.II.d/Outils utiliss
La programmation modulaire, les structures des donnes ainsi que les
principes des diffrents tris seront expliqus pendant les sances de cours. Les
diffrents algorithmes de tri et de recherche seront conus en travaux dirigs.
Limplmentation et la vrification de ces diffrents algorithmes seront
effectues en travaux pratiques l'aide du langage.
Les lves devront utiliser un environnement de dveloppement
Un environnement scientifique doit tre prsent et ceci ds la premire
anne. Cela peut-tre un logiciel de calcul scientifique libre et large utilisation ou
une bibliothque utiliser avec le langage de programmation choisi.
Attention il n'est pas demand une tude approfondie de l'ensemble de ces
outils.
Des textes rglementaires pourront dans le futur prciser les diffrents choix
d'outils et d'environnement de dveloppement.
D.II.e/Contenu
D.II.e.1/Programmation modulaire
a. Dfinition et paramtres de fonction,
b. Variable locale et variable globale,
g. Piles et files.
D.II.e.3/Fichiers de donnes
a. Accs un fichier (chemin et nom physique de fichier),
b. Lecture des lments dun fichier partir dun programme,
c. Ecriture dans un fichier partir dun programme.
D.III.a/Comptences vises
la fin de cette partie, llve doit tre capable de :
pour
D.III.b/Outils utiliss
Aprs chaque sance thorique, un ensemble dexercices et de travaux
pratiques seront proposs aux lves pour illustrer et vrifier les notions vuesen
cours.
D.III.c/Contenu
D.III.c.1/Prsentation des bibliothques
* Programmation de quelques fonctions.
* Calcul manipulant les tableaux et calcul matriciel
* Gestion de la documentation en ligne des fonctionnalits de ces
bibliothques.
E.I
E.I.c/ Contenu
E.I.c.1/ Gnralits
* Notion de base de donnes;
* Modle de base de donnes (hirarchique, relationnel);
* Systme de gestion de base de donnes (SGBD);
* Machine serveur et client;
E.I.c.2/ Modle relationnel
* Prsentation;
* Concepts lmentaires;
* Notions de base (table, relation; attribut; cls; domaine; ) ;
*Schma de relation;
E.I.c.3/ Algbre relationnelle
* Introduction;
* Oprateurs unaires (slection, projection);
* Oprateurs binaires ensemblistes (union, intersection,
diffrence);
* Oprateurs n-aires(Produit cartsien, jointure, division
cartsienne);
* Fonctions dagrgation : min, max, somme, moyenne,...
E.I.c.4/ Langage SQL
Juillet 2014 Page 14
E.II
E.II.c/ Contenu
E.II.c.1/ Algorithmes de tri
* Rappels des algorithmes de tri standard (slection, insertion, bulles) ;
* Algorithmes de tri rapides (Quick Sort, Merge Sort) ;
E.II.c.2/ Initiation la complexit algorithmique
* Notion de complexit algorithmique (Complexit en temps et en
espace ) ;
* Algorithmes de complexit constante, logarithmique,
linaire) ( exemple : diviser pour rgner)
;
* Comparaison de la complexit temporelle dun algorithme de tri
standard et un algorithme de tri rapide ;
E.II.c.3/ Rcursivit
* Principe de la rcursivit simple ;
* Exemples dutilisation de la rcursivit simple (exemple : factoriel,
fibonacci, ) ;
* Terminaison dune fonction rcursive ;
* Rcursivit et Itration (comparaison) ( problme dAckermann)
;
E.II.c.4/ Initiation aux algorithmes des arbres binaires
* Dfinition dun arbre binaire (notion de nud, racine, feuille) ;
* Parcours dun arbre binaire ;
* Exemple du tri Maximier ( tri en utilisant un arbre binaire) ;
E.II.c.5/ Introduction la thorie des graphes
* Structure dun graphe
* Reprsentation matricielle
* Parcours de graphe
* Recherche du plus cout chemin (Dijkstra,)
* Cycle Hamilthonien et Eulorien
E.II.d/ Exemples dexercices et dapplications pratiques
* Evaluer la complexit dun algorithme simple de complexit constante
(recherche squentielle dun lment dans une liste ) ;
* Implmenter un algorithme de tri standard ( tri par slection) et un
algorithme de tri rapide (Quick Sort) puis dterminer et comparer leurs
complexits dans le pire et le meilleur des cas ;
* Dvelopper des algorithmes rcursifs (factorielle, puissances entires,
suites rcurrentes (Fibonacci,), pgcd,) ;
* Reprsenter des donnes sous forme dun arbre binaire exemple : arbre
gnalogique ) et rechercher une information en parcourant larbre ;
* Comprendre le principe du tri par arbre (tri Maximier);
* Dcouvrir la programmation oriente objet au travers dapplications
simples
* Appliquer les expressions rgulires (validit d'une adresse e-mail, )
*Implmenter des exemples mettant en uvre les parcours eulerien ou
hamilthonien