Modulo in Java

Rupam Yadav 12 ottobre 2023
  1. Usa Math.floorMod() per calcolare il modulo di due numeri in Java
  2. Usa l’operatore % per calcolare il modulo di due numeri in Java
Modulo in Java

L’operatore modulo o modulo restituisce il resto dei due interi dopo la divisione. Viene utilizzato in attività semplici come capire che un numero è pari o no e in attività più complesse come tracciare la posizione di scrittura successiva in una matrice circolare.

Usa Math.floorMod() per calcolare il modulo di due numeri in Java

La funzione Math.floorMod(a,b) accetta due argomenti che possono essere di tipo int o long. Nella funzione, a è il dividendo mentre b è il divisore. Restituisce il modulo floor dei due argomenti passati alla funzione. Il mod di dire a e b produrrà un risultato maggiore o uguale a 0 e minore di b.

Qui nel codice riportato di seguito, la variabile num1 è esattamente divisibile per num2; quindi il resto è 0. Per il secondo scenario, abbiamo num3 e num4 dello stesso segno e diamo solo un resto dello stesso segno.

Ma se consideriamo il terzo scenario in cui il dividendo num5 è positivo mentre il divisore num6 è negativo, il resto porterà il segno del divisore. Analogamente, nell’ultimo caso il dividendo num7 è ancora negativo; il risultato porta solo il segno del divisore positivo.

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));
  }
}

Produzione

0 23 - 7 7

Usa l’operatore % per calcolare il modulo di due numeri in Java

L’operatore resto % viene utilizzato anche per l’operazione resto. C’è una sottile differenza tra mod e resto. Come accennato in precedenza, la risultante per la mod di a e b è sempre maggiore o uguale a 0 e minore di b (divisore).

Se consideriamo l’esempio riportato di seguito utilizzando num1 % num2, determiniamo se un num1 è pari o dispari. Se la condizione in cui il resto di num1 % num2 è uguale a 0, il numero è anche dispari. Nell’operazione % il risultante porta il segno del dividendo, visibile se prendiamo num3 % num2. L’equazione -23 % 2 è uguale a -1 da cui il segno del dividendo.

Allo stesso modo, se il dividendo è positivo, il resto risultante è positivo. Ad esempio num1 % num4 risulta in un resto positivo. L’equazione 17 % -3 è uguale a 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);
  }
}

Produzione

Number 17 is odd Remainder1 : -1 Remainder2 : 2
Autore: 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

Articolo correlato - Java Math