JAVA 대수 처리 (BigInteger, BigDecimal)
5106 단어 수론
이 두 종 류 는 모두 자바. math. * 가방 에 있 기 때문에 매번 시작 부분 에서 이 가방 을 참조 해 야 합 니 다.
I 기본 함수:
1.valueOf(parament);//매개 변 수 를 제 정 된 형식 2. add () 로 변환 합 니 다. //큰 정수 에 3. subtract () 를 더 합 니 다. //상 감 4. multiply (); //곱 하기 5. divide (); //6. remainer () 를 제거 합 니 다. //7. pow () 를 남 깁 니 다. //a.pow(b)=a^b 8.gcd(); //최대 공약수 9. abs (); //절대 값 10. negate (); //역수 11. mod () 가 져 오기; //a.mod(b)=a%b=a.remainder(b); 12.max(); min(); 13.public int comareTo(); 14.boolean equals();//같은 15.//BigInteger 구조 함수 여부: BigInteger(String val); //지정 한 문자열 을 10 진 표시 형식 으로 변환 합 니 다. BigInteger(String val,int radix); //지정 한 기수 의 BigInteger 문자열 표시 형식 을 BigInteger 로 변환 합 니 다.
II. 기본 상수: A = BigInteger. ONE 1 B=BigInteger.TEN 10 C=BigInteger.ZERO 0
Ⅲ. 기본 동작 - 읽 기와 출력 은 Scanner 류 정의 대상 으로 콘 솔 에서 읽 습 니 다. Scanner 류 는 자바 util. * 패키지 에 있 습 니 다.
Scanner cin=new Scanner(System.in);// 读入
while(cin.hasNext()) //等同于!=EOF
{
int n;
BigInteger m;
n=cin.nextInt(); //读入一个int;
m=cin.BigInteger();//读入一个BigInteger;
System.out.print(m.toString());
}
Ⅳ. 사 칙 연산:
import java.util.Scanner;
import java.math.*;
import java.text.*;
public class Main {
public static void main(String args[]) {
Scanner cin = new Scanner ( System.in );
BigInteger a,b;
int c;
char op;
String s;
while( cin.hasNext() ) {
a = cin.nextBigInteger();
s = cin.next();
op = s.charAt(0);
if( op == '+') {
b = cin.nextBigInteger();
System.out.println(a.add(b));
}
else if( op == '-') {
b = cin.nextBigInteger();
System.out.println(a.subtract(b));
}
else if( op == '*') {
b = cin.nextBigInteger();
System.out.println(a.multiply(b));
}
else {
BigDecimal a1,b1,eps;
String s1,s2,temp;
s1 = a.toString();
a1 = new BigDecimal(s1);
b = cin.nextBigInteger();
s2 = b.toString();
b1 = new BigDecimal(s2);
c = cin.nextInt();
eps = a1.divide(b1,c,4);
//System.out.println(a + " " + b + " " + c);
//System.out.println(a1.doubleValue() + " " + b1.doubleValue() + " " + c);
System.out.print( a.divide(b) + " " + a.mod(b) + " ");
if( c != 0) {
temp = "0.";
for(int i = 0; i < c; i ++) temp += "0";
ecimalFormat gd = new DecimalFormat(temp);
System.out.println(gd.format(eps));
}
else System.out.println(eps);
}
}
}
}
구체 적 인 설명:
1.valueOf(parament); 매개 변 수 를 제 정 된 형식 으로 변환 합 니 다. 예 를 들 어 int a = 3; BigInteger b=BigInteger.valueOf(a); b = 3; String s=”12345”; BigInteger c=BigInteger.valueOf(s); c = 12345;2.add(); 큰 정수 를 더 하 다 BigInteger a=new BigInteger(“23”); BigInteger b=new BigInteger(“34”); a.add(b); 3.subtract(); 상 감 4. multiply ();곱 하기 5. divide (); 6. remainer () 를 제거 합 니 다.7. pow () 를 남 깁 니 다. a.pow(b)=a^b 8.gcd(); 최대 공약수 9. abs ();절대 값 10. negate ();역수 11. mod () 가 져 오기;a.mod(b)=a%b=a.remainder(b); 12.max(); min(); 13.public int comareTo(); 반환 - 1, 0 또는 1, 각각 BigInteger 는 숫자 적 으로 작 거나 같 거나 값 val 보다 크다.14.boolean equals(); 15. BigInteger 구조 함수 와 같 을 지 여부: 일반적으로 다음 과 같은 두 가 지 를 사용한다. BigInteger(String val); 지정 한 문자열 을 10 진 표시 형식 으로 변환 합 니 다. BigInteger(String val,int radix); 지정 한 기수 의 BigInteger 문자열 표시 형식 을 BigInteger 보충 으로 변환 합 니 다. a=a.pow(b); //a = a 의 b 제곱 a=a.stripTrailingZeros(); //후 도 를 제거 하 다 d=a.toPlainString();//과학 계수 법의 표현법 이 되 지 않도록 일반적인 소수 로 표시 하 다 if(d.charAt(0)=='0') d=d.substring(1);//선도 문자열 과 비교 ?? if(s.startsWith("0.")) s=s.substring(1);//선도 문자열 과 비교 ?? and();//예 를 들 어 a. and (b), a & b 계산 doubleValue(); //double 형식 으로 전환 longValue(); //log 형식 으로 전환 floatValue(); //float 형식 으로 전환 intValue(); //int 형식 으로 변환 divideAndRemainder(BigInteger val) //(this/val) 뒤꿈치 (this% val) 를 포함 하 는 두 개의 BigInteger 배열 을 되 돌려 줍 니 다. boolean isProbablePrime(BigInteger n) //대수 가 소수 인지 아 닌 지 를 판단 하 다 modPow(BigInteger n, BigInteger mod) //계산 this ^ n% mod nextProbablePrime(BigInteger n) //대수 n 보다 큰 소수 로 되 돌아 가기 not() //계산 하 다. ~this or(BigInteger a) //계산 this | a xor(BigInteger val) //값 이 (this ^ val) 인 BigInteger 를 되 돌려 줍 니 다. probablePrime(int bitLength, Random rnd) //소수 일 수도 있 고 지 정 된 길이 의 정 BigInteger 를 되 돌려 줍 니 다. shiftLeft(int n) //값 이 (this < n) 인 BigInteger 를 되 돌려 줍 니 다. shiftRight(int n) //값 이 (this >> n) 인 BigInteger 를 되 돌려 줍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[HDU 5608] functionProblem Description There is a function f(x),which is defined on the natural numbers set N,satisfies the following eqaut...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.