Advertisement
Guest User

Untitled

a guest
Dec 8th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.11 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3. #include <cstdlib>
  4. using namespace std;
  5.  
  6. int fac(char* n) {
  7.     int i, m=0;
  8.     for (i = 0; i < 14; i++) {
  9.         if ((*(n+i))!=' '&&(*(n+i))!='\0') {
  10.             m = m + 1;
  11.         }
  12.     }
  13.     return m;
  14. }
  15.  
  16. void tanme1(char* n1,char* n2,char* n3, int z1) {
  17.     int i, j, x1, x2, x3, k;
  18.         for (i = z1-1, k=0; i>=0; i--){
  19.         if(*(n1+i)=='A'||*(n1+i)=='B') x1=*(n1+i)-'A'+10; else x1=*(n1+i)-'0';
  20.         if(*(n2+i)=='A'||*(n2+i)=='B') x2=*(n2+i)-'A'+10; else x2=*(n2+i)-'0';
  21.         x3=x1+x2+k; k=0;
  22.         if (x3>=12) {x3-=12; k=1;}
  23.         if (x3 >= 0&&x3<=9) *(n3+i)=x3+'0';
  24.         else *(n3+i)=x3+'A'-10;
  25.         if (i==0&&k!=0) {for(j=14; j>=0; j--) *(n3+j+1)=*(n3+j); *(n3+i)=k+'0';}
  26.         }
  27.  
  28. }
  29.  
  30. void tanme2(char* n1,char* n2,char* n3, int z1, int* z2) {
  31.     int i, j, x1, x2, x3, k;
  32.         for (j = 0; j<=z1-1; j++){
  33.         if(*(n1+j)=='A'||*(n1+j)=='B') x1=*(n1+j)-'A'+10; else x1=*(n1+j)-'0';
  34.         if(*(n2+j)=='A'||*(n2+j)=='B') x2=*(n2+j)-'A'+10; else x2=*(n2+j)-'0';
  35.         if(x1>x2)break;
  36.         else if(x1<x2){*z2=1;break;}
  37.         }
  38.         for (i = z1-1, k=0; i>=0; i--){
  39.         if(*(n1+i)=='A'||*(n1+i)=='B') x1=*(n1+i)-'A'+10; else x1=*(n1+i)-'0';
  40.         if(*(n2+i)=='A'||*(n2+i)=='B') x2=*(n2+i)-'A'+10; else x2=*(n2+i)-'0';
  41.         if(*z2==0) x3=x1-x2-k;
  42.         else if(*z2==1) x3=x2-x1-k;
  43.         k=0;
  44.         if (x3<0) {x3+=12; k=1;}
  45.         if (x3 >= 0&&x3<=9) *(n3+i)=x3+'0';
  46.         else *(n3+i)=x3+'A'-10;
  47.  
  48.         }
  49. }
  50.  
  51. int _tmain(int argc, _TCHAR* argv[]) {
  52.     int q1=0, q2=0, b1=0, i, j, x, y, z2=0;
  53.     char v;
  54.     char var4[20] = {""};
  55.     char var3[20] = {""};
  56.     char var2[20] = {""};
  57.     char var1[20] = {""};
  58.     cout << "chislo1:";
  59.     gets(var1);
  60.     cout << "chislo2:";
  61.     gets(var2);
  62.     if (var1[0]=='-') {q1=1; for(i=1; i<15; i++) var1[i-1]=var1[i];}
  63.     if (var2[0]=='-') {q2=1; for(i=1; i<15; i++) var2[i-1]=var2[i];}
  64.     x=fac(var1); y=fac(var2);
  65.     if (x>y) {
  66.      for (i=0; i <x-y; i++) {for(j=15-x+y; j>=0; j--) var2[j+1]=var2[j]; var2[i]='0';}
  67.     }
  68.      else {
  69.      for (i=0; i <y-x; i++) {for(j=15-y+x; j>=0; j--) var1[j+1]=var1[j]; var1[i]='0';}
  70.     }
  71.     cout << endl;
  72.     for (i = 0; i < 15; i++) {
  73.     cout << var1[i] ;
  74.     }
  75.     cout << endl;
  76.     for (i = 0; i < 15; i++) {
  77.     cout << var2[i] ;
  78.     }
  79.     cout << endl;
  80.     cout << "---------------------------" <<  endl;
  81.  
  82.     if (q1==1&&q2==1) {tanme1(var1,var2,var3,fac(var1));
  83.                       for(j=14; j>=0; j--) var3[j+1]=var3[j];var3[0]='-';
  84.  
  85.                       tanme2(var2,var1,var4,fac(var1),&z2);
  86.                       if(z2==1){for(j=14; j>=0; j--) var4[j+1]=var4[j];var4[0]='-';}}
  87.  
  88.     if (q1==0&&q2==0) {tanme1(var1,var2,var3,fac(var1));
  89.  
  90.                       tanme2(var1,var2,var4,fac(var1),&z2);
  91.                       if(z2==1){for(j=14; j>=0; j--) var4[j+1]=var4[j];var4[0]='-';}}
  92.  
  93.     if (q1==1&&q2==0) {tanme2(var2,var1,var3,fac(var1),&z2);
  94.                       if(z2==1){for(j=14; j>=0; j--) var3[j+1]=var3[j];var3[0]='-';}
  95.  
  96.                       tanme1(var1,var2,var4,fac(var1));
  97.                       for(j=14; j>=0; j--) var4[j+1]=var4[j];var4[0]='-';}
  98.  
  99.     if (q1==0&&q2==1) {tanme2(var1,var2,var3,fac(var1),&z2);
  100.                       if(z2==1){for(j=14; j>=0; j--) var3[j+1]=var3[j];var3[0]='-';}
  101.  
  102.                       tanme1(var1,var2,var4,fac(var1));}
  103.  
  104.     for (i = 0; i < 15; i++) {
  105.     cout << var3[i] ;
  106.     }
  107.     cout << endl;
  108.     for (i = 0; i < 15; i++) {
  109.     cout << var4[i] ;
  110.     }
  111.     getch();
  112.     return 0;
  113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement