ECTS
6 crédits
Crédits ECTS Echange
6.0
Composante
Département Sciences Drôme Ardèche
Période de l'année
Automne (sept. à dec./janv.)
Description
Apprendre à programmer juste du "premier coup."
Apprendre à spécifier un algorithme.
Apprendre à prouver qu'un algorithme "marche"
Connaître et savoir manipuler les structures de données classiques en programmation.
Connaître et mettre en œuvre les principes de la programmation objet en Java.
Heures d'enseignement
- UE Algorithmique et programmation impérative - TPTP21h
- UE Algorithmique et programmation impérative - CMTDCours magistral - Travaux dirigés39h
- UE Algorithmique et programmation impérative - TDTD21h
- UE Algorithmique et programmation impérative - CMCM18h
Période
Semestre 3
Compétences visées
* Savoir appliquer une démarche de résolution des problèmes par abstractions successives et par ré-utilisation de schémas types.
* Connaître des concepts et techniques d'analyse des propriétés des algorithmes.
* Connaître et savoir mettre en œuvre des techniques de représentation des ensembles et des séquences.
* Avoir des notions de preuve de programme.
* Connaître et savoir mettre en œuvre des structures de données classiques en programmation.
Programme résumé (connaître et savoir manipuler) :
* Langage des actions : actions, états, assertions ; spécification, paramétrisation ; raisonnement sur les états.
* Composition itérative : schémas d'analyse, description et utilisation d'invariants, dénombrement d'instructions.
* Composition récursive : étapes d'analyse, formulation de spécifications, dénombrement d'appels récursifs.
* Tableaux : accès direct, accès séquentiel, indirection ; schémas de traitement.
* Ensembles, séquences, piles, files : algorithmes de base et représentation contiguë à l'aide de tableaux.
* Chaînage : application à la représentation chaînée des séquences.
* Programmation en Java : programmation objet, Interfaces, Héritage, compilation séparée.