• Aucun résultat trouvé

L’affectation

= Cette opération, aussi appelée assignation, est celle par laquelle une valeur est attribuée à une variable.

Pi = 3.141592

La concaténation

& et + La concaténation est la mise bout à bout de chaînes de caractères. Deux symboles & et + sont offerts. Il est préférable d’employer & de sorte à n’induire aucune confusion avec l’addition arithmétique qui utilise le +.

Dim Nom As String = "Pierre"

Console.WriteLine("Bon" & "jour " & Nom) ' Affiche Bonjour Pierre

Les opérateurs arithmétiques

^ Elévation à la puissance X = V ^ 2 si V = 3, X reçoit la valeur 9 (32 = 9) * Multiplication X = V * 2 si V = 4, X reçoit la valeur 8 (4 * 2 = 8) / Division réelle X = V / 2 si V = 5, X reçoit la valeur 2.5 (5 / 2 = 2.5)

\ Division entière X = V \ 2 si V = 7, X reçoit la valeur 3 (7 \ 2 = 3)

Mod Modulo (Reste) X = V Mod 2 si V = 7, X reçoit la valeur 1 (7 – (7 \ 2) * 2 = 1) + Addition X = V + 2 si V = 8, X reçoit la valeur 10 (8 + 2 = 10)

- Soustraction X = V – 2 si V = 9, X reçoit la valeur 7 (9 - 2 = 7)

Les formes contractées de l’affectation

Il s’agit de la combinaison d’un des opérateurs précédents avec l’opérateur d’affectation ayant pour effet une économie d’écriture. On retrouve là tous les opérateurs arithmétiques, sauf Mod, et l’opérateur de concaténation. La signification de Variable Opérateur = Valeur est la même que celle de Variable = Variable Opérateur Valeur. ^= V ^= 2 est équivalent à V = V ^ 2 *= V *= 3 est équivalent à V = V * 3 /= V /= 4 est équivalent à V = V / 4 \= V \= 5 est équivalent à V = V \ 5 += V += 6 est équivalent à V = V + 6 -= V -= 7 est équivalent à V = V – 7 &= V &= "OK" est équivalent à V = V & "OK"

Les opérateurs relationnels

Les opérateurs relationnels, dits aussi opérateurs de comparaisons, sont indispensables à la définition des critères de choix des alternatives et à la définition des conditions d’arrêt des itérations logiques. Des expressions utilisant ces opérateurs fournissent des résultats booléens qui peuvent être affectés à des variables de ce type.

< Inférieur à X = V < 2 si V = 3, X reçoit la valeur False

<= Inférieur ou égal à X = V <= 2 si V = 3, X reçoit la valeur False

> Supérieur à X = V > 2 si V = 3, X reçoit la valeur True

>= Supérieur ou égal à X = V >= 2 si V = 3, X reçoit la valeur True

= Egal à X = V = 2 si V = 3, X reçoit la valeur False

<> Différent de X = V <> 2 si V = 3, X reçoit la valeur True

Les opérateurs logiques

Lorsque les définitions des critères d’alternatives et des conditions d’arrêt d’itérations ne peuvent se suffire d’une seule expression relationnelle, les opérateurs logiques permettent d’en combiner plusieurs. Des expressions utilisant ces opérateurs fournissent des résultats booléens qui peuvent être affectés à des variables de ce type.

Not Négation (contraire)

And Et (les deux)

Or Ou (un OU l’autre OU les deux)

Xor Ou exclusif (un OU l’autre, mais pas les deux)

AndAlso Et aussi

OrElse Ou sinon

Les résultats des expressions mettant en œuvre les opérateurs logiques sont prédéterminés par les tables de vérités. Conventionnellement, la valeur booléenne False est représentée dans ces tables par 0, et la valeur True est représentée par 1.

NOT OR AND XOR

a R a b R a b R a b R

0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 1 1 1 0 1 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0

Soit l’expression (X < 2) représentée par la lettre a et l’expression (Y >= X) représentée par la lettre b.

Si X est effectivement plus petit que 2, l’expression X < 2 est vraie et elle est représentée par le chiffre 1 dans la colonne de la lettre a. Si X n’est pas plus petit que 2, l’expression est fausse et elle est représentée par le chiffre 0. Il en est de même pour l’expression représentée par b. Le résultat de l’usage de l’opérateur logique est représenté de la même manière dans la colonne de la lettre R. Le tableau montre ainsi, par exemple :

