Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Machine Learning et Deep Learning
  3. Les opérateurs
Extrait - Machine Learning et Deep Learning Des bases à la conception avancée d'algorithmes (exemples en Python et en JavaScript)
Extraits du livre
Machine Learning et Deep Learning Des bases à la conception avancée d'algorithmes (exemples en Python et en JavaScript)
1 avis
Revenir à la page d'achat du livre

Les opérateurs

Introduction

Dans le jeu de l’algorithmique, les opérateurs sont les mécanismes qu’on peut appliquer à une variable d’un type donné. Un opérateur prend la forme d’un signe qui, appliqué à une ou plusieurs variables, renvoie un résultat. Les actions que déclenchent les opérateurs dépendent de la variable.

Vous avez déjà utilisé des opérateurs dans la vie de tous les jours, par exemple quand vous associez à une ville une adresse (opérateur d’affection), quand vous faites du calcul mental (opérateur numérique), quand vous faites un jeu de mots (opérateur alphanumérique) ou quand vous hésitez entre plusieurs destinations pour vos futures vacances (opérateur logique). Détaillons les différents types d’opérateurs.

Les opérateurs d’affectation

L’opérateur d’affectation est utilisé pour affecter à un nom de variable une valeur précise. Il s’agit en pseudo-code du symbole . En Python, en JavaScript et dans la majorité des langages de programmation, le symbole = est utilisé. Le langage de programmation comprend qu’il doit mettre ce qui est à droite du symbole - on l’appelle l’expression - dans la boîte correspondant au nom de variable mentionné à gauche du symbole. Le nom de la variable n’est en fait qu’une sorte d’alias qui fait référence à un emplacement dans la mémoire de l’ordinateur.

Les opérateurs arithmétiques

Il s’agit des quatre opérations de base en mathématiques :

  • l’addition : 7+7

  • la soustraction : 7-7

  • la multiplication : 7*7

  • la division : 7/7

Il y en a évidemment d’autres, qui sont des transformations des opérations élémentaires :

  • la puissance d’un nombre

  • la racine carrée

  • la factorielle

  • la valeur absolue

  • le modulo (le plus souvent représenté par le symbole %, il s’agit du reste d’une division entière : par exemple, 42% 4 vaut 2, car 42/4 vaut 10, et il reste 2.

  • etc.

Ces opérateurs fonctionnent sur des variables de type numérique. Attention : quand on mélange plusieurs types numériques, les résultats peuvent être surprenants en fonction du langage de programmation utilisé. Par exemple, en Python, une opération entre des types numériques entier et réel (nombre à virgule) donne toujours un résultat réel. Autrement dit, 2+2.0 donne 4.0. Sachant qu’un réel prend plus de place qu’un entier, il peut être utile de convertir la variable de type réel en entier pour ne pas utiliser inutilement de la mémoire (certes, la mémoire d’un ordinateur ne sature pas aussi facilement, mais quand un programme a plusieurs millions d’utilisateur, on sent...

Les opérateurs alphanumériques

On peut faire des opérations entre des lettres et des mots. Par exemple, le résultat de l’opération "m" + "o" + "t" est "mot", le collage des trois lettres. Cette opération s’appelle la concaténation. Elle consiste à coller un ensemble de valeurs alphanumériques entre elles. Très pratique par exemple si on veut écrire un programme qui liste un ensemble de prénoms composés, comme Marie-QuelqueChose. La base commune à tous les prénoms, ici Marie, peut ainsi être concaténée avec l’ensemble de ses variantes, sans avoir à réécrire à chaque fois Marie. Nous avons déjà utilisé la concaténation dans notre programme "Quel âge as-tu ?" en Python et JavaScript.

C’est le symbole + qui est utilisé pour la concaténation. En effet, l’opérateur s’adapte en fonction des variables qu’on lui présente. Si on lui présente des nombres, il applique une addition, si on lui présente des caractères ou des chaînes de caractère, il applique la concaténation. Le mécanisme d’adaptation d’un symbole en fonction des variables en présence s’appelle le polymorphisme (du grec, ancien polús...

Les opérateurs logiques

Ici, le mot ’’logique’’ fait référence à un domaine précis des mathématiques : l’algèbre de Boole. L’objectif est tout simplement de formuler un raisonnement de la manière la plus rigoureuse possible (comme l’ordinateur ne réfléchit pas, il faut rendre l’instruction la plus claire possible). On le fait notamment en écrivant des instructions dont le résultat sera binaire. Cela est possible grâce aux travaux de George Boole (et dans une moindre mesure d’Auguste De Morgan) qui a introduit le calcul de vérité dans lequel les combinaisons logiques telles que la conjonction et la disjonction s’utilisent au travers d’un langage logique pouvant se définir mathématiquement. Des opérateurs sont utilisés pour manipuler des valeurs booléennes, le fameux type qui ne prend que deux valeurs : Vrai (True) ou Faux (False). Les opérateurs sont les suivants : ET, OU, NON, XOR.

On a deux, trois ou n variables booléennes. On peut, par exemple, calculer ceci :

1 OU 1, ou alors 1 ET 0. Pour connaître le résultat, on se sert d’une table de vérité :

P

Q

NON P

P OU Q

P ET Q

(P ET Q) OU (P OU Q)

(P ET Q) ET (P OU Q)

1

1

0

1

1

1

1

1

0

0

1

0

1

0

0

1

1

1

0

1

0

0

0

1

0

0

0

0

La colonne P et la colonne...

Les opérateurs de comparaison

Il est courant de vouloir comparer des variables entre elles. On veut savoir si tel nombre à une valeur minimum souhaitée, si le caractère entré est bel et bien différent d’une lettre (si par exemple il s’agit d’un champ de numéro de téléphone), etc. C’est là que les opérateurs de comparaison entrent en jeu. Les voici :

  • l’égalité

  • l’inégalité

  • supérieur à

  • supérieur ou égal à

  • inférieur à

  • inférieur ou égal à

Le résultat de l’utilisation d’un opérateur de comparaison est une valeur booléenne. 

Voici comment utiliser les opérateurs de comparaison en Python :

# Égalité 
2==2 
"Algo" == "algo" 
# Différence 
2 != 3 
# Supérieur ou égal 
2 >= 1 
# Strictement inférieur 
2 < 10 

Pour voir le résultat de chaque comparaison, vous pouvez commenter toutes les autres lignes. À noter que le résultat de "Algo" == "algo" est False. En effet, Python est un langage sensible à la case, donc les majuscules sont considérées comme différentes des minuscules.

Ci-après des opérateurs de comparaison utilisables en JavaScript :...