Advertisement
nikitaxe132

Untitled

Oct 21st, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.91 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. using namespace std;
  5.  
  6. int enter(int max, int min) {
  7.     int temp = 0;
  8.     bool iscorrect;
  9.     do {
  10.         cin >> temp;
  11.         if ((temp > min) && (temp < max)) {
  12.             iscorrect = false;
  13.         } else {
  14.             cout << "This is a mistake. Please enter again!\n";
  15.             iscorrect = true;
  16.         }
  17.     } while (iscorrect);
  18.     return temp;
  19. }
  20.  
  21. int transfer(int j, int n, int num) {
  22.     int res = 0;
  23.     int temp = 1;
  24.     for (int i = j; i < n - 1; i++) {
  25.         temp = temp * 10;
  26.     }
  27.     res = res + (num * temp);
  28.     return res;
  29. }
  30.  
  31. int subtraction(int j, int n, int num) {
  32.     int res = 0;
  33.     int temp = 1;
  34.     temp = temp * 10;
  35.     res = res + (num % temp);
  36.     return res;
  37. }
  38.  
  39. int main() {
  40.     int n;
  41.     int num1 = 0;
  42.     int num2 = 0;
  43.     int numb1[10];
  44.     int numb2[10];
  45.     int res[10];
  46.     cout << "Enter the number of numb (n > 0 and n < 10)\n";
  47.     n = enter(10, 0);
  48.     for (int i = 0; i < n; i++) {
  49.         cout << "Enter the " << i + 1 << " digit of the first number(digit > 0 and digit < 10)\n";
  50.         numb1[i] = enter(10, -1);
  51.     }
  52.     for (int i = 0; i < n; i++) {
  53.         cout << "Enter the " << i + 1 << " digit of the second number(digit > 0 and digit < 10)\n";
  54.         numb2[i] = enter(10, -1);
  55.     }
  56.     for (int i = n - 1; i > -1; i--) {
  57.         num1 = num1 + transfer(i, n, numb1[i]);
  58.         num2 = num2 + transfer(i, n, numb2[i]);
  59.     }
  60.     num1 = num1 - num2;
  61.     if (num1 < 0) {
  62.         num1 = abs(num1);
  63.         for (int i = n - 1; i > -1; i--) {
  64.             res[i] = subtraction(i, n, num1);
  65.             num1 = num1 / 10;
  66.         }
  67.         res[0] = res[0] * (-1);
  68.     } else {
  69.         for (int i = n - 1; i > -1; i--) {
  70.             res[i] = subtraction(i, n, num1);
  71.             num1 = num1 / 10;
  72.         }
  73.     }
  74.     for (int i = 0; i < n; i++) {
  75.         cout << res[i];
  76.     }
  77.     return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement