今天碰到一道大数除法和模运算的题,以前也写过加减乘的大数模拟运算,但总觉着太麻烦了,今天大体了解了一下Java的输入输出,特来总结一下如何使用java中的高精度类型。首先我们要会建一个简单的java程序(以A+B为例)如下
import java.io.*;
import java.util.*;
import java.math.*;
import java.text.*;
public class Main
{
public static void main(String args[])
{
Scanner in=new Scanner(System.in);
int a,b;
while(in.hasNext())//多组输入
{
a=in.nextInt();
b=in.nextInt();
System.out.println(a+b);
}
}
}
基本类型的输入
读一个整数: int n = cin.nextInt(); 相当于 scanf("%d", &n); 或 cin >> n;
读一个字符串:String s = cin.next(); 相当于 scanf("%s", s); 或 cin >> s;
读一个浮点数:double t = cin.nextDouble(); 相当于 scanf("%lf", &t); 或 cin >> t;
读一整行: String s = cin.nextLine(); 相当于 gets(s); 或 cin.getline(...);
如果你想指教输入一个字符的话,可以这样: Scanner in = new Scanner(System.in); String str = in.nextLine(); char ch = str.charAt(0); System.out.println(ch);
下面来几种基本的大数加减乘除取余5中基本运算
import java.io.*;
import java.util.*;
import java.math.*;
import java.text.*;
public class Main
{
public static void main(String args[])
{
Scanner in=new Scanner(System.in);//定义输入
BigInteger a,b;char c;
a=in.nextBigInteger();
b=in.nextBigInteger();
c=in.next().charAt(0);//输入单个字符 这个比较坑
System.out.println(a.add(b)); //加
System.out.println(a.subtract(b));//减
System.out.println(a.multiply(b));//乘
System.out.println(a.divide(b));//除
System.out.println(a.mod(b));//取余
}
}
后续更新。。。