Module en Java

Rupam Yadav 12 octobre 2023
  1. Utilisez Math.floorMod() pour calculer le module de deux nombres en Java
  2. Utilisez l’opérateur % pour calculer le module de deux nombres en Java
Module en Java

L’opérateur modulus ou modulo renvoie le reste des deux entiers après division. Il est utilisé dans des tâches simples comme déterminer qu’un nombre est pair ou non et des tâches plus complexes comme le suivi de la prochaine position d’écriture dans un tableau circulaire.

Utilisez Math.floorMod() pour calculer le module de deux nombres en Java

La fonction Math.floorMod(a,b) accepte deux arguments qui peuvent être de type int ou long. Dans la fonction, a est le dividende tandis que b est le diviseur. Il renvoie le module plancher des deux arguments passés à la fonction. Le mod de dire a et b donnera un résultat supérieur ou égal à 0, et inférieur à b.

Ici dans le code donné ci-dessous, la variable num1 est exactement divisible par num2 ; donc le reste est 0. Pour le deuxième scénario, on a num3 et num4 du même signe et on donne un reste du même signe seulement.

Mais si l’on considère le troisième scénario où le dividende num5 est positif tandis que le diviseur num6 est négatif, le reste portera le signe du diviseur. De même, dans le dernier cas dividende, num7 est toujours négatif ; le résultat porte uniquement le signe du diviseur positif.

import java.lang.Math;

public class Main {
  public static void main(String[] args) {
    int num1 = 20, num2 = 4;
    System.out.println(Math.floorMod(num1, num2));

    int num3 = 113, num4 = 30;
    System.out.println(Math.floorMod(num3, num4));

    int num5 = 113, num6 = -30;
    System.out.println(Math.floorMod(num5, num6));

    int num7 = -113, num8 = 30;
    System.out.println(Math.floorMod(num7, num8));
  }
}

Production

0 23 - 7 7

Utilisez l’opérateur % pour calculer le module de deux nombres en Java

L’opérateur de reste % est également utilisé pour l’opération de reste. Il y a une différence subtile entre mod et reste. Comme mentionné ci-dessus, la résultante pour le mod de a et b est toujours supérieure ou égale à 0, et inférieure au b(diviseur).

Si nous considérons l’exemple donné ci-dessous en utilisant num1 % num2, nous déterminons si un num1 est pair ou impair. Si la condition où le reste de num1 % num2 est égal à 0, le nombre est pair sinon impair. Dans l’opération %, la résultante porte le signe du dividende, qui est visible si l’on prend num3 % num2. L’équation -23 % 2 est égale à -1 d’où le signe du dividende.

De même, si le dividende est positif, le reste résultant est positif. Par exemple num1 % num4 donne un reste positif. L’équation 17 % -3 est égale à 2.

public class ModTest {
  public static void main(String args[]) {
    int num1 = 17;
    int num2 = 2;

    boolean result = false;

    if (result = (num1 % num2) == 0) {
      System.out.println("Number " + num1 + " is even");
    } else {
      System.out.println("Number " + num1 + " is odd");
    }

    int num3 = -23;
    int num4 = -3;
    System.out.println("Remainder1: " + num3 % num2);
    System.out.println("Remainder2: " + num1 % num4);
  }
}

Production

Number 17 is odd Remainder1 : -1 Remainder2 : 2
Auteur: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Article connexe - Java Math