Keyboard shortcuts

Touchez ← ou → pour naviguer les chapitres

Touchez S ou / pour chercher dans le livre

Touchez ? pour afficher ce message

Touchez Esc pour masquer ce message

Accueil > Programmer avec Java > Les bases de Java >

📚 OpĂ©rations mathĂ©matiques et concatĂ©nation

Survol et attentes

Les ordinateurs sont des calculatrices trÚs puissantes. Dans cette leçon on apprend les opérations mathématiques les plus communes et une opération sur le texte.

Définitions
Opération
une action qui implique deux donnĂ©es pour produire un rĂ©sultat. Par exemple, l’addition est une opĂ©ration qui combine deux nombres pour donner la somme de ces nombres.
Opérateur
un symbole qui reprĂ©sente une opĂ©ration sur des donnĂ©es. Par exemple, - est l’opĂ©rateur de soustraction de nombres et = est l’opĂ©rateur d’assignation de valeurs Ă  des variables.
Opérande
les donnĂ©es de chaque cĂŽtĂ© d’un opĂ©rateur. Par exemple, dans 3 + 4, 3 et 4 sont les opĂ©randes. Les opĂ©randes peuvent ĂȘtre des valeurs littĂ©rales (comme 3 ou 4) ou une expression qui s’évalue au type appropriĂ©. Des exemples d’expressions simples sont : une variable, un appel de mĂ©thode ou une autre opĂ©ration.
Ordre des opérations
les rĂšgles qui dĂ©terminent l’ordre dans lequel les opĂ©rations sont effectuĂ©es. Java utilisent la mĂȘme ordre que les mathĂ©matiques : d’abord les parenthĂšses, ensuite la multiplication et la division, et finalement l’addition et la soustraction. Pour les opĂ©rations de mĂȘme niveau, les opĂ©rations s’évaluent de gauche vers la droite. S’il y a un appel de mĂ©thode, on remplace l’appel avec sa valeur de retour avant de poursuivre les opĂ©rations. S’il y a une rĂ©fĂ©rence de variable, on remplace la variable avec sa valeur avant de poursuivre les opĂ©rations.

Objectifs d’apprentissage

À la fin de cette leçon vous devrez ĂȘtre en mesure de :

  • Comprendre et Ă©valuer des opĂ©rations mathĂ©matiques et de concatĂ©nation.
  • Comprendre le cas spĂ©cial de la division avec des int et, de maniĂšre connexe, l’utilitĂ© de l’opĂ©rateur %.

CritĂšres de succĂšs

  • Écrire des expressions incluant des opĂ©rations mathĂ©matiques et de concatĂ©nation.

jshell

C’est pratique d’explorer ces opĂ©rations dans une session interactive qui donne le rĂ©sultat instruction par instruction (au lieu d’écrire un programme complet et l’exĂ©cuter). Pour le faire, simplement lancer la commande jshell au terminal. Ensuite tapez vos instructions une Ă  la fois (le ; est optionnel dans jshell). Pour quitter, tapez la commande /exit ou fermez le terminal.

Opérations mathématiques

Voici la liste des opérateurs mathématiques qui fonctionnent sur deux valeurs numériques, soit de type int ou double :

  • + addition
  • - soustraction
  • / division
  • * multiplication
  • % modulo (restant)

Division entiĂšre

La division entre deux entiers (int) peut seulement donner un entier comme rĂ©sultat parce qu’il n’y a pas de partie dĂ©cimale pour un int.

Exemples à évaluer dans jshell :

7 / 2; // donne 3 (pas 3.5)
7 / 3; // donne 2 (pas 2.333...)
1 / 2; // donne 0 (pas 0.5)

Modulo (restant)

Le modulo (%) donne le reste de la division.

1 % 3; // restants de la division par 3
2 % 3;
3 % 3;
4 % 3;

7 % 2; // restant de la division par 2

113 % 10; // restant de la division par 10

C’est utile pour vĂ©rifier si un nombre est divisible par un autre utilisant la condition “egale 0?”, soit == 0 en Java. Par exemple :

if ((a % 17) == 0) {
    // a est divisible par 17 parce qu'il n'y a pas de restant
    // fait quelque chose ici avec a
}

Les prochaines leçons prĂ©sententent les opĂ©rations logiques (comme ==) et les structures de contrĂŽle (if, while, for, etc.) qui permettent d’utiliser des conditions comme celle-ci.

Incrémentation et décrémentation

Ces opĂ©rateurs simplifient des assignations oĂč on modifie la valeur d’une variable de type int ou double par une quantitĂ© fixe.

OpĂ©rateurDescriptionExempleÉquivalent
++incrémenter (augmenter la valeur) par 1a++a = a + 1
+=incrémenter par une valeur spécifiquea += 3a = a + 3
--décrémenter (diminuer la valeur) par 1a--a = a - 1
-=décrémenter par une valeur spécifiquea -= 3a = a - 3
int a = 5;
a++; // a vaut maintenant 6
a--; // a vaut maintenant 5
a += 3; // a vaut maintenant 8
a -= 2; // a vaut maintenant 6

Concaténation de texte

L’opĂ©rateur + est surchargĂ© en Java; il a diffĂ©rentes dĂ©finitions selon le type des opĂ©randes.

  • Si les deux opĂ©randes sont numĂ©riques, + fait une addition
  • Si au moins une des opĂ©randes est du texte, + fait une concatĂ©nation. C’est-Ă -dire qu’il colle les deux reprĂ©sentations texte des valeurs pour donner un seul texte combinĂ©.

Exemples :

  • "Bon" + "jour" donne "Bonjour"
  • "Trois = " + 3 donne "Trois = 3"

    le int 3 est converti en String "3" avant d’ĂȘtre collĂ© au texte

  • "4" + 3 donne "43"

    Parce que "4" est du texte, l’opĂ©rateur + colle les deux reprĂ©sentations texte des valeurs au lieu de faire une addition.

Classe Math

N’oubliez pas que la classe Math contient plusieurs mĂ©thodes pour faire des opĂ©rations mathĂ©matiques plus complexes. Par exemple : Math.pow(), Math.sqrt(), Math.abs(), Math.sin(), etc.

Exercices

📚 Tester la comprĂ©hension

aucun quiz de vérification des concepts ici encore

đŸ› ïž Pratique

Travaillez dans le répertoire GitHub partagé par votre enseignant pour la pratique et les exercices.

  1. CrĂ©er un fichier Calculs.java dans votre rĂ©pertoire de travail. Assurez-vous d’y ajouter la structure de base (mĂ©thode main).
  2. Déclarez et initialisez deux int et faire les 5 opérations mathématiques des bases avec ces deux variables. Affichez le résultat de chaque opération, p. ex. System.out.println("a + b = " + (a + b));
  3. Ajouter un commentaire explicatif (// ... ou /* ... */) pour un des calculs explicant ce qui est une concatĂ©nation et ce qui est une opĂ©ration mathĂ©matique dans l’expression que vous affichez.
  4. Déclarez et initialisez deux double et faire les deux divisions possibles entre ces deux variables (a/b et b/a). Affichez le résultat de chaque opération.
  5. Testez votre programme en le lançant au terminal. Corrigez les erreurs s’il y en a.
  6. Faites un commit et un push de votre travail dans GitHub.

© 2022-2025 David Crowley