programme Informatique

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 9

Programme de la filière

MP/PC/T

6
Programme de la première Année
Filière MP/ PC/T
Ce programme a été élaboré, sur la base du contenu et non pas sur la répartition des séances.

SEMESTRE I
Charge Horaire
Titre des chapitres & contenu Approximative

Chapitre I: Rappel des notions 4H


algorithmiques
1. Notion d’algorithme.
2. Opérations élémentaires, Structures
conditionnelles, Structures itératives,
tableau à une dimension et tableau à deux
dimensions.
PARTIE I
(14 h) 3. Notion de coût d'un algorithme et classes
de complexité.

Programmation Travaux Dirigés


Python Applications introduisant la notion de coût
d'un algorithme.

Chapitre II: Environnement de


développement Python 3
1. Historique et raisons du choix du langage. 12 H
2. Mode interactif, mode Script, Aide en
ligne.
3. Types élémentaires (classes int, str, float,
bool, complex).
4. Opérations élémentaires sur les différents
types élémentaires (approche classique/
approche orientée objet).
5. Notion de bibliothèque et import des
packages prédéfinis (fonctions de
bibliothèque).
6. Instructions élémentaires.
7. Structures conditionnelles.
8. Structures itératives.
9. Présentation des types composés : les
types mutables (listes, dictionnaires,
ensembles) et non mutables (tuples et
7
chaînes).
Travaux Dirigés
 Instructions de calculs (opérations
arithmétiques, calculs avec import de
fonctions prédéfinis,…) en mode
interactif (mode console).
 Ecrire et exécuter des programmes (en
utilisant des instructions élémentaires,
des structures conditionnelles et des
structures itératives) en mode script.
 Manipulation des types mutables et non
mutables.
Remarque
Les parties algorithmiques et programmation seront enseignées en parallèle. A chaque notion
algorithmique on associera son équivalent Python.
Acquis
 Maîtriser l'environnement Python.
 Connaître l'allocation dynamique de la mémoire.
 Savoir différencier entre les types mutables et non mutables en important le module copy.
 Savoir calculer le coût d'un algorithme et différencier les classes de complexité (linéaire,
quadratique, logarithmique, quasi-linéaire, exponentielle...).

Chapitre III: Les sous programmes en 4H


algorithmique
1. Fonctions et procédures.
2. Passage de paramètres (Entrée, Sortie,
PARTIE II E/S).
3. Variables locales et Variables globales.
(10H)
Chapitre IV : Les fonctions en Python

Programmation 1. Définition de fonctions par :


 def 8H
modulaire  lambda
2. Variables locales et variables globales.
3. Notion de fonction locale.
4. Réutilisation de modules (import de
fonctions).
5. Gestion des erreurs (bloc Try... Except).
6. Documentation des fonctions.
7. Coût de fonctions et classes de
complexité.
Travaux Dirigés(Programmation Python)
Exercices d’Arithmétiques, nombres premiers,
nombres parfaits, nombres amis, calcul de
PGCD, PPCM, multiplication égyptienne,

8
Acquis
 Savoir écrire un programme itératif.
 Maîtriser la programmation modulaire.
Total Semestre I
(28H)

SEMESTRE II
Charge Horaire
Titre des chapitres & contenu Approximative

PARTIE II Chapitre V : La Récursivité 4H


(suite) 1. Définition de la récursivité.
(4h) 2. Avantages et inconvénients de la
récursivité (mémoire et temps de calcul).
Programmation Travaux Dirigés
Modulaire Suites récurrentes, exponentiation rapide,
algorithme d’Euclide, fractales...

PARTIE III Chapitre VI : Manipulation des itèrables en 8H


(8h) Python
1. Les méthodes de recherche (liste, chaine
de caractères ...).
2. Les Algorithmes de tri (sélection , à bulles,
Les itérables et insertion, fusion )

algorithmes de Travaux Dirigés(Programmation Python)


tri Applications avec étude des coûts.

Acquis
- Savoir écrire un programme récursif et connaitre la notion de critère d’arrêt et d’appel
récursif
-Savoir manipuler les conteneurs itérables sous Python
-Maîtriser les algorithmes de recherche et de tri.
-Calcul de coût des algorithmes itératifs

9
PARTIE IV Chapitre VII : Manipulation des fichiers 4H
(16 H) Python
Manipulation des 1. Ouverture et fermeture d’un fichier
fichiers et (texte/binaire: module pickle).
2. Lecture et écriture depuis/dans un fichier
Simulation texte.
Numérique

Chapitre VIII : Système de numération


