Guest User

Untitled

a guest
Jun 7th, 2016
385
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.24 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. /**
  4.  * Created by nadia on 06.06.16.
  5.  */
  6. public class SumBigNumbers {
  7.     private static String padNumber(String num, int maxlen) {
  8.         if (num.length() >= maxlen) {
  9.             return num;
  10.         }
  11.         StringBuilder ss = new StringBuilder();
  12.         while (ss.length() < maxlen - num.length()) {
  13.             ss.append('0');
  14.         }
  15.         ss.append(num);
  16.         return ss.toString();
  17.     }
  18.  
  19.     private static int atoi(char c) {
  20.         return c - '0';
  21.     }
  22.  
  23.     public static void main(String[] args) {
  24.         Scanner sc = new Scanner(System.in);
  25.         String  first = sc.nextLine();
  26.         String  second = sc.nextLine();
  27.         int maxlen = Math.max(first.length(), second.length());
  28.         first = padNumber(first, maxlen);
  29.         second = padNumber(second, maxlen);
  30.  
  31.         StringBuilder sb = new StringBuilder();
  32.  
  33.         int carry = 0;
  34.         for (int i = maxlen - 1; i >= 0; --i) {
  35.             int r = carry + atoi(first.charAt(i)) + atoi(second.charAt(i));
  36.             carry = r / 10;
  37.             r = r % 10;
  38.             sb.insert(0, r);
  39.         }
  40.         if (carry > 0) {
  41.             sb.insert(0, carry);
  42.         }
  43.         System.out.println(sb.toString());
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment