Main

Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]

Addition + , Soustraction - , Multiplication * , et Division /


Description

Ces opérateurs renvoient respectivement la somme, la différence, le produit ou le quotient entre deux opérandes (= entre deux termes). Cette opération est réalisée en utilisant le type des données des opérandes. Ainsi par exemple, 9 / 4 donne 2 dès lors que 9 et 4 sont de type int. Cela signifie cependant que l'opération peut déborder si le résultat est plus grand que ce que le type de donnée utilisé peut contenir (càd qu'en additionnant 1 en tant que int avec la valeur 32 767 cela donne -32 768 en raison du débordement).

Si les opérandes sont de deux types de donnée différents, le plus "grand" est utilisé pour le calcul.

Si un des nombres (opérandes) est du type float ou double, le calcul dit "en virgule flottante" est utilisé pour le calcul (càd que 9/4 donne 2.25).

Syntaxe

result = value1 + value2;
result = value1 - value2;
result = value1 * value2;
result = value1 / value2;

Paramètres :

  • value1: tout type de variable ou constante numérique
  • value2: tout type de variable ou constante numérique

Exemples

y = y + 3;
x = x - 7;
i = j * 6;
r = r / 5;

Conseils de programmation :

  • Il faut savoir que les constantes entières sont par défaut de type int, et dès lors certains calcul entre constantes peuvent déborder (càd 60*1000 donnera un résultat négatif).
  • Choisir des tailles de variables assez grandes pour permettre de stocker les plus grands résultats issus des calculs.
  • Savoir à quel moment votre variable débordera et ce qui se passe dans chaque sens du débordement (càd 0=>1 ou 0 => - 32768)
  • Pour les mathématiques qui nécessitent des décimales ou des fractions, utiliser les variables de type float, mais rester conscient de leurs inconvénients : large taille de mémoire, vitesse d'exécution des calculs plus lente.
  • Utiliser un opérateur de conversion de type, par exemple int(myFloat), pour convertir une variable d'un type en un autre type "à la volée".

Commentaires utilisateurs

Aucun commentaire


Page d'accueil de la référence Arduino en français

Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino ou à l'adresse suivante : support_at_mon-club-elec_point_fr

Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.

La présente traduction française commentée a été réalisée par Xavier HINAULT (2010-2012) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.