Si (X < 2) est faux, a est faux et vaut 0, et Not a est vrai, et donc R vaut 1

Si (X < 2) est faux, et (Y >= X) est faux aussi, l’expression (X < 2) OR(Y >= X) est fausse, et donc R vaut 0

Si (X < 2) est vrai, et (Y >= X) est faux, l’expression (X < 2) OR(Y >= X) est vraie, et donc R vaut 1

Si (X < 2) est vrai, et (Y >= X) est faux, l’expression (X < 2) AND(Y >= X) est fausse, et donc R vaut 0

Si (X < 2) est vrai, et (Y >= X) est vrai, l’expression (X < 2) AND(Y >= X) est vraie, et donc R vaut 1

Plutôt que de tenter une mémorisation fastidieuse de ce tableau, mieux vaut sans doute retenir ceci :

Not Tout ce qui est vrai devient faux, et vice versa

And Pour que le résultat d’un And soit vrai, il faut que les deux expressions impliquées soient vraies

Or Pour que le résultat d’un Or soit vrai, il suffit qu’une seule des expressions soit vraie

Xor Pour que le résultat d’un Xor soit vrai, il faut qu’une des expressions soit vraie et que l’autre soit fausse

Les opérateurs AndAlso et OrElse suivent les mêmes règles que, respectivement, And et Or. Cependant, leurs comportement est optimisé et donc quelque peu différent lors de l’évaluation des conditions qui les employent.

(X < 2) Or(Y >= X) les deux expressions relationnelles sont évaluées d’abord, l’expression logique ensuite

(X < 2) And(Y >= X) les deux expressions relationnelles sont évaluées d’abord, l’expression logique ensuite Or dans la première expression, si (X < 2) est vrai, il n’est plus nécessaire d’évaluer (Y >= X) car avec l’opérateur

Or, il suffit d’un résultat vrai pour que toute l’expression le soit aussi.

De même, dans la deuxième expression, si (X < 2) est faux, il n’est plus nécessaire d’évaluer (Y >= X) car avec l’opérateur And, il suffit d’un résultat faux pour que toute l’expression le soit aussi.

(X < 2) OrElse(Y >= X) la deuxième expression relationnelle n’est évaluée que si la première est fausse

Les opérateurs binaires

Les opérateurs binaires permettent les opérations bit à bit sur les octets composant les nombres entiers. Ils ne sont applicables qu’aux numériques de type Byte, Short, Integer et Long.

Not Complément à 1 (tous les bits sont inversés)

And Garde les bits à valeur 1 dont le vis-à-vis à la valeur 1 Or Garde tous les bits à valeur 1

Xor Garde les bits à valeur 1 dont le vis-à-vis à la valeur 0

>> Décalage, d’un nombre donné de bits, de tous les bits vers la droite (les bits sortants sont perdus)

<< Décalage, d’un nombre donné de bits, de tous les bits vers la gauche (les bits sortants sont perdus)

A B Not A A And B A Or B A Xor B A >> 2 A << 2

Combinaison 00010111 00001010 11101000 00000010 00011111 00011101 00000101 01011100

Valeur 23 10 -24 2 31 29 5 92

Les opérateurs binaires de décalage disposent également d’affectations contractées :

>>= V >>= 3 est équivalent à V = V >> 3 <<= V <<= 4 est équivalent à V = V << 4

Ordre d’évaluation des expressions et hiérarchie des opérateurs

Les parenthèses éventuelles encadrent dans les expressions des parties qui doivent être évaluées en premier. Si des expressions combinent plusieurs types d’opérations, l’évaluation commence toujours par la résolution des opérations arithmétiques. Les opérations relationnelles sont évaluées ensuite et les opérations logiques sont évaluées en dernier. A défaut de structuration des expressions par l’utilisation de parenthèses, les opérateurs arithmétiques ont la même hiérarchie qu’en mathématique. Par exemple, 3 + 2 * 23 vaut 49, la multiplication étant calculée avant l’addition. Les expressions combinant des opérateurs différents, mais de même type et de même niveau hiérarchique, sont évaluées de gauche à droite. Par exemple, 2 * 24 / 3 vaut 16 et 3 / 2 * 24 vaut 36.