Passer au contenu
Guide Varlig
Accueil Varlig

Opérateurs, comparaisons et conditions

Cette page présente les symboles et mots qui combinent les valeurs : opérations arithmétiques et priorités, comparaisons donnant true ou false, opérateurs logiques et bit à bit. Consultez-la lorsqu’un résultat diffère de vos attentes ou pour faire vérifier une condition par la note, par exemple le respect d’un budget.

Arithmétique

Opérateur Orthographes Exemple Résultat
Ajouter +, plus £12.50 + £4.30 £16.80
Soustraire -, −, minus £20 - £4.50 £15.50
Multiplier *, ×, times, multiplied by, juxtaposition 3 × £4.50, 2(3 + 4) £13.50, 14
Diviser /, ÷, divided by £60 / 4 £15.00
Puissance ^, **, to the power of, raised to, exponent 2 ** 3, 2 raised to 10 8, 1,024
Reste mod, % (entre deux nombres) 50 mod 6, 50 % 6 2
Racine carrée √, sqrt(...), square root of √144 12
Au carré / au cube ², ³ 3³ 27
Factorielle !, factorial(...) 5!, factorial(5) 120

Les opérations arithmétiques acceptent les nombres sans unité, les montants monétaires et les quantités avec unité. Le résultat conserve la devise ou l’unité :

calc
£12.50 + £4.30 donne £16.80
3 * £4.50 donne £13.50
£1,000 * 1.05^3 donne £1,157.63
6 times 7 donne 42
100 minus 37.5 donne 62.5

La juxtaposition consiste à omettre *, comme dans 2(3 + 4) ou 2π. Multiplication implicite explique quand elle est acceptée.

Ordre des opérations

Les calculs suivent les priorités mathématiques habituelles :

  1. Parenthèses.
  2. Factorielles, comme 5!.
  3. Puissances, de droite à gauche : 2^3^2 vaut 2^9, soit 512.
  4. Signe moins initial, appliqué après la puissance : -2^2 vaut −4, tandis que (-2)^2 vaut 4.
  5. Multiplication, division et mod, de gauche à droite.
  6. Addition et soustraction, de gauche à droite.

Omettre * ne change pas ces priorités : 2x^2 élève x au carré avant de le doubler, comme dans une formule de manuel.

Une multiplication est donc effectuée avant l’addition voisine, ce qui peut surprendre en faisant le total d’une facture :

calc
£85 - £12.50 * 2 donne £60.00
(£85 - £12.50) * 2 donne £145.00
£120 / 4 / 2 donne £15.00

En cas de doute, ajoutez des parenthèses : elles clarifient le calcul et facilitent la relecture.

Le signe de racine carrée s’applique à la valeur immédiatement suivante : √9 + 16 vaut 19. Pour prendre la racine d’une somme, mettez toute la somme entre parenthèses :

calc
√(9 + 16) donne 5

Restes

mod donne le reste de la division, utile pour répartir des éléments en groupes :

calc
eggs = 50
eggs mod 6 donne 2
floor(eggs / 6) donne 8

Cinquante œufs remplissent huit boîtes de six ; il en reste deux.

Entre deux nombres, % donne aussi le reste, même lorsque le signe est collé au premier : 50 % 6 et 50% 6 donnent tous deux 2. Sans valeur après, % forme un pourcentage (50%), décrit dans Pourcentages.

Factorielles

Placez ! immédiatement après un nombre, un nom ou une parenthèse fermante pour obtenir sa factorielle :

calc
5! donne 120
runners = 4
runners! donne 24
3! + 2 donne 8
5!=4 donne true

La factorielle est calculée avant la puissance voisine : 2^3! vaut 2⁶, soit 64. ! suivi de = signifie toujours « différent de », comme le montre la dernière ligne. factorial(5) donne le même résultat que 5!.

Comparaison

==, !=, <, <=, > et >= comparent deux valeurs et renvoient true ou false. Ils acceptent les nombres sans unité, les montants d’une même devise et les quantités mesurant la même grandeur, même dans des unités différentes :

