Co to jest dzielenie liczb całkowitych w Javie?
Dzielenie w Javie odbywa się normalnie, tak jak zwykłe dzielenie w matematyce czy prawdziwym życiu. Jednak po prostu odrzuca resztę. Na przykład, jeśli dzielisz 9 przez 2, iloraz wynosi 4, a reszta to 1.
Przykład 1 [ Reszta to 0 ]
Dzielenie liczb całkowitych w Javie działa doskonale we wszystkich przypadkach, w których dzielnik całkowicie dzieli dywidendę ( liczba całkowita podzielona przez liczbę całkowitą x). Odpowiedzią jest liczba całkowita, a typ danych całkowity może pomieścić ją bez przepełnienia. Dlatego nie ma utraty danych. Na przykład spójrz na poniższy fragment.public class IntegerDivision {
public static void main(String[] args) {
int dividend = 100;
int divisor = 5;
int quotient = dividend / divisor;
//Dividend completely divides the divisor
System.out.println(dividend + " / " + divisor + " = " + quotient);
dividend = 143;
divisor = 11;
quotient = dividend / divisor;
//Dividend completely divides the divisor
System.out.println(dividend + " / " + divisor + " = " + quotient);
}
}
Wyjście
100 / 5 = 20
143 / 11 = 13
Przykład 2 [ Reszta nie jest równa 0 ]
We wszystkich przypadkach dzielenia, w których reszta jest różna od 0, wynik końcowy zostanie odcięty do największej podzielnej liczby całkowitej (9/2 = 4). Zostanie to pokazane w następnym przykładzie. Może się zdarzyć, że będziesz potrzebować rzeczywistego ilorazu dziesiętnego. W takim przypadku możesz użyć typu danych float lub double. Jeśli jednak chcesz zaokrąglić iloraz do najbliższej liczby całkowitej, możesz wykonać następujące czynności.public class IntegerDivision {
public static void main(String[] args) {
int dividend = 9;
int divisor = 2;
int quotient = dividend / divisor;
// Case I - Dividend does not divide the divisor completely
// The quotient is chopped / truncated
System.out.print("Integer division \t\t" );
System.out.println(dividend + " / " + divisor + " = " + quotient);
// Case II - Mathematical or real life division
// Use float or double data type to get the actual quotient
double actualQuotient = (double)dividend / divisor;
System.out.print("Mathematics division \t\t" );
System.out.println((double)dividend + " / " + divisor + " = " + actualQuotient);
// Case III - Integer Division with rounding off
// the quotient to the closest integer
long roundedQuotient = Math.round((double)dividend / divisor);
System.out.print("Round off int division \t\t" );
System.out.println((double)dividend + " / " + divisor + " = " + roundedQuotient);
}
}
Wyjście
Dzielenie całkowite 9 / 2 = 4
Dzielenie matematyczne 9,0 / 2 = 4,5
Zaokrąglanie dzielenie int 9,0 / 2 = 5
Wyjaśnienie
Przypadek I i Przypadek II są oczywiste. W przypadku przypadku III możesz podzielić go na następujące kroki.-
Najpierw musisz zamienić dywidendę na podwójną.
-
Wykonaj zwykłe dzielenie Java int.
-
Zaokrąglij iloraz za pomocą metody Math.round() .
-
Użyj długiego typu danych do przechowywania zaokrąglonego ilorazu.
-
Proszę bardzo! Masz żądane wyjście jako iloraz.