zoukankan      html  css  js  c++  java
  • nyoj 73-比大小 (Java, 高精度)

    73-比大小


    内存限制:64MB 时间限制:3000ms 特判: No
    通过数:15 提交数:64 难度:3

    题目描述:

    给你两个很大的数,你能不能判断出他们两个数的大小呢?

    比如123456789123456789要大于-123456

    输入描述:

    每组测试数据占一行,输入两个不超过1000位的10进制整数a,b
    数据保证输入的a,b没有前缀的0。
    如果输入0 0表示输入结束。测试数据组数不超过100组

    输出描述:

    如果a>b则输出“a>b”,如果a<b则输出“a<b”,如果相等则输出“a==b”。

    样例输入:

    111111111111111111111111111 88888888888888888888
    -1111111111111111111111111  22222222
    0 0

    样例输出:

    a>b
    a<b

    分析:
      1、通过Java中的BigInteger进行大数处理

    核心代码:
    1 String temp = a.subtract(b).toString();
    2 char temp2 = temp.charAt(0);
    3 if (temp2 == '-')
    4     System.out.println("a<b");
    5 else
    6     System.out.println("a>b");

    Java代码实现(AC):

     1 import java.util.*;
     2 import java.io.*;
     3 import java.math.*;
     4 
     5 public class Main {
     6     public static void main(String args[]) {
     7         Scanner scan = new Scanner(System.in);
     8         BigInteger a, b;
     9         while(true){
    10             a = scan.nextBigInteger();
    11             b = scan.nextBigInteger();
    12             if (a.equals(BigInteger.ZERO) && b.equals(BigInteger.ZERO))
    13                 break;
    14             if (a.equals(b))
    15                 System.out.println("a==b");
    16             else{
    17                 String temp = a.subtract(b).toString();
    18                 char temp2 = temp.charAt(0);
    19                 if(temp2 == '-')
    20                     System.out.println("a<b");
    21                 else
    22                     System.out.println("a>b");
    23             }
    24         }
    25     }
    26 }
  • 相关阅读:
    梦断代码(一)——死定了
    十天冲刺2——(六)
    十天冲刺2——(五)
    十天冲刺2——(四)
    十天冲刺2——(3)
    十天冲刺2——(二)
    关键字简介
    基本类型
    使用命令编译运行Java程序
    在Windows平台上搭建Java环境
  • 原文地址:https://www.cnblogs.com/GetcharZp/p/9112090.html
Copyright © 2011-2022 走看看