Algorithmique et programmation
Compétences visées
- Connaître les éléments de base de l'algorithmique : structure de contrôle, notions de variables, de fonctions, ... et récursivité (simple).
- Être capable de simuler l'exécution d'un algorithme écrit dans un pseudo-code. Déduire du déroulement d'un algorithme simple sa fonction.
- Avoir une notion intuitive de complexité (ordre de grandeurs).
- Savoir écrire un algorithme simple : recherche séquentielle, calcul de suites ou de séries définies par récurrence, recherche par dichotomie, tris simples.
- Comprendre la notion de spécification et savoir écrire la spécification d'une fonction simple.
- Connaître les bases d'un langage impératif : syntaxe, structures de contrôle simples, fonctions et procédures, structures de données (sans pointeurs), utilisation d'un compilateur.
- Savoir écrire, tester et corriger des programmes simples dans ce langage impératif.
Descriptif
- Notion d'algorithme
- Itération, récurrence et récursivité
- Les différentes catégories d'instructions algorithmiques. Structures de contrôle (conditionnelles, boucles).
- Définitions de fonctions, spécification et appels de fonctions. Fonctions récursives.
- Variables. Types de données de base. Notion de type abstrait.
- Apprentissage d'un langage impératif classique.
- Algorithmes classiques : recherche séquentielle, par dichotomie. Tris (à bulle, fusion, insertion, sélection, rapide, par tas).