Les opérateurs arithmétiques

Les opérateurs arithmétiques Blogger servent à réaliser des calculs numériques directement dans vos expressions : addition, soustraction, multiplication, division et modulo.
Ils prennent en entrée des valeurs ou des données du blog et renvoient toujours un nombre, que vous pouvez afficher, comparer ou réutiliser dans d’autres opérations.
Aux origines des opérations arithmétiques
Depuis les premiers âges, l’être humain a cherché à compter et mesurer. Bien avant l’écriture, des entailles sur des os servaient de registres pour suivre les jours ou le bétail. Les doigts, puis de petits cailloux, ont permis d’exprimer des additions et des soustractions rudimentaires. L’abaque, inventé plusieurs millénaires avant notre ère, a constitué la première véritable machine à calculer.
Les civilisations mésopotamiennes et égyptiennes ont ensuite codifié ces pratiques : on retrouve des tables de multiplication gravées dans la glaise et des méthodes de division employées pour répartir terres et récoltes. Les Égyptiens utilisaient des fractions particulières, dites unitaires, qui ont marqué la pratique du calcul pendant des siècles.
Avec les Grecs, l’arithmétique a pris une dimension théorique : Euclide a formalisé les propriétés des nombres, tandis que Pythagore reliait calcul et harmonie. Mais c’est en Inde que naît une innovation décisive : l’introduction du zéro comme chiffre, vite transmise au monde arabe. Les savants arabes du Moyen Âge, tels qu’Al-Khwarizmi, ont développé des méthodes algorithmiques qui portent encore leur nom.
L’Europe médiévale et renaissante a adopté progressivement ces chiffres “indo-arabes”, reléguant les chiffres romains au rang de curiosité. Cette révolution a rendu possibles des opérations bien plus complexes : commerce, astronomie, navigation. À partir de là, les quatre opérations fondamentales – addition, soustraction, multiplication, division – sont devenues le socle de toute science et technique.
Le modulo, plus récent, est directement lié à l’essor de l’informatique et de l’arithmétique modulaire. Il exprime le reste d’une division et sert, par exemple, à travailler en base binaire ou à détecter des motifs réguliers (pair/impair, cycles).
Mais au-delà de leur histoire, ces opérations trouvent aujourd’hui une application directe sur Blogger. Les mêmes principes qui guidaient les scribes mésopotamiens ou les mathématiciens arabes se prolongent ici sous forme d’opérateurs arithmétiques Blogger, permettant de manipuler des données de blog comme on manipule des nombres.
Les syntaxes d’écriture
Les opérateurs arithmétiques disposent de deux formes d’écriture. La syntaxe infixe place l’opérateur entre deux valeurs et constitue la notation la plus naturelle. La syntaxe fonctionnelle, moins courante, écrit l’opérateur en tête, suivi des valeurs entre parenthèses. Les deux sont strictement équivalentes et produisent le même résultat.
Noms | Opérateurs | Syntaxes | Opérandes | Résultat |
---|---|---|---|---|
Addition |
+ |
Syntaxe Infixe (par défaut) number + number Syntaxe Fonctionnelle +(number,number) |
2+ | number |
Soustraction |
- |
Syntaxe Infixe (par défaut) number - number Syntaxe Fonctionnelle -(number,number) |
2+ | number |
Multiplication |
* |
Syntaxe Infixe (par défaut) number * number Syntaxe Fonctionnelle *(number,number) |
2+ | number |
Division |
/ |
Syntaxe Infixe (par défaut) number / number Syntaxe Fonctionnelle /(number,number) |
2+ | number |
Modulo |
% |
Syntaxe Infixe (par défaut) number % number Syntaxe Fonctionnelle %(number,number) |
2+ | number |
Utilisation et règles
Les opérations arithmétiques renvoient toujours une valeur numérique.
Les opérandes doivent être de type number : valeurs explicites, données Blogger ou résultats d’autres expressions.
Une opération peut être imbriquée dans une autre, tant que le résultat attendu est un nombre.
L’opérateur
+
sert aussi à la concaténation de chaînes de caractères.Pour obtenir un nombre négatif, il suffit de le précéder du signe
–
(ex.–5
).Le résultat peut contenir jusqu’à 4 décimales.
Les opérateurs
+
,–
,*
et/
s’appliquent aussi aux variables d'habillage de type length (px, em, etc.).
Les opérateurs
Addition
L’addition est l’opération la plus simple : elle combine deux nombres pour en produire un troisième. Sur Blogger, elle fonctionne aussi bien avec des valeurs écrites en clair qu’avec des données dynamiques.
-
Exemple simple
5 + 10
renvoie15
. -
Exemple mixte
10 + data:posts.length
ajoute une valeur fixe au nombre d’articles.
Attention : Si l’une des opérandes n’est pas un nombre mais une chaîne de caractères, l’opérateur +
se comportera comme un opérateur de concaténation et assemble les chaînes au lieu de les additionner.
Soustraction
La soustraction enlève la valeur de la seconde opérande à la valeur de la première. Comme l’addition, elle peut utiliser des nombres explicites ou des données Blogger.
-
Exemple simple
10 - 4
renvoie6
. -
Exemple avec nombre négatif
-5 - 3
renvoie-8
.
La soustraction est aussi le moyen de produire un nombre négatif : il suffit de précéder directement une valeur du signe –
.
Multiplication
La multiplication calcule le produit de deux nombres. Elle est utile aussi bien pour des valeurs fixes que pour manipuler des données numériques d’un blog.
-
Exemple simple
3 * 7
renvoie21
. -
Exemple mixte
data:posts.length * 2
double le nombre d’articles.
La multiplication peut être combinée avec d’autres opérations, en respectant les priorités classiques (elle est calculée avant l’addition et la soustraction, sauf si des parenthèses redéfinissent l’ordre).
Division
La division calcule le quotient de deux nombres. Sur Blogger, le résultat peut contenir jusqu’à quatre décimales.
-
Exemple simple
7 / 3
renvoie2.3333
. -
Exemple mixte
data:posts.length / 10
calcule le nombre moyen d’articles par lot de dix.
Attention : Comme en mathématiques classiques, la division par zéro n’a pas de sens : une telle opération provoque une erreur dans l’évaluation de l’expression.
Modulo
Le modulo renvoie le reste d’une division entière. C’est un opérateur particulièrement utile pour détecter des motifs répétitifs (pair/impair, cycles, périodicité) ou pour tronquer un résultat avant une division.
-
Exemple simple
13 % 6
renvoie1
(car13 ÷ 6 = 2
reste1
). -
Exemple pratique
data:posts.length % 2
permet de tester si le nombre d’articles est pair (reste0
) ou impair (reste1
). -
Exemple d’arrondi par troncature
(13 - (13 % 6)) / 6
renvoie2
en supprimant le reste avant la division.
PEMDAS
Comme dans les mathématiques classiques, les opérateurs arithmétiques sur Blogger respectent un ordre de priorité. On parle souvent de PEMDAS (Parentheses, Exponents, Multiplication, Division, Addition, Subtraction).
Les parenthèses sont toujours évaluées en premier.
Viennent ensuite la multiplication et la division, calculées de gauche à droite.
Puis l’addition et la soustraction, également de gauche à droite.
-
Exemple simple
5 + 2 * 3
renvoie11
(la multiplication est prioritaire). -
Avec parenthèses
(5 + 2) * 3
renvoie21
(l’addition est faite en premier).
Même si Blogger ne propose pas d’opérateur d’exposant, la règle reste valable : les parenthèses permettent toujours de contrôler l’ordre exact d’une expression.
Quelques exemples
2 valeurs explicites
<b:eval expr='5 * 10'/>
Le résultat de l'opération sera : 50
.
Une valeur explicite et une donnée
<b:eval expr='10 + data:posts.length'/>
Si la valeur de data:posts.length
est 200
, le résultat de l'opération sera : 210
.
Règles de priorités
<b:eval expr='((10 + data:posts.length) * (2 + data:posts.length)) - 5'/>
L'expression contient plusieurs opérations dont les priorités sont fixées à l'aide des parenthèses.
Alterner une mise en page
<b:if cond='(data:posts.length % 2) eq 0'> <p>Nombre d’articles pair</p> <b:else/> <p>Nombre d’articles impair</p> </b:if>
Ici, on utilise l’opérateur % 2
pour savoir si le nombre total d’articles est divisible par 2
.
Si le reste est
0
, le nombre est pair.Sinon, il est impair.
Classe selon la parité du total
<div> <b:class cond='(data:posts.length % 2) eq 0' name='even'/> <b:class cond='(data:posts.length % 2) eq 1' name='odd'/> </div>
Si
data:posts.length % 2
renvoie0
, le<div>
reçoit la classeeven
.Sinon, il reçoit
odd
.
Arrondi par troncature
<b:eval expr='(data:posts.length - (data:posts.length % 6)) / 6'/>
Si
data:posts.length
vaut13
, l’opération renvoie2
(soit 2 groupes complets de 6).Le reste (ici 1 article) est ignoré, car il ne forme pas un lot complet.