| Notion de programme comme mise en œuvre d’un algorithme. Paradigme impératif structuré, paradigme déclaratif fonctionnel, paradigme logique. |
On ne présente pas de théorie générale sur les paradigmes de programmation, on se contente d’observer les paradigmes employés sur des exemples. La notion de saut inconditionnel (instruction GOTO) est hors programme. On mentionne le paradigme logique uniquement à l’occasion de la présentation des bases de données. |
| Caractère compilé ou interprété d’un langage. |
Transformation d’un fichier texte source en un fichier objet puis en un fichier exécutable. Différence entre fichiers d’interface et fichiers d’implémentation. |
| Représentation des flottants. Problèmes de précision des calculs flottants. |
On illustre l’impact de la représentation par des exemples de divergence entre le calcul théorique d’un algorithme et les valeurs calculées par un programme. Les comparaisons entre flottants prennent en compte la précision. |
| Terminaison. Correction partielle. Correction totale.Variant. Invariant. |
La correction est partielle quand le résultat est correct lorsque l’algorithme s’arrête, la correction est totale si elle est partielle et si l’algorithme termine. |
| Analyse de la complexité d’un algorithme. Complexité dans le pire cas, dans le cas moyen. Notion de coût amorti. |
On limite l’étude de la complexité dans le cas moyen et du coût amorti à quelques exemples simples. |