您的位置:首页 > 编程语言 > Java开发

java 大数取模(有可运行代码和详细注解)

2017-09-16 22:24 351 查看
package dashu;	//这是我的包名字,这个可以按规则任意起

import java.util.*;
import java.math.*;
public class muban{	//这是我的类名字,这个可以按规则任意起

public static void main(String args[]){
Scanner cin = new Scanner(System.in);
BigInteger a, b,c;
//以文件EOF结束
System.out.println("请依次输入大数 a 和  b 的值:");
while (cin.hasNext()){
a = cin.nextBigInteger();
b = cin.nextBigInteger();
System.out.println("a = "+a+" ,"+"b = "+b);
System.out.println("a + b = "+a.add(b)); //大整数的加法
System.out.println("a - b = "+a.subtract(b)); //大整数的减法
System.out.println("a * b = "+a.multiply(b)); //大整数的乘法
System.out.println("a / b = "+a.divide(b)); //大整数的除法(取整)
System.out.println("a % b = "+a.remainder(b)); //大整数取模

//两个大整数的大小比较
System.out.println("现在比较 a 和   b 的值大小:");
if( a.compareTo(b) == 0 ) System.out.println("a == b"); //大整数a==b
else if( a.compareTo(b) > 0 ) System.out.println("a > b"); //大整数a>b
else if( a.compareTo(b) < 0 ) System.out.println("a < b"); //大整数a<b

//求大整数绝对值
System.out.println("a 的绝对值是:");
System.out.println(a.abs()); //大整数a的绝对值

//求大整数的幂
System.out.println("a 的平方次幂是:");
int exponent=2;
System.out.println(a.pow(exponent)); //大整数a的exponent次幂

//返回大整数十进制的字符串表示
System.out.println("把大数 a 转化为字符串输出是:");
System.out.println(a.toString());

//返回大整数p进制的字符串表示
System.out.println("大数 a 的二进制表示为:");
int p=2;	//p = 8就是八进制表示
System.out.println(a.toString(p));
}
}
}


下面是另外一个可以学习的代码:

package dashu;

import java.math.BigInteger;
import java.util.Scanner;
public class temp {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请依次输入大数 a ,判断是否能够被50 整除:");
while(sc.hasNext()){
BigInteger a = sc.nextBigInteger();
BigInteger mod = BigInteger.valueOf(50);
BigInteger ans = a.mod(mod);	//(a非负数,是始终产生非负数)
ans = a.remainder(mod);		// a 可以是负数

if(ans.equals(BigInteger.ZERO)){	//判断整除
System.out.println("a 能被 50 整除 YES");
}else{
System.out.println("NO");
}
}
//ans = ans.divide(BigInteger.valueOf(i)); //此处,i 可以是整数
//ans.mod(BigInteger.valueOf(modd)));  	////此处,modd 可以是整数
}
}


参考:不好意思,窗口太多,关掉了没找到,以后定会补上

希望对你有用~

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: