Volumes horaires
- CM 12.0
- Projet 0
- TD 12.0
- Stage 0
- TP 0
- DS 0
Crédits ECTS
Crédits ECTS 1.0
Objectif(s)
L'objectif de ce cours est de fournir les bases d'une part des outils conceptuels des langages impératifs et d'autre part du langage de programmation C, particulièrement important pour l'ingénierie telle qu'abordée à Phelma MT.
Les compétences visées sont :
Acquérir et mettre en pratique méthodes de la programmation structurée.
Apprendre l'algorithmique.
Acquérir une maitrise du cycle de développement logiciel : spécification, analyse, codage, compilation, tests, gestion de version.
Apprendre le langage C, en particulier dans ses spécificités "proches de la machine".
Contenu(s)
Programmation structurée en langage C :
Variables, types des données, structures de contrôles conditionelles et itératives
Tableaux
Fonctions
Pointeurs
Fichiers
Allocation dynamique
TP : Chaque notion essentielle est illustrée par des exemples, pour lesquels l'étudiant réalise un logiciel en écrivant et en utilisant du code.
Quelques exemples de sujets traités :
Calcul d'une suite ou d'une série et de sa limite (nombre d'Or, Pi)
Gestion d'un Master Mind, crible d"Eratosthène
Calcul vectoriel
Micro-projet. Exemples : Traitement d'image, mosaïquage, inpainting, stéganographie, calcul vectoriel...
Le langage utilisé est le langage C, sous environnement LINUX.
Prérequis
SESSION 1 :
Type d'évaluation : CC : tests sur table à certaines séances + rendus BEs
Possible en distanciel : oui
Commentaire :
SESSION DE RATTRAPAGE :
Types d'évaluation : DS
Type d'évaluation : DS sur papier
Durée : 2h
Documents autorisés : aucun
Documents interdits : tout document électronique (sur téléphone, ordinateur, ...)
Matériels spécifiques autorisés : aucun
Calculatrice : non
Possible en distanciel : si nécessaire
Commentaire :
Kernighan B., Ritchie D., Le langage C, norme ANSI , 2ème édition, septembre 2004 Editions Dunod, ISBN10 : 2100487345
P et U Prinz : C précis et concis: syntaxe et fondamentaux du langage C
1ère édition,février 2003 Editions O'Reilly,ISBN10 : 2841772470
Sur le Web :
http://fr.wikibooks.org/wiki/Programmation_C