Advertisement
Guest User

Chess Source Third Edition

a guest
Oct 25th, 2014
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 34.79 KB | None | 0 0
  1. #include<stdio.h>
  2. char A[8][8]={      {'T','H','F','W','K','F','H','T'},
  3.                     {'S','S','S','S','S','S','S','S'},
  4.                     {'.','.','.','.','.','.','.','.'},
  5.                     {'.','.','.','.','.','.','.','.'},
  6.                     {'.','.','.','.','.','.','.','.'},
  7.                     {'.','.','.','.','.','.','.','.'},
  8.                     {'s','s','s','s','s','s','s','s'},
  9.                     {'t','h','f','w','k','f','h','t'}};
  10. char* address[16];
  11. char* Ptr=NULL;
  12. char value_n='&';
  13. char value='&';
  14. char letter[16];
  15. int c;
  16. char* KPtr=&A[0][4];
  17. char* kPtr=&A[7][4];
  18.  
  19. int soldier1(int x,int y)
  20. {
  21.     c=0;                                                                     //3dd el-t3'yeraat elly 7slt 34an n2dro nrg3ooha l-aslaha
  22.     if(A[x+1][y]=='.'&&x+1<8)
  23.     {
  24.         c++;
  25.         letter[c]=A[x+1][y];
  26.         A[x+1][y]='+';
  27.         address[c]=&A[x+1][y];                           //tasgeel el-address elly et3'yr f global array 34an function getnormal() t3rf trga3ha b3d el-move zy makant
  28.     }
  29.     if(A[x+2][y]=='.' && x==1 && A[x+1][y]=='+')                            // x==2 lw el-3skry lessa f mkano el-asasy
  30.     {
  31.         c++;
  32.         letter[c]=A[x+2][y];
  33.         A[x+2][y]='+';
  34.         address[c]=&A[x+2][y];
  35.        
  36.     }
  37.     if(x+1<8 && y-1>-1)
  38.         switch(A[x+1][y-1])
  39.         {
  40.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x+1][y-1];  A[x+1][y-1]='$';   address[c]=&A[x+1][y-1];  break;
  41.         }
  42.     if(x+1<8 && y+1<8)
  43.         switch(A[x+1][y+1])
  44.         {
  45.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x+1][y+1];  A[x+1][y+1]='$';   address[c]=&A[x+1][y+1];  break;
  46.         }
  47.        
  48. }
  49.  
  50. int tabia1(int x,int y)
  51. {
  52.     c=0;
  53.     int i=0,flag=1;
  54.     for(i=x+1;i<8;i++)
  55.     {
  56.         switch(A[i][y])
  57.         {
  58.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  59.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  60.             default: flag=0;break;
  61.         }
  62.         if(flag==0)
  63.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  64.     }
  65.     for(i=x-1;i>-1;i--)
  66.     {
  67.         switch(A[i][y])
  68.         {
  69.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  70.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  71.             default: flag=0;break;
  72.         }
  73.         if(flag==0)
  74.             {flag=1;break;}
  75.     }
  76.     for(i=y+1;i<8;i++)
  77.     {
  78.         switch(A[x][i])
  79.         {
  80.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  81.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  82.             default: flag=0;break;
  83.         }
  84.         if(flag==0)
  85.             {flag=1;break;}                
  86.     }
  87.     for(i=y-1;i>-1;i--)
  88.     {
  89.         switch(A[x][i])
  90.         {
  91.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  92.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  93.             default: flag=0;break;
  94.         }
  95.         if(flag==0)
  96.             {flag=1;break;}                
  97.     }
  98. }
  99.  
  100. int fel1(int x,int y)
  101. {
  102.     c=0;
  103.     int i=0,j=0,flag=1;
  104.     for(i=x+1,j=y+1 ; i<8 && j<8 ; i++,j++)
  105.     {
  106.         switch(A[i][j])
  107.         {
  108.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  109.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  110.             default: flag=0;break;
  111.         }
  112.         if(flag==0)
  113.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  114.     }
  115.     for(i=x+1,j=y-1 ; i<8 && j>-1 ; i++,j--)
  116.     {
  117.         switch(A[i][j])
  118.         {
  119.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  120.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  121.             default: flag=0;break;
  122.         }
  123.         if(flag==0)
  124.             {flag=1;break;}        
  125.     }
  126.     for(i=x-1,j=y-1 ; i>-1 && j>-1 ; i--,j--)
  127.     {
  128.         switch(A[i][j])
  129.         {
  130.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  131.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  132.             default: flag=0;break;
  133.         }
  134.         if(flag==0)
  135.             {flag=1;break;}        
  136.     }
  137.     for(i=x-1,j=y+1 ; i>-1 && j<8 ; i--,j++)
  138.     {
  139.         switch(A[i][j])
  140.         {
  141.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  142.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  143.             default: flag=0;break;
  144.         }
  145.         if(flag==0)
  146.             {flag=1;break;}        
  147.     }
  148. }
  149.  
  150. int wazer1(int x,int y)
  151. {
  152.     c=0;
  153.     int i=0,j=0,flag=1;
  154.     for(i=x+1;i<8;i++)
  155.     {
  156.         switch(A[i][y])
  157.         {
  158.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  159.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  160.             default: flag=0;break;
  161.         }
  162.         if(flag==0)
  163.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  164.     }
  165.     for(i=x-1;i>-1;i--)
  166.     {
  167.         switch(A[i][y])
  168.         {
  169.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  170.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  171.             default: flag=0;break;
  172.         }
  173.         if(flag==0)
  174.             {flag=1;break;}
  175.     }
  176.     for(i=y+1;i<8;i++)
  177.     {
  178.         switch(A[x][i])
  179.         {
  180.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  181.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  182.             default: flag=0;break;
  183.         }
  184.         if(flag==0)
  185.             {flag=1;break;}                
  186.     }
  187.     for(i=y-1;i>-1;i--)
  188.     {
  189.         switch(A[x][i])
  190.         {
  191.         case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  192.         case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  193.         default: flag=0;break;
  194.         }
  195.         if(flag==0)
  196.             {flag=1;break;}                
  197.     }
  198.     for(i=x+1,j=y+1 ; i<8 && j<8 ; i++,j++)
  199.     {
  200.         switch(A[i][j])
  201.         {
  202.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  203.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  204.             default: flag=0;break;
  205.         }
  206.         if(flag==0)
  207.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  208.     }
  209.     for(i=x+1,j=y-1 ; i<8 && j>-1 ; i++,j--)
  210.     {
  211.         switch(A[i][j])
  212.         {
  213.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  214.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  215.             default: flag=0;break;
  216.         }
  217.         if(flag==0)
  218.             {flag=1;break;}        
  219.     }
  220.     for(i=x-1,j=y-1 ; i>-1 && j>-1 ; i--,j--)
  221.     {
  222.         switch(A[i][j])
  223.         {
  224.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  225.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  226.             default: flag=0;break;
  227.         }
  228.         if(flag==0)
  229.             {flag=1;break;}        
  230.     }
  231.     for(i=x-1,j=y+1 ; i>-1 && j<8 ; i--,j++)
  232.     {
  233.         switch(A[i][j])
  234.         {
  235.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  236.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  237.             default: flag=0;break;
  238.         }
  239.         if(flag==0)
  240.             {flag=1;break;}        
  241.     }
  242.        
  243. }
  244.  
  245. int hourse1(int x,int y)
  246. {
  247.     c=0;
  248.     if(x+1<8&&y+2<8)                                //bttcheck kol el-amakn elly el-7osan mmkn yro7laha mn 3'eer loop
  249.         switch(A[x+1][y+2])
  250.         {
  251.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x+1][y+2];  A[x+1][y+2]='$';   address[c]=&A[x+1][y+2]; break;
  252.            case '.': c++;  letter[c]=A[x+1][y+2];  A[x+1][y+2]='+';   address[c]=&A[x+1][y+2]; break;
  253.           default: break;
  254.         }
  255.     if(x+2<8&&y+1<8)
  256.         switch(A[x+2][y+1])
  257.         {
  258.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x+2][y+1];  A[x+2][y+1]='$';   address[c]=&A[x+2][y+1]; break;
  259.             case '.': c++;  letter[c]=A[x+2][y+1];  A[x+2][y+1]='+';   address[c]=&A[x+2][y+1]; break;
  260.             default: break;
  261.         }
  262.     if(x-1>-1&&y-2>-1)
  263.         switch(A[x-1][y-2])
  264.         {
  265.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x-1][y-2];  A[x-1][y-2]='$';   address[c]=&A[x-1][y-2]; break;
  266.             case '.': c++;  letter[c]=A[x-1][y-2];  A[x-1][y-2]='+';   address[c]=&A[x-1][y-2]; break;
  267.             default: break;
  268.         }
  269.     if(x-2>-1&&y-1>-1)
  270.         switch(A[x-2][y-1])
  271.         {
  272.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x-2][y-1];  A[x-2][y-1]='$';   address[c]=&A[x-2][y-1]; break;
  273.             case '.': c++;  letter[c]=A[x-2][y-1];  A[x-2][y-1]='+';   address[c]=&A[x-2][y-1]; break;
  274.             default: break;
  275.         }
  276.     if(x-1>-1&&y+2<8)      
  277.         switch(A[x-1][y+2])
  278.         {
  279.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x-1][y+2];  A[x-1][y+2]='$';   address[c]=&A[x-1][y+2]; break;
  280.             case '.': c++;  letter[c]=A[x-1][y+2];  A[x-1][y+2]='+';   address[c]=&A[x-1][y+2]; break;
  281.             default: break;
  282.         }
  283.     if(x-2>-1&&y+1<8)
  284.         switch(A[x-2][y+1])
  285.         {
  286.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x-2][y+1];  A[x-2][y+1]='$';   address[c]=&A[x-2][y+1]; break;
  287.             case '.': c++;  letter[c]=A[x-2][y+1];  A[x-2][y+1]='+';   address[c]=&A[x-2][y+1]; break;
  288.             default: break;
  289.         }
  290.     if(x+1<8&&y-2>-1)
  291.         switch(A[x+1][y-2])
  292.         {
  293.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x+1][y-2];  A[x+1][y-2]='$';   address[c]=&A[x+1][y-2]; break;
  294.             case '.': c++;  letter[c]=A[x+1][y-2];  A[x+1][y-2]='+';   address[c]=&A[x+1][y-2]; break;
  295.             default: break;
  296.         }
  297.     if(x+2<8&&y-1>-1)
  298.         switch(A[x+2][y-1])
  299.         {
  300.             case 's':case 't':case 'h':case 'f':case 'w':case 'k':  c++;  letter[c]=A[x+2][y-1];  A[x+2][y-1]='$';   address[c]=&A[x+2][y-1]; break;
  301.             case '.': c++;  letter[c]=A[x+2][y-1];  A[x+2][y-1]='+';   address[c]=&A[x+2][y-1]; break;
  302.             default: break;
  303.         }
  304.        
  305. }
  306.  
  307. int king1(int x,int y)
  308. {
  309.     c=0;                                              //3dd el-t3'yeraat elly 7slt 34an n2dro nrg3ooha l-aslaha
  310.     if(x+1<8)
  311.         switch(A[x+1][y])
  312.         {
  313.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x+1][y];  A[x+1][y]='$';   address[c]=&A[x+1][y]; break;
  314.             case '.': c++;  letter[c]=A[x+1][y];  A[x+1][y]='+';   address[c]=&A[x+1][y];  break;
  315.             default: break;
  316.         }
  317.     if(x-1>-1)
  318.         switch(A[x-1][y])
  319.         {
  320.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x-1][y];  A[x-1][y]='$';   address[c]=&A[x-1][y]; break;
  321.             case '.': c++;  letter[c]=A[x-1][y];  A[x-1][y]='+';   address[c]=&A[x-1][y];  break;
  322.             default: break;
  323.         }
  324.     if(y+1<8)
  325.         switch(A[x][y+1])
  326.         {
  327.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x][y+1];  A[x][y+1]='$';   address[c]=&A[x][y+1]; break;
  328.             case '.': c++;  letter[c]=A[x][y+1];  A[x][y+1]='+';   address[c]=&A[x][y+1];  break;
  329.             default: break;
  330.         }
  331.     if(y-1>-1)
  332.         switch(A[x][y-1])
  333.         {
  334.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x][y-1];  A[x][y-1]='$';   address[c]=&A[x][y-1]; break;
  335.             case '.': c++;  letter[c]=A[x][y-1];  A[x][y-1]='+';   address[c]=&A[x][y-1];  break;
  336.             default: break;
  337.         }
  338.                        
  339.     if(x+1<8&&y+1<8)
  340.         switch(A[x+1][y+1])
  341.         {
  342.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x+1][y+1];  A[x+1][y+1]='$';   address[c]=&A[x+1][y+1]; break;
  343.             case '.': c++;  letter[c]=A[x+1][y+1];  A[x+1][y+1]='+';   address[c]=&A[x+1][y+1];  break;
  344.             default: break;
  345.         }
  346.     if(x-1>-1&&y-1>-1)
  347.         switch(A[x-1][y-1])
  348.         {
  349.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x-1][y-1];  A[x-1][y-1]='$';   address[c]=&A[x-1][y-1]; break;
  350.             case '.': c++;  letter[c]=A[x-1][y-1];  A[x-1][y-1]='+';   address[c]=&A[x-1][y-1];  break;
  351.             default: break;
  352.         }
  353.     if(x-1>-1&&y+1<8)
  354.         switch(A[x-1][y+1])
  355.         {
  356.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x-1][y+1];  A[x-1][y+1]='$';   address[c]=&A[x-1][y+1]; break;
  357.             case '.': c++;  letter[c]=A[x-1][y+1];  A[x-1][y+1]='+';   address[c]=&A[x-1][y+1];  break;
  358.             default: break;
  359.         }
  360.     if(x+1<8&&y-1>-1)
  361.         switch(A[x+1][y-1])
  362.         {
  363.             case 's':case 't':case 'h':case 'f':case 'w':  c++;  letter[c]=A[x+1][y-1];  A[x+1][y-1]='$';   address[c]=&A[x+1][y-1]; break;
  364.             case '.': c++;  letter[c]=A[x+1][y-1];  A[x+1][y-1]='+';   address[c]=&A[x+1][y-1];  break;
  365.             default: break;
  366.         }
  367. }
  368.  
  369.  
  370. int soldier0(int x,int y)
  371. {
  372.     c=0;                                                                                               //3dd el-t3'yeraat elly 7slt 34an n2dro nrg3ooha l-aslaha
  373.     if(A[x-1][y]=='.'&&x-1>-1)
  374.     {
  375.         c++;
  376.         letter[c]=A[x-1][y];
  377.         A[x-1][y]='+';
  378.         address[c]=&A[x-1][y];                           //tasgeel el-address elly et3'yr f global array 34an function getnormal() t3rf trga3ha b3d el-move zy makant
  379.     }
  380.     if(A[x-2][y]=='.' && x==6 && A[x-1][y]=='+')                            // x==2 lw el-3skry lessa f mkano el-asasy
  381.     {
  382.         c++;
  383.         letter[c]=A[x-2][y];
  384.         A[x-2][y]='+';
  385.         address[c]=&A[x-2][y];
  386.                
  387.     }
  388.     if(x-1>-1 && y-1>-1)
  389.         switch(A[x-1][y-1])
  390.         {
  391.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x-1][y-1];  A[x-1][y-1]='$';   address[c]=&A[x-1][y-1];  break;
  392.         }
  393.     if(x-1>-1 && y+1<8)
  394.         switch(A[x-1][y+1])
  395.         {
  396.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x-1][y+1];  A[x-1][y+1]='$';   address[c]=&A[x-1][y+1];  break;
  397.         }
  398.        
  399. }
  400.  
  401. int tabia0(int x,int y)
  402. {
  403.     c=0;
  404.     int i=0,flag=1;
  405.     for(i=x+1;i<8;i++)
  406.     {
  407.         switch(A[i][y])
  408.         {
  409.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  410.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  411.             default: flag=0;break;
  412.         }
  413.         if(flag==0)
  414.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  415.     }
  416.     for(i=x-1;i>-1;i--)
  417.     {
  418.         switch(A[i][y])
  419.         {
  420.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  421.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  422.             default: flag=0;break;
  423.         }
  424.         if(flag==0)
  425.             {flag=1;break;}
  426.     }
  427.     for(i=y+1;i<8;i++)
  428.     {
  429.         switch(A[x][i])
  430.         {
  431.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  432.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  433.             default: flag=0;break;
  434.         }
  435.         if(flag==0)
  436.             {flag=1;break;}                
  437.     }
  438.     for(i=y-1;i>-1;i--)
  439.     {
  440.         switch(A[x][i])
  441.         {
  442.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  443.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  444.             default: flag=0;break;
  445.         }
  446.         if(flag==0)
  447.             {flag=1;break;}                
  448.     }
  449. }
  450.  
  451. int fel0(int x,int y)
  452. {
  453.     c=0;
  454.     int i=0,j=0,flag=1;
  455.     for(i=x+1,j=y+1 ; i<8 && j<8 ; i++,j++)
  456.     {
  457.         switch(A[i][j])
  458.         {
  459.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  460.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  461.             default: flag=0;break;
  462.         }
  463.         if(flag==0)
  464.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  465.     }
  466.     for(i=x+1,j=y-1 ; i<8 && j>-1 ; i++,j--)
  467.     {
  468.         switch(A[i][j])
  469.         {
  470.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  471.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  472.             default: flag=0;break;
  473.         }
  474.         if(flag==0)
  475.             {flag=1;break;}        
  476.     }
  477.     for(i=x-1,j=y-1 ; i>-1 && j>-1 ; i--,j--)
  478.     {
  479.         switch(A[i][j])
  480.         {
  481.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  482.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  483.             default: flag=0;break;
  484.         }
  485.         if(flag==0)
  486.             {flag=1;break;}        
  487.     }
  488.     for(i=x-1,j=y+1 ; i>-1 && j<8 ; i--,j++)
  489.     {
  490.         switch(A[i][j])
  491.         {
  492.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  493.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  494.             default: flag=0;break;
  495.         }
  496.         if(flag==0)
  497.             {flag=1;break;}        
  498.     }
  499. }
  500.  
  501. int wazer0(int x,int y)
  502. {
  503.     c=0;
  504.     int i=0,j=0,flag=1;
  505.     for(i=x+1;i<8;i++)
  506.     {
  507.         switch(A[i][y])
  508.         {
  509.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  510.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  511.             default: flag=0;break;
  512.         }
  513.         if(flag==0)
  514.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  515.     }
  516.     for(i=x-1;i>-1;i--)
  517.     {
  518.         switch(A[i][y])
  519.         {
  520.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][y];  A[i][y]='$';   address[c]=&A[i][y]; flag=0; break;
  521.             case '.': c++;  letter[c]=A[i][y];  A[i][y]='+';   address[c]=&A[i][y];  break;
  522.             default: flag=0;break;
  523.         }
  524.         if(flag==0)
  525.             {flag=1;break;}
  526.     }
  527.     for(i=y+1;i<8;i++)
  528.     {
  529.         switch(A[x][i])
  530.         {
  531.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  532.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  533.             default: flag=0;break;
  534.         }
  535.         if(flag==0)
  536.             {flag=1;break;}                
  537.     }
  538.     for(i=y-1;i>-1;i--)
  539.     {
  540.         switch(A[x][i])
  541.         {
  542.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x][i];  A[x][i]='$';   address[c]=&A[x][i]; flag=0; break;
  543.             case '.': c++;  letter[c]=A[x][i];  A[x][i]='+';   address[c]=&A[x][i];  break;
  544.             default: flag=0;break;
  545.         }
  546.         if(flag==0)
  547.             {flag=1;break;}                
  548.     }
  549.     for(i=x+1,j=y+1 ; i<8 && j<8 ; i++,j++)
  550.     {
  551.         switch(A[i][j])
  552.         {
  553.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  554.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  555.             default: flag=0;break;
  556.         }
  557.         if(flag==0)
  558.             {flag=1;break;}                                 //34an yw2f el-looping 3nd aa5r mkan y2dr ywsalo elly howa feh qet3a tania
  559.     }
  560.     for(i=x+1,j=y-1 ; i<8 && j>-1 ; i++,j--)
  561.     {
  562.         switch(A[i][j])
  563.         {
  564.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  565.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  566.             default: flag=0;break;
  567.         }
  568.         if(flag==0)
  569.             {flag=1;break;}        
  570.     }
  571.     for(i=x-1,j=y-1 ; i>-1 && j>-1 ; i--,j--)
  572.     {
  573.         switch(A[i][j])
  574.         {
  575.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  576.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  577.             default: flag=0;break;
  578.         }
  579.         if(flag==0)
  580.             {flag=1;break;}        
  581.     }
  582.     for(i=x-1,j=y+1 ; i>-1 && j<8 ; i--,j++)
  583.     {
  584.         switch(A[i][j])
  585.         {
  586.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[i][j];  A[i][j]='$';   address[c]=&A[i][j]; flag=0; break;
  587.             case '.': c++;  letter[c]=A[i][j];  A[i][j]='+';   address[c]=&A[i][j];  break;
  588.             default: flag=0;break;
  589.         }
  590.         if(flag==0)
  591.             {flag=1;break;}        
  592.     }
  593.        
  594. }
  595.  
  596. int hourse0(int x,int y)
  597. {
  598.     c=0;
  599.     if(x+1<8&&y+2<8)                                //bttcheck kol el-amakn elly el-7osan mmkn yro7laha mn 3'eer loop
  600.         switch(A[x+1][y+2])
  601.         {
  602.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x+1][y+2];  A[x+1][y+2]='$';   address[c]=&A[x+1][y+2]; break;
  603.             case '.': c++;  letter[c]=A[x+1][y+2];  A[x+1][y+2]='+';   address[c]=&A[x+1][y+2]; break;
  604.             default: break;
  605.         }
  606.     if(x+2<8&&y+1<8)
  607.         switch(A[x+2][y+1])
  608.         {
  609.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x+2][y+1];  A[x+2][y+1]='$';   address[c]=&A[x+2][y+1]; break;
  610.             case '.': c++;  letter[c]=A[x+2][y+1];  A[x+2][y+1]='+';   address[c]=&A[x+2][y+1]; break;
  611.             default: break;
  612.         }
  613.     if(x-1>-1&&y-2>-1)
  614.         switch(A[x-1][y-2])
  615.         {
  616.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x-1][y-2];  A[x-1][y-2]='$';   address[c]=&A[x-1][y-2]; break;
  617.             case '.': c++;  letter[c]=A[x-1][y-2];  A[x-1][y-2]='+';   address[c]=&A[x-1][y-2]; break;
  618.             default: break;
  619.         }
  620.     if(x-2>-1&&y-1>-1)
  621.         switch(A[x-2][y-1])
  622.         {
  623.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x-2][y-1];  A[x-2][y-1]='$';   address[c]=&A[x-2][y-1]; break;
  624.             case '.': c++;  letter[c]=A[x-2][y-1];  A[x-2][y-1]='+';   address[c]=&A[x-2][y-1]; break;
  625.             default: break;
  626.         }
  627.     if(x-1>-1&&y+2<8)      
  628.         switch(A[x-1][y+2])
  629.         {
  630.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x-1][y+2];  A[x-1][y+2]='$';   address[c]=&A[x-1][y+2]; break;
  631.             case '.': c++;  letter[c]=A[x-1][y+2];  A[x-1][y+2]='+';   address[c]=&A[x-1][y+2]; break;
  632.             default: break;
  633.         }
  634.     if(x-2>-1&&y+1<8)
  635.         switch(A[x-2][y+1])
  636.         {
  637.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x-2][y+1];  A[x-2][y+1]='$';   address[c]=&A[x-2][y+1]; break;
  638.             case '.': c++;  letter[c]=A[x-2][y+1];  A[x-2][y+1]='+';   address[c]=&A[x-2][y+1]; break;
  639.             default: break;
  640.         }
  641.     if(x+1<8&&y-2>-1)
  642.         switch(A[x+1][y-2])
  643.         {
  644.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x+1][y-2];  A[x+1][y-2]='$';   address[c]=&A[x+1][y-2]; break;
  645.             case '.': c++;  letter[c]=A[x+1][y-2];  A[x+1][y-2]='+';   address[c]=&A[x+1][y-2]; break;
  646.             default: break;
  647.         }
  648.     if(x+2<8&&y-1>-1)
  649.         switch(A[x+2][y-1])
  650.         {
  651.             case 'S':case 'T':case 'H':case 'F':case 'W':case 'K':  c++;  letter[c]=A[x+2][y-1];  A[x+2][y-1]='$';   address[c]=&A[x+2][y-1]; break;
  652.             case '.': c++;  letter[c]=A[x+2][y-1];  A[x+2][y-1]='+';   address[c]=&A[x+2][y-1]; break;
  653.             default: break;
  654.         }
  655.        
  656. }
  657.  
  658. int king0(int x,int y)
  659. {
  660.     c=0;                                                                                                       //3dd el-t3'yeraat elly 7slt 34an n2dro nrg3ooha l-aslaha
  661.     if(x+1<8)
  662.         switch(A[x+1][y])
  663.         {
  664.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x+1][y];  A[x+1][y]='$';   address[c]=&A[x+1][y]; break;
  665.             case '.': c++;  letter[c]=A[x+1][y];  A[x+1][y]='+';   address[c]=&A[x+1][y];  break;
  666.             default: break;
  667.         }
  668.     if(x-1>-1)
  669.         switch(A[x-1][y])
  670.         {
  671.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x-1][y];  A[x-1][y]='$';   address[c]=&A[x-1][y]; break;
  672.             case '.': c++;  letter[c]=A[x-1][y];  A[x-1][y]='+';   address[c]=&A[x-1][y];  break;
  673.             default: break;
  674.         }
  675.     if(y+1<8)
  676.         switch(A[x][y+1])
  677.         {
  678.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x][y+1];  A[x][y+1]='$';   address[c]=&A[x][y+1]; break;
  679.             case '.': c++;  letter[c]=A[x][y+1];  A[x][y+1]='+';   address[c]=&A[x][y+1];  break;
  680.             default: break;
  681.         }
  682.     if(y-1>-1)
  683.         switch(A[x][y-1])
  684.         {
  685.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x][y-1];  A[x][y-1]='$';   address[c]=&A[x][y-1]; break;
  686.             case '.': c++;  letter[c]=A[x][y-1];  A[x][y-1]='+';   address[c]=&A[x][y-1];  break;
  687.             default: break;
  688.         }
  689.                        
  690.     if(x+1<8&&y+1<8)
  691.         switch(A[x+1][y+1])
  692.         {
  693.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x+1][y+1];  A[x+1][y+1]='$';   address[c]=&A[x+1][y+1]; break;
  694.             case '.': c++;  letter[c]=A[x+1][y+1];  A[x+1][y+1]='+';   address[c]=&A[x+1][y+1];  break;
  695.             default: break;
  696.         }
  697.     if(x-1>-1&&y-1>-1)
  698.         switch(A[x-1][y-1])
  699.         {
  700.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x-1][y-1];  A[x-1][y-1]='$';   address[c]=&A[x-1][y-1]; break;
  701.             case '.': c++;  letter[c]=A[x-1][y-1];  A[x-1][y-1]='+';   address[c]=&A[x-1][y-1];  break;
  702.             default: break;
  703.         }
  704.     if(x-1>-1&&y+1<8)
  705.         switch(A[x-1][y+1])
  706.         {
  707.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x-1][y+1];  A[x-1][y+1]='$';   address[c]=&A[x-1][y+1]; break;
  708.             case '.': c++;  letter[c]=A[x-1][y+1];  A[x-1][y+1]='+';   address[c]=&A[x-1][y+1];  break;
  709.             default: break;
  710.         }
  711.     if(x+1<8&&y-1>-1)
  712.         switch(A[x+1][y-1])
  713.         {
  714.             case 'S':case 'T':case 'H':case 'F':case 'W':  c++;  letter[c]=A[x+1][y-1];  A[x+1][y-1]='$';   address[c]=&A[x+1][y-1]; break;
  715.             case '.': c++;  letter[c]=A[x+1][y-1];  A[x+1][y-1]='+';   address[c]=&A[x+1][y-1];  break;
  716.             default: break;
  717.         }
  718. }
  719.  
  720.  
  721. int getnormal_befor()
  722. {
  723.     int x;
  724.     for(x=1;x<=c;x++)
  725.         *address[x]=letter[x];
  726. }
  727.  
  728.  
  729. int getnormal_after()  
  730. {
  731.     int x;
  732.     for(x=1;x<=c;x++)
  733.         if(address[x]!=Ptr)                                              // 34an el-qet3a elly 7rknaha matrg34 '.'
  734.         {
  735.             *address[x]=letter[x];
  736.         }
  737. }
  738.  
  739.  
  740.  
  741. int status()
  742. {
  743.     size_t x,y;
  744.     for(x=0;x<8;x++)
  745.     {
  746.         printf("\t%d",x);
  747.     }
  748.     puts("\n\t----------------------------------------------------------");
  749.     for(x=0;x<8;x++)
  750.     {
  751.         printf("%d||",x);
  752.         for(y=0;y<8;y++)
  753.             printf("\t%c",A[x][y]);
  754.         puts("\n\n");
  755.     }
  756.     puts("\n\n\n\n\n");
  757. }
  758.  
  759. int tybecheck1(int x,int y)
  760. {
  761.     switch(A[x][y])
  762.     {
  763.         case 'S':soldier1(x,y);break;            //el-functions elly bttcheck el-amakn el-mota7a ll-7raka
  764.         case 'T':tabia1(x,y);break;
  765.         case 'H':hourse1(x,y);break;
  766.         case 'F':fel1(x,y);break;
  767.         case 'W':wazer1(x,y);break;
  768.         case 'K':king1(x,y);break;
  769.         default :puts("WRONG ENTERY");return 123;
  770.                
  771.     }
  772.     if(c==0)
  773.         {puts("No MOVES AVAILABLE");return 123;}
  774. }
  775.  
  776. int tybecheck0(int x,int y)
  777. {
  778.     switch(A[x][y])
  779.     {
  780.         case 's':soldier0(x,y);break;            //el-functions elly bttcheck el-amakn el-mota7a ll-7raka
  781.         case 't':tabia0(x,y);break;
  782.         case 'h':hourse0(x,y);break;
  783.         case 'f':fel0(x,y);break;
  784.         case 'w':wazer0(x,y);break;
  785.         case 'k':king0(x,y);break;
  786.         default :puts("WRONG ENTERY");return 123;
  787.     }
  788.     if(c==0)
  789.         {puts("No MOVES AVAILABLE");return 123;}
  790. }
  791.  
  792.  int check_K()
  793. {
  794.     int x,y,flag=1;
  795.     for(x=0;x<8;x++)
  796.         for(y=0;y<8;y++)
  797.         {
  798.             switch(A[x][y])
  799.             {
  800.                 case 's':soldier0(x,y);
  801.                         if(*KPtr=='$')
  802.                             flag=0;          
  803.                             getnormal_befor();break;
  804.                 case 't':tabia0(x,y);              
  805.                         if(*KPtr=='$')
  806.                             flag=0;
  807.                             getnormal_befor();break;
  808.                 case 'h':hourse0(x,y);
  809.                         if(*KPtr=='$')
  810.                             flag=0;
  811.                             getnormal_befor();break;
  812.                 case 'f':fel0(x,y);
  813.                         if(*KPtr=='$')
  814.                             flag=0;
  815.                             getnormal_befor();break;
  816.                 case 'w':wazer0(x,y);
  817.                         if(*KPtr=='$')
  818.                             flag=0;
  819.                             getnormal_befor();break;
  820.             }
  821.             if(flag==0)
  822.                 return 123;
  823.         }
  824. }
  825.  
  826. int check_k()
  827. {
  828.     int x,y,flag=1;
  829.     for(x=0;x<8;x++)
  830.         for(y=0;y<8;y++)
  831.         {
  832.             switch(A[x][y])
  833.             {
  834.                 case 'S':soldier1(x,y);
  835.                         if(*kPtr=='$')
  836.                             flag=0;
  837.                             getnormal_befor();break;
  838.                 case 'T':tabia1(x,y);
  839.                         if(*kPtr=='$')
  840.                             flag=0;
  841.                             getnormal_befor();break;
  842.                 case 'H':hourse1(x,y);
  843.                         if(*kPtr=='$')
  844.                             flag=0;
  845.                             getnormal_befor();break;
  846.                 case 'F':fel1(x,y);
  847.                         if(*kPtr=='$')
  848.                             flag=0;
  849.                             getnormal_befor();break;
  850.                 case 'W':wazer1(x,y);
  851.                         if(*kPtr=='$')
  852.                             flag=0;
  853.                             getnormal_befor();break;
  854.             }
  855.             if(flag==0)
  856.                 return 123;
  857.         }
  858. }
  859.  
  860. move(int x,int y,int m,int n)
  861. {
  862.     if((A[m][n]=='$'||A[m][n]=='+')&&m<8&&m>-1&&n<8&&n>-1)
  863.     {
  864.         A[m][n]=A[x][y];
  865.         A[x][y]='.';
  866.         Ptr=&A[m][n];
  867.         value=A[m][n];                                                      //bysgl 3nwan el-qet3a elly 7rknaha 34an nstsneeha mn getnormal()
  868.         if(A[m][n]=='K')
  869.             KPtr=&A[m][n];
  870.         if(A[m][n]=='k')
  871.             kPtr=&A[m][n];
  872.         return 0;
  873.     }
  874.     else
  875.         {puts("WRONG MOVE");return 123;}
  876. }
  877.  
  878.  
  879.  
  880. int main()
  881. {
  882.     int door,i;
  883.     int x,y,m,n;
  884.     for(door=1;;door++)                     //loop bt7sb meen elly 3aleh el-le3b >>el-capital= 1 wel-small=0;
  885.     {
  886.         if(door%2==1)
  887.         {
  888.             puts(">>>Team Capital letters");
  889.             if(check_K()==123)
  890.                 puts("ATTENTION! King under threat");
  891.             back1:
  892.             status();
  893.             scanf("%d %d",&x,&y);          //el-index bta3 el-qet3a elly hatt7rk
  894.             if(tybecheck1(x,y)==123)      //de bttcheck el-noo3 bta3 el-qet3a w btcall function bt7ot 3ala amakn el-7rka el-mota7a '-' w '+'
  895.                 goto back1;
  896.             status();                                       //function btprint el-le3ba
  897.                        
  898.             scanf("%d %d",&m,&n);            //el-index elly hatt7rklo
  899.             getnormal_befor();
  900.             value_n=A[m][n];
  901.             tybecheck1(x,y);
  902.             if(move(x,y,m,n)==123)                          //bttcheck el-mkan da feh '-' aw '+' wla l2 w b3den bt3ml el-move
  903.             {      
  904.                 getnormal_befor();
  905.                 goto back1;    
  906.             }
  907.             getnormal_befor();
  908.             A[m][n]=value;
  909.             A[x][y]='.';
  910.             if(check_K()==123)
  911.             {
  912.                 A[x][y]=A[m][n];
  913.                 A[m][n]=value_n;
  914.                 if(A[x][y]=='K')
  915.                     KPtr=&A[x][y];
  916.                 puts("WRONG! your King will be under threat");
  917.                 puts(">>>Team Capital letters");
  918.                 goto back1;
  919.             }
  920.                        
  921.         }
  922.         else
  923.         {
  924.         puts(">>>Team Small letters");
  925.         if(check_k()==123)
  926.             puts("ATTENTION! King under threat");
  927.         back0:
  928.         status();
  929.         scanf("%d %d",&x,&y);          //el-index bta3 el-qet3a elly hatt7rk
  930.         if(tybecheck0(x,y)==123)      //de bttcheck el-noo3 bta3 el-qet3a w btcall function bt7ot 3ala amakn el-7rka el-mota7a '-' w '+'
  931.             goto back0;
  932.         status();                                       //function btprint el-le3ba  
  933.         scanf("%d %d",&m,&n);            //el-index elly hatt7rklo
  934.         getnormal_befor();
  935.         value_n=A[m][n];
  936.         tybecheck0(x,y);
  937.         if(move(x,y,m,n)==123)                          //bttcheck el-mkan da feh '-' aw '+' wla l2 w b3den bt3ml el-move
  938.         {      
  939.             getnormal_befor();
  940.             goto back0;    
  941.                                
  942.         }
  943.             getnormal_befor();
  944.             A[m][n]=value;
  945.             A[x][y]='.';
  946.             if(check_k()==123)
  947.             {
  948.                 A[x][y]=A[m][n];
  949.                 A[m][n]=value_n;
  950.                 if(A[x][y]=='k')
  951.                     kPtr=&A[x][y];
  952.                 puts("WRONG! your King will be under threat");
  953.                 puts(">>>Team Small letters");
  954.                 goto back0;
  955.             }
  956.         }
  957.                
  958.     }
  959. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement