نمايش پست تنها
قديمي ۰۹-۱۹-۱۳۸۹, ۰۴:۲۱ بعد از ظهر   #23 (لینک دائم)
Astaraki Female
Administrator
 
آواتار Astaraki
 
تاريخ عضويت: خرداد ۱۳۸۷
محل سكونت: تهران-کرج!
پست ها: 3,465
تشكرها: 754
16,337 تشكر در 3,127 پست
My Mood: Mehrabon
ارسال پيغام Yahoo به Astaraki
Wink

سورس 8 وزیر

كد:
 
#include <iostream.h>
#include<conio.h>

int test( int i , int j );
int board[8][8] = { 0 };
int main()
{
 for ( int a = 0 ; a < 8 ; a++ )
  if(test( 0 , a ))
   for ( int b = 0 ; b < 8 ; b++ )
    if(test( 1 , b ))
     for ( int c = 0 ; c < 8 ; c++ )
      if(test( 2 , c ))
       for ( int d = 0 ; d < 8 ; d++ )
        if(test( 3 , d ))
         for ( int e = 0 ; e < 8 ; e++ )
          if(test( 4 , e ))
           for ( int f = 0 ; f < 8 ; f++ )
            if(test( 5 , f ))
             for ( int g = 0 ; g < 8 ; g++ )
              if(test( 6 , g ))
               for ( int h = 0 ; h < 8 ; h++ )
                if(test( 7 , h )) {
                 for ( int m = 0 ; m < 8 ; m++ ) {
                  for ( int n = 0 ; n < 8 ; n++ )
                   cout << board[m][n] << " ";
                  cout << endl;
                 }
                 cout << endl; 
                 getch();
                }
 cout << endl;
 return 0;
}
int test( int i , int j )
{
 for ( int a = 0 ; a < 8 ; a++ )
  board[i][a] = 0;
 for ( int b = 1 ; b < 8 ; b++ )
  if ( i - b >= 0 ) {
   if ( board[i - b][j] != 0 )
    return 0;
   if ( j - b >= 0 )
    if ( board[i - b][j - b] != 0 )
     return 0;
   if ( j + b <= 7 )
    if ( board[i - b][j + b] != 0 )
     return 0;
  }
 board[i][j] = 1;
 return 1;
}
Astaraki آفلاين است   پاسخ با نقل قول
از Astaraki تشكر كرده اند:
hamidialison (۰۸-۲۹-۱۳۹۲), Musketeer (۰۹-۲۴-۱۳۹۰)