Advertisement
nikitaxe132

Untitled

Oct 21st, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.61 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.Scanner;
  4.  
  5. public class Main {
  6.     static int enter(int max, int min) {
  7.         Scanner scanner = new Scanner(System.in);
  8.         int temp = 0;
  9.         boolean iscorrect = true;
  10.         do {
  11.             try {
  12.                 temp = scanner.nextInt();
  13.                 if ((temp > min) && (temp < max)) {
  14.                     iscorrect = false;
  15.                 } else {
  16.                     System.out.println("This is a mistake. Please enter again!");
  17.                 }
  18.             } catch (Exception e) {
  19.                 scanner.nextLine();
  20.                 System.out.println("This is a mistake. Please enter again!");
  21.                 iscorrect = true;
  22.             }
  23.         }
  24.         while (iscorrect);
  25.         return temp;
  26.     }
  27.  
  28.     static int transfer(int j, int n, int num) {
  29.         int res = 0;
  30.         int temp = 1;
  31.         for (int i = j; i < n - 1; i++) {
  32.             temp = temp * 10;
  33.         }
  34.         res = res + (num * temp);
  35.         return res;
  36.     }
  37.  
  38.     static int subtraction(int j, int n, int num) {
  39.         int res = 0;
  40.         int temp = 1;
  41.         temp = temp * 10;
  42.         res = res + (num % temp);
  43.         return res;
  44.     }
  45.  
  46.     public static void main(String[] args) {
  47.         int n;
  48.         int num1 = 0;
  49.         int num2 = 0;
  50.         int[] numb1 = new int[10];
  51.         int[] numb2 = new int[10];
  52.         int[] res = new int[10];
  53.         System.out.println("Enter the number of numb (n > 0 and n < 10)");
  54.         n = enter(10, 0);
  55.         for (int i = 0; i < n; i++) {
  56.             System.out.println("Enter the " + (i + 1) + " digit of the first number(digit > 0 and digit < 10)");
  57.             numb1[i] = enter(10, -1);
  58.         }
  59.         for (int i = 0; i < n; i++) {
  60.             System.out.println("Enter the " + (i + 1) + " digit of the second number(digit > 0 and digit < 10)");
  61.             numb2[i] = enter(10, -1);
  62.         }
  63.         for (int i = n - 1; i > -1; i--) {
  64.             num1 = num1 + transfer(i, n, numb1[i]);
  65.             num2 = num2 + transfer(i, n, numb2[i]);
  66.         }
  67.         num1 = num1 - num2;
  68.         if (num1 < 0) {
  69.             num1 = (Math.abs(num1));
  70.             for (int i = n - 1; i > -1; i--) {
  71.                 res[i] = subtraction(i, n, num1);
  72.                 num1 = num1 / 10;
  73.             }
  74.             res[0] = res[0] * (-1);
  75.         } else {
  76.             for (int i = n - 1; i > -1; i--) {
  77.                 res[i] = subtraction(i, n, num1);
  78.                 num1 = num1 / 10;
  79.             }
  80.         }
  81.         for (int i = 0; i < n; i++) {
  82.             System.out.print(res[i]);
  83.         }
  84.     }
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement