CR7CR7

multiply

Nov 13th, 2022
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.58 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class multiplyBigNum {
  4.     public static void main(String[] args) {
  5.         Scanner scanner = new Scanner(System.in);
  6.  
  7.         String bigNum = scanner.nextLine().replaceFirst("^0+(?!$)", "");
  8.  
  9.         if (bigNum.isEmpty()){
  10.             bigNum = "0";
  11.         }
  12.  
  13.         int num = Integer.parseInt(scanner.nextLine());
  14.        
  15.         if (num == 0) {
  16.             System.out.println(0);
  17.             return;
  18.         }
  19.         int remainder = 0;
  20.  
  21.         StringBuilder sb = new StringBuilder();
  22.  
  23.         for (int i = bigNum.length() - 1; i >= 0; i--) {
  24.  
  25.             int currentRes = 0;
  26.  
  27.             if (i == 0) {
  28.                 int remaining = Integer.parseInt(String.valueOf(bigNum.charAt(i))) * num + remainder;
  29.                 String preReversed = Integer.toString(remaining);
  30.  
  31.                 String reversedNum = new StringBuffer(preReversed).reverse().toString();
  32.                 sb.append(reversedNum);
  33.                 break;
  34.             }
  35.  
  36.             if (Integer.parseInt(String.valueOf(bigNum.charAt(i))) * num + remainder < 10) {
  37.  
  38.                 currentRes = Integer.parseInt(String.valueOf(bigNum.charAt(i))) * num + remainder;
  39.                 sb.append(currentRes);
  40.                 remainder = 0;
  41.  
  42.             } else {
  43.                 currentRes = Integer.parseInt(String.valueOf(bigNum.charAt(i))) * num + remainder;
  44.                 sb.append(currentRes % 10);
  45.                 currentRes /= 10;
  46.                 remainder = currentRes;
  47.             }
  48.  
  49.         }
  50.  
  51.         System.out.println(sb.reverse());
  52.     }
  53. }
Add Comment
Please, Sign In to add comment