Guest User

Untitled

a guest
May 24th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.18 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int Schachbrett[8][8];
  4. int Springer(int x,int y,int num);
  5.  
  6. int main()
  7. {
  8. int x=0;
  9. int y=0;
  10.  
  11. for (x = 0; x < 8; x++)
  12.             {
  13.    
  14.                 for (y = 0; y < 8; y++)
  15.                     {
  16.                       Schachbrett[x][y] = 0;
  17.                     }
  18.             }
  19.  
  20. if (Springer(0,0,1)==1)
  21.     {
  22.     printf("Leauft Jungee\n");
  23.     for (y = 7; y >= 0; y--)
  24.             {
  25.    
  26.                 for (x = 0; x < 8; x++)
  27.                     {
  28.                       printf(" %d",Schachbrett[x][y]);
  29.                     }
  30.                 printf("\n");
  31.             }
  32.     }
  33.  
  34. else
  35.     {
  36.     printf("Kein Ergebnis\n");
  37.     }
  38. scanf("%d");
  39. }
  40.  
  41.  
  42.  
  43. int Springer(int x,int y,int num)
  44. {
  45.  
  46.         if(x<0 || x>8-1 || y<0 || y>8-1)
  47.         return 0;
  48.        
  49.         if(Schachbrett[x][y]!=0)
  50.         return 0;
  51.  
  52.         Schachbrett[x][y]=num;
  53.         if(num  == 8*8)
  54.         return 1;
  55.  
  56.         if (num<64)
  57.     {
  58.  
  59.     if(Springer(x-2, y-1,num+1) == 1) return 1;
  60.     if(Springer(x-2, y+1,num+1) == 1) return 1;
  61.     if(Springer(x-1, y-2,num+1) == 1) return 1;
  62.     if(Springer(x-1, y+2,num+1) == 1) return 1;
  63.     if(Springer(x+1, y-2,num+1) == 1) return 1;
  64.     if(Springer(x+1, y+2,num+1) == 1) return 1;
  65.     if(Springer(x+2, y-1,num+1) == 1) return 1;
  66.     if(Springer(x+2, y+1,num+1) == 1) return 1;
  67.  
  68.     }
  69.         else return 1;
  70.  
  71.         Schachbrett[x][y]=0;
  72.             return 0;
  73. }
Add Comment
Please, Sign In to add comment