Zielony Smok - logo witryny

Operator remainder w klasie BigInteger

Operator remainder jest dokładnym odpowiednikiem operatora % (modulus operator), tyle że jest metodą klasy BigInteger. Wyniki działania są dokładnie identyczne jak opisano tutaj: Operator % (modulus operator)

BigInteger remainder(BigInteger val)

Wykonywana jest operacja this % val, czyli otrzymujemy resztę z dzielenia.

Jeśli val = 0 wyrzuca ArithmeticException.

BigInteger[] divideAndRemainde(BitInteger val)

Zwraca tablicę [this / val, this % val)], czyli wynik dzielenia oraz resztę.

Jeśli val = 0 wyrzuca ArithmeticException.

BigInteger[] sqrtAndRemainder()

Zwraca tablicę [sqrt(this), this - s * s], czyli pierwiastek (część całkowita – część ułamkowa odcięta) oraz resztę, po odjęciu od liczby kwadratu pierwiastka.

Jeśli this < 0 wyrzuca ArithmeticException.

Wynik

KlasaBigInt11
BigInteger dzielna1 = new BigInteger("10");
BigInteger dzielna2 = new BigInteger("-10");
BigInteger dzielnik1 = new BigInteger("3");
BigInteger dzielnik2 = new BigInteger("-3");
//
BigInteger reszta1 = dzielna1.remainder(dzielnik1);
Util.print(reszta1);
BigInteger reszta2 = dzielna1.remainder(dzielnik2);
Util.print(reszta2);
BigInteger reszta3 = dzielna2.remainder(dzielnik1);
Util.print(reszta3);
BigInteger reszta4 = dzielna2.remainder(dzielnik2);
Util.print(reszta4);

Po uruchomieniu klasy otrzymamy:

 1
 1
-1
-1