calc
budget = £400
spent = £365
spent <= budget donne true
spent == budget donne false
spent != budget donne true
5 km == 5,000 m donne true
90 min >= 1.5 hours donne true
2 kg < 2,500 g donne true

Les unités sont converties avant la comparaison : 1 mile > 1.5 km donne donc true. Comparer des grandeurs différentes, comme des kilogrammes et des mètres, produit une erreur incompatible units.

Limites des comparaisons

  • Comparaisons en chaîne. 5 < x < 10 n’est pas accepté. Combinez deux comparaisons : 5 < x && x < 10.
  • Symboles Unicode. ≠, ≤ et ≥ ne sont pas reconnus. Utilisez !=, <= et >=.
  • Dates. Vous ne pouvez pas comparer deux dates avec < ou >. Soustrayez-les et comparez la différence avec une durée :
calc
deadline = 30 September 2026
booked = 14 September 2026
deadline - booked donne 2 weeks 2 days
deadline - booked >= 7 days donne true

Opérateurs logiques

Reliez les comparaisons avec && (les deux doivent être vraies) ou || (au moins une doit être vraie). Les mots and et or ont le même effet entre deux comparaisons.

calc
distance = 5 km
run time = 27 min
distance >= 5 km && run time < 30 min donne true
distance >= 10 km || run time < 25 min donne false
distance >= 10 km or run time < 30 min donne true

true et false peuvent être écrits directement et combinés avec && et || :

calc
true || false donne true
true && false donne false

Certaines formes attendues ne sont pas prises en charge :

  • and et or fonctionnent uniquement entre des comparaisons. true and false n’est pas accepté ; écrivez true && false.
  • Il n’existe pas d’opérateur de négation : not true et !true ne fonctionnent pas. Comparez plutôt avec false, comme dans (spent > budget) == false.
  • or ne fournit pas de valeur de remplacement en cas d’erreur : 1/0 or 5 ne donne pas 5.

Utiliser les comparaisons dans les conditions

Une comparaison est particulièrement utile dans if … then … else …, qui choisit une valeur selon le résultat de la condition :

calc
basket = £34.50
if basket >= £40 then £0 else £3.99 donne £3.99

Conditions décrit la syntaxe complète : else if, formes avec if et unless placés après l’expression, et affectation dans une branche.

Opérateurs bit à bit

Les entiers acceptent les opérateurs bit à bit & (ET), | (OU), xor (OU exclusif), << (décalage à gauche) et >> (décalage à droite). Les mots en majuscules AND, OR et XOR fonctionnent aussi. Ils servent surtout en programmation, par exemple pour les couleurs et les permissions de fichiers.

calc
12 & 10 donne 8
12 | 10 donne 14
12 xor 10 donne 6
12 AND 10 donne 8
1 << 10 donne 1,024
1024 >> 3 donne 128

Le résultat s’affiche en décimal. Ajoutez to binary, in hex ou to octal pour utiliser la base souhaitée :

calc
0o644 | 0o111 to octal donne 0o755
colour = 0xFF8800
(colour >> 8) & 0xFF donne 136

Les décalages sont évalués avant &, | et xor. Des parenthèses rendent toutefois les calculs comme l’exemple de couleur plus faciles à suivre.

Combiner les opérations

Une vérification mensuelle du budget qui utilise l'arithmétique, les comparaisons et la logique ensemble :

calc
# September budget
take home = £2,400
rent = £1,050
bills = £230
groceries = 4 * £65 donne £260.00
left over = take home - rent - bills - groceries donne £860.00
rent / take home as % donne 43.75%
left over > £500 donne true
left over > £500 && rent <= take home * 45% donne true

Dans groceries, la multiplication précède les additions ; dans left over, les soustractions s’effectuent de gauche à droite. Les deux dernières lignes vérifient le budget : le résultat reste true tant qu’il reste plus de 500 £ et que le loyer ne dépasse pas 45 % du salaire net. Il passe à false dès que l’une de ces conditions n’est plus satisfaite.