Tester ses fonctions avec 'assert'

Chapitre 5,1

Dans le document 5,1, nous avons insisté sur l’importance de la spécification d’une fonction et sur celle d’un jeu de tests.
Dans ce document, nous allons découvrir une nouvelle façon de tester ses fonctions.

Le mot clé assert

Le mot clé assert est utilisé afin de s’assurer de la robustesse d’une fonction. Il ne doit jamais être utilisé au sein d’un programme pour lever une exception ; il ne faut donc pas le confondre avec le mot clé raise.
Placé dans la zone de test du programme,

[Lire]

Contrôle du flot d'exécution d'un programme : structures iteratives

Chapitre 4,2

Ce chapitre reprend l’étude de structures de contrôles, c’est à dire d’instructions qui permettent de modifier le « flot d’exécution implicite » d’un programme.

Après les structures conditionnelles (ou alternatives), les structures itératives (ou boucles) sont introduites.

Introduction

Les boucles sont des instructions répétitives. Comme les tests conditionnels, elles nécessitent la définition de blocs d’instructions. Les instructions de ces blocs sont répétées tant qu’une condition d’arrêt n’est pas vérifiée. Chaque passage dans la boucle s’appelle une itération.

[Lire]

Contrôle du flot d'exécution d'un programme : l'alternative

Chapitre 4,1

Booléens et expressions booléennes

Une grandeur booléenne est une grandeur qui ne peut prendre que deux valeurs : Vrai ou Faux, ou 0 ou 1, ou …).
  • Dans le langage Python, les valeurs booléennes s’écrivent True et False.
  • La fonction bool transforme n’importe quel argument en valeur booléenne — tout argument à valeur nulle (entier 0, flottant 0.0, chaîne de caractères "", liste vide list(), etc.) est converti en valeur False, toute autre valeur pour l’argument devient la valeur True.
  • Une expression booléenne est une expression dont la valeur est une grandeur booléenne.
  • Une expression booléenne comporte soit un opérateur de comparaison, soit une fonction booléenne.
Opérateur Expression booléenne Description
< expr1 < expr2 retourne True si expr1 est strictement inférieure à expr2
> expr1 > expr2 retourne True si expr1 est strictement supérieure à expr2
<= expr1 <= expr2 retourne True si expr1 est inférieure ou égale à expr2
>= expr1 >= expr2 retourne True si expr1 est supérieure ou égale à expr2
== expr1 == expr2 retourne True si expr1 est égale à expr2
!= expr1 != expr2 retourne True si expr1 est différente de expr2
not not exprBool retourne le complément logique de exprBool
and expr1 and expr2 retourne le résultat d’un ET logique
or expr1 or expr2 retourne le résultat d’un OU logique
  • Un opérateur est une fonction spéciale dont l’identificateur s’écrit généralement avec des caractères non autorisés pour le nom des fonctions ordinaires (symboles ou ponctuations). Il s’agit souvent des équivalents aux opérateurs mathématiques pour le langage de programmation.
  • Les opérateurs de comparaison retournent un booléen à partir de nombres (ou de chaînes de caractères).
Une fonction booléenne est une fonction qui fait correspondre à un ou plusieurs booléens (selon son arité) un booléen.

Le comportement d’une fonction booléenne ne peut pas être décrit par une courbe. Cependant, l’ensemble des booléens n’étant constitué que de deux éléments, on peut établir la table de vérité d’une telle fonction, c’est à dire l’ensemble des valeurs qu’elle retourne en fonction des arguments qui lui sont passés.

[Lire]

Quelques dessins simples avec une tortue

Chapitre 7

1. Présentation de la « tortue graphique »

La « tortue graphique » a été inventée à la fin des années 60 par Seymour Papert et ses collègues du MIT (célèbre université américaine) pour permettre de rendre l’apprentissage de la programmation plus ludique. Elle faisait alors partie du langage Logo, spécifiquement développé pour être utilisé par de jeunes enfants.

Le nom « tortue graphique » suggère la façon dont les figures géométriques vont être dessinées à l’écran.

[Lire]

Contrôle du flot d’exécution d’un programme, les structures itératives

Chapitre 6

Ce chapitre reprend l’étude de structures de contrôles, c’est à dire d’instructions qui permettent de modifier le « flot d’exécution implicite » d’un programme.

Après les structures conditionnelles (ou alternatives), les structures itératives (ou boucles) sont introduites.

Structures itératives

Les boucles sont des instructions répétitives. Comme les tests conditionnels, elles nécessitent la définition de blocs d’instructions. Les instructions de ces blocs sont répétées tant qu’une condition d’arrêt n’est pas vérifiée. Chaque passage dans la boucle s’appelle une itération.

[Lire]

Variables, affectations

Chapitre 3

Variables

Une variable est une zone de la mémoire repérée par un identificateur. Cet identificateur permet de modifier ou de faire appel au contenu de cette zone de la mémoire lors du déroulement du programme.
La définition d’une variable donnée ci-dessus est générale. Dans le langage Python, il est plus correct d’envisager une variable comme une étiquette (ou un alias) permettant d’accéder à un objet (nombre entier, nombre décimal, chaîne de caractères, …).

Remarque. Le langage Python est sensible à la casse : ma_variable, maVariable et mavariable sont donc trois identificateurs différents (préférer la première écriture).

[Lire]

Langages et programmation

Chapitre 2,1

À quoi a-t-on accès lorsqu’on utilise un langage de programmation ?

Un langage de programmation doit :

  • fournir des objets (ou types) primitifs ;
  • posséder une bibliothèque de fonctions prédéfinies ;
  • permettre la manipulation des objets primitifs et des fonctions prédéfinies ;
  • établir des règles qui permettent de construire de nouveaux objets (ou types) ou de nouvelles fonctions par combinaison des types primitifs et des fonctions prédéfinies.

Nous allons aborder chacun de ces points.

[Lire]

Éléments d'histoire et d'architecture des ordinateurs

Chapitre 01

Au programme

Histoire de l’informatique

Contenus Capacités attendues Commentaires
Événements clés de l’histoire de l’informatique Situer dans le temps les principaux événements de l’histoire de l’informatique et leurs protagonistes. Ces repères historiques seront construits au fur et à mesure de la présentation des concepts et techniques.

Langages et programmation

Contenus Capacités attendues Commentaires
Diversité et unité des langages de programmation Repérer, dans un nouveau langage de programmation, les traits communs et les traits particuliers à ce langage. Les manières dont un même programme simple s’écrit dans différents langages sont comparées.

Document