用Java来处理高精度问题,相信对很多ACMer来说都是一件很happy的事,简单易懂。用Java刷了一些题,感觉Java还不错,在处理高精度和进制转换中,调用库函数的来处理。下面是写的一些Java中一些基本的函数的及其……
头文件:import java.io.*;
import java.util.*;
import java.math.*;
读入: Scanner cin = Scanner (System.in);
while(cin.hasNext())//等价于!=EOF
n=cin.nextInt();//读入一个int型的数
n=cin.nextBigInteger();//读入一个大整数
输出: System.out.print(n);//打印n
System.out.println();//换行
BigInteger中一些常见的函数:
A=BigInteger.ONE
B=BigInteger.TEN
C=BigInteger.ZERO
一些常见的数的赋初值。将int型的数赋值给BigInteger,BigInteger.valueOf(k);
基本的函数:
valueOf:赋初值
add:+ a.add(b);
java.util 包下的接口 Collection中有
add(E e) 方法,表示添加一个元素
确保此 collection 包含指定的元素(可选操作)。如果此 collection 由于调用而发生更改,则返回 true。(如果此
collection 不允许有重复元素,并且已经包含了指定的元素,则返回 false。)
subtract:-
multiply:*
下面的例子显示math.BigInteger.multiply()方法的用法
package com.yiibai;
import java.math.*;
public class BigIntegerDemo {
public static void main(String[] args) {
// create 3 BigInteger objects
BigInteger bi1, bi2, bi3;
bi1 = new BigInteger("7");
bi2 = new BigInteger("20");
// multiply bi1 with bi2 and assign result to bi3
bi3 = bi1.multiply(bi2);
String str = bi1 + " * " + bi2 + " = " +bi3;
// print bi3 value
System.out.println("Multiplication result is " +str);
}
}
让我们编译和运行上面的程序,这将产生以下结果:
Multiplication result is 7 * 20 = 140
本站代码下载:http://www.yiibai.com/siteinfo/download.html
本文属作者原创,转载请注明出处:易百教程 » Java.math.BigInteger.multiply()方法实例
divide:/
remainder:this % val
divideAndRemainder:a[0]=this / val; a[1]=this % val
这是一种函数语言:
功能
返回一个整数除以另一个整数之后产生的余数。
语法
REMAINDER ( int a, int b );
要学编程,一定要把自己没把握的函数多试验试验才行!!!
remainder()函数还有以下三种很少被使用的参数类型:
double remainder( double x, double y );
float remainderf( float x, float y );
long double remainderl (long double x,long double y);
返回的都是 x/y 的余数 , r = x – ny , n 是接近 x/y 实际值的整数;
如果实际的商在两个整数之间,就向偶数舍入,这样定义的余数可以是正也可以是负
pow:a.pow(b)=a^b
gcd,abs:公约数,绝对值
negate:取负数
signum:符号函数
mod:a.mod(b)=a%b;