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).