import java.math.BigInteger;
import java.util.Scanner; public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
BigInteger a,b;
while(in.hasNext())
{
a = in.nextBigInteger();
b = in.nextBigInteger();
//四则运算
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.remainder(b));
//大数比较
if(a.compareTo(b)==0)
System.out.println("a==b");
else if(a.compareTo(b)>0)
System.out.println("a>b");
else {
System.out.println("a<b");
}
//绝对值
System.out.println(a.abs());
//幂
int fun = 10;
System.out.println(a.pow(fun));
//大数x进制的字符串表示
int x = 8;
System.out.println(a.toString(x));
//大数返回十进制的字符串表示
System.out.println(a.toString());
}
}
}

toPlainString() //转为普遍计数法输出

//给一个字符串1.238761976E-10
//如何得到0.0000000001238761976这个字符串呢?
BigDecimal bd = new BigDecimal("1.238761976E-10");
System.out.println(bd.toPlainString());

stripTrailingZeros() //去掉末尾0

//给一个字符串1245600.000
//如何得到1245600这个字符串?
BigDecimal bd=new BigDecimal("1245600.000");
System.out.println(bd.stripTrailingZeros());

hdu1063

import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Scanner; public class Main {
public static void main(String[] args) { Scanner in = new Scanner(System.in);
while(in.hasNext())
{
BigDecimal ans = BigDecimal.valueOf(1);
BigDecimal a = in.nextBigDecimal();
Integer n = in.nextInt();
while(n-->0)
ans = ans.multiply(a);
String str = ans.stripTrailingZeros().toPlainString().toString();
if(str.charAt(0)=='0')
str = str.substring(1);
System.out.println(str);
}
in.close();
}
}

hdu 1753

import java.math.BigDecimal;
import java.util.Scanner; public class test1 {
public static void main(String[] args) { Scanner in = new Scanner(System.in);
while(in.hasNext())
{
BigDecimal a = in.nextBigDecimal();
BigDecimal b = in.nextBigDecimal();
a=a.add(b);
String str = a.stripTrailingZeros().toPlainString().toString();
if(str.charAt(0)=='0')
str = str.substring(1);
System.out.println(str);
}
in.close();
}
}

java中大数的一些基本运算的更多相关文章

  1. Java中大数的使用与Java入门(NCPC-Intergalactic Bidding)

    引入 前几天参加湖南多校的比赛,其中有这样一道题,需要使用高精度,同时需要排序,如果用c++实现的话,重载运算符很麻烦,于是直接学习了一发怎样用Java写大数,同时也算是学习Java基本常识了 题目 ...

  2. java中大数类的学习

    java中提供了大数类BigInteger和BigDecimal分别表示大整数类和大浮点数类,这两个类都在java.math.*包中,因此每次必须在开头处引用该包. 一.BigInteger构造函数: ...

  3. JAVA中大数经常使用的函数

    声明为 BigInteger 的 java.math 中的字段 static BigInteger BigInteger. ONE BigInteger 的常量 1. static BigIntege ...

  4. Java BigInteger(大数,ACM比赛专用)

    用c或者C++处理大数比较麻烦,于是决心学习一下JAVA中大数运算. 先下载一个eclipse,具体的用法去问度娘吧 JAVA中有两个类BigInteger和BigDecimal分别表示大整数类和大浮 ...

  5. 用Java进行大数处理(BigInteger)-hdu1042

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1042 题目描述: 代码实现: import java.util.Scanner; import jav ...

  6. ACM中java中BigInteger和Decimal用到的主要函数

    java中大数以及高精度常用函数 使用java大数类解决问题时我们需要注意两个方面:1.不能有包名,也就是说我们要把主类放到默认的包里,如果你的代码里出现形如package cn.gov.test;这 ...

  7. Java中的大数处理类BigInteger和BigDecimar浅析

    这两个类位于java.math包内,要使用它们必须在类前面引用该包:import java.math.BigInteger;和import java.math.BigDecimal; BigInteg ...

  8. JAVA中关于大数问题

    这里只是java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 一.样例:java中的输出a+b import java.io ...

  9. java 中的小数点、大数、随机数处理

    1.小数点处理 public class Test { public static void main(String[] args) { double i = 3.856; // 舍掉小数取整 Sys ...

随机推荐

  1. mybatis入门--#{}和${}的区别

    我们知道,在mybatis中,sql语句是需要我们自己写的.跟在普通的sql不一样的是,我们在使用mybatis框架的时候,使用的占位符不是 ? 而是 #{} 有时候还会出现这个符号 ${} 这些符号 ...

  2. 冒泡排序(js版)

    基本思想:两两比较相邻记录的关键字,如果反序则交换,直至没有反序为止. 最初的冒泡排序(初级版): //从小到大 function BubbleSort(arr){ var i,j,temp; for ...

  3. APM浅析

    APM(Application Performance Management & Monitoring)一种基于云的性能监控服务(SaaS),以非侵入式监听探针,收集应用关键指标,生成分析报表 ...

  4. lazarus的动态方法和虚拟方法

    动态方法和虚拟方法在delphi里面分别表示: 动态方法 当需要调用父类.祖先类的被覆盖方法的时候,是查找继承树,当找到,就调用.减少了VMT占用,但调用慢一些. 虚拟方法 和动态方法不同的是,记录了 ...

  5. PHD实时数据对象

    PHD实时数据库在化工制造业的应用 PISDK 开发包  电力企业信息化

  6. PostThreadMessage

    PostThreadMessage是一个Windows API函数.其功能是将一个队列消息放入(寄送)到指定线程的消息队列里,不等待线程处理消息就返回.

  7. Spring访问数据库(方式上跟HQL类似,每行记录映射一个实体类)

    看了这篇技术博客,觉得收获较大,收藏了:http://sarin.iteye.com/blog/875915

  8. nginx记录post数据日志

    1.vi nginx.conf 找到http {}中log_foramt ,定义post 日志格式 #log_format main '$remote_addr - $remote_user [$ti ...

  9. centos下安装配置jetty

    下载jdk-8u144-linux-x64.tar.gz # tar -zxvf jdk-8u144-linux-x64.tar.gz # mv jdk1.8.0_144 /usr/java/ # u ...

  10. python入门之文件处理

    1.读取文件 f=open(file="C:\BiZhi\新建文本文档.txt",mode="r",encoding="utf-8") da ...