4H
1. Représentation des nombres (naturels,
relatifs et réels) dans une base b (binaire,
octale, Hexadécimale ...).
2. Transcodage : Passage d'une base à l'autre.
3. Opérations élémentaires sur les nombres
binaires.
4. Limites de la représentation (erreurs
d'arrondi et de débordement de mémoire).

Travaux Dirigés
 Représentation des nombres dans une base
b.
 Passage d'une base à l'autre.
 Opérations élémentaires.

Chapitre IX : Simulation numérique


 Présentation de la bibliothèque numpy
 Utiliser les classes array et ndarray de la
bibliothèque numpy et l’ensemble de 8H
fonctions d’algèbre linéaire.
 Simulation d’expériences et traçage de
courbes (matplotlib).
 Résolution d’équations différentielles du
premier ordre (méthode d’Euler) (scipy).
 Méthodes de recherche du zéro d'une
fonction (Méthode Newton, Méthode
dichotomique, …).
 Méthodes d’intégrations (Méthode des
rectangles, Méthode des trapèzes,…)
(scipy).
.

Acquis :
Au bout de cette partie l’étudiant doit :
10
 Savoir manipuler les fichiers avec Python : récupérer et/ou stocker des données depuis
des fichiers pour simulation numérique
 Savoir représenter un nombre dans une base b et convertir d’une base à l’autre,
connaitre les limites de la représentation des données sur machine.
 Savoir manipuler les bibliothèques numpy, scipy et matplotlib.
 Savoir résoudre des problèmes scientifiques avec Python.
.
Total Semestre II
(28 H)

11
Programme de la deuxième Année
Filière MP/ PC/PT
SEMESTRE I
Charge Horaire
Titre des chapitres & contenu Approximative

PARTIE I Chapitre 0 : Rappel général 6h


(8h)  Programmation Python.
 Syntaxe, types de bases et types
Rappel et composés.

Structures de Travaux Dirigés

Données Avancées Exercices extraits de concours.


4h
en Python Chapitre I: Structures de données
avancées en python

1. Notion de Pile.
2. Notion de File.
Travaux Dirigés
 Modélisation avec les listes sous
Python.
 Notation post fixée, expression bien
parenthésée.

Acquis
Savoir modéliser les piles et les files sous python au moyen de listes.

PARTIE II Chapitre II: Programmation orientée 6h


(8h) objet avec Python
1. Objet
Programmation 2. Classe (Attributs, méthodes,
constructeur/ destructeur …).
Orientée Objet 3. Encapsulation.
avec Python 4. Héritage simple.

Travaux dirigés:
 Représentation des formes géométriques
(droite, carré, triangle, etc.).(Module
turtle)
12
 Jeu de carte.

Acquis
 Savoir créer et instancier des classes.
 Savoir programmer en utilisant la notion d'objet (attributs et méthodes).
 Connaître la notion d’héritage.

Chapitre III: Introduction aux bases de 6H


données
PARTIE II 1. Limite des fichiers
(12h) 2. Notions de bases de données (définition)
3. Les systèmes de gestion de bases de
Les bases de données
données - Définition.
- Objectifs.
4. Architecture des SGBD
- Architecture client/ serveur
- Architecture trois-tiers
5. Modèle de données
- Le modèle relationnel: l'algèbre
relationnelle
- La relation :
 Schéma de la relation (Attributs
et contraintes d'intégrité).
 Opérations unaires: projection,
sélection.
 Opérations binaires :
intersection; union; jointure;
différence.

Chapitre IV: Passage à la pratique


6H
(module SQlite3 de Python )
1. Création d'une base.
2. Création de tables (schéma de la table,
alimentation).
3. Langage SQL: manipulation des
données
- Projection
- Sélection
- Opérateurs SQL
 Clauses(fonctions d'agrégations,
having, order by, group by, etc.)
 Union, intersection, différence,
jointure

Travaux Dirigés

13
Requêtes simples et imbriquées.

Acquis
 Assimiler les notions de base de données et les systèmes de gestion de base de données.
 Savoir créer et alimenter une base de données avec Python.
 Savoir écrire des requêtes en langage algébrique et langage SQL.
Total Semestre I
(28 H)

SEMESTRE II
Charge Horaire
Titre des chapitres & contenu Approximative

PARTIE III Thèmes à aborder: 22H


(22h) 1. Algèbre linéaire:
Calcul matriciel, méthode de pivot
Simulation de Gauss, Décomposition LU
2. Cryptographie:
numérique Méthode Hill, code de césar, code de
Vegénère, méthode RSA, codage
de Hamming …
3. Traitement d’image:
Compression, détection de contour
Convolution, Dilatation
4. Problèmes d’interpolations:
Interpolation de Lagrange

Acquis
L’étudiant doit être capable de résoudre des problèmes liés aux mathématiques, aux
sciences physiques, ou à n’importe quel autre domaine cité ci-haut.

14

Vous aimerez peut-être aussi