ha_60
بنيانگذار سايت
ارسالها: 4,637
موضوعها: 216
تاریخ عضویت: آبان ۱۳۸۳
تشکرها : 560
( 6556 تشکر در 2385 ارسال )
بازی دوز ( 13 قطار ) با ++TURBO C ( یک و دونفره )
بازی دوز با زبان C
یه برنامه کوچولو برای مبتدی ها و یا یک پروژه برای درس برنامه نویسی به زبان C . ( رشته های غیر کامیپوتری )
فایل های اجرایی موجود نیز توسط برنامه Turbo C++ 4.5 Win کامپایل شده است . ( البته شما با تحت DOS هم می تونید کامپایلش کنید )
برنامه ( قسمت یک نفره ) درکل دارای دو قسمت است :
در قسمت اول که فقط مهره ها را قرار می دهیم ( فقط مهره را اضافه می کنیم و هیچ گونه جابجایی صورت نمی گیرد . )
چون در کل 6 عدد مهره داریم پس این قسمت از برنامه در کل 6 بار اجرا می شود .
توابع زیر مربوط به قسمت اول است :
کد php:
void get_kbd1 ( int a [ 3 ][ 3 ]); void move_rnd ( int a [ 3 ][ 3 ]); void move_2 ( int a [ 3 ][ 3 ]);
در قسمت دوم جای مهره ها عوض می شود و این عمل تا زمان پیروزی یکی از طرفین ادامه می یابد .
توابع زیر مربوط به قسمت دوم است :
کد php:
void move_4 ( int a [ 3 ][ 3 ]); void move_random ( int a [ 3 ][ 3 ]); void move_clear ( int a [ 3 ][ 3 ]); void get_kbd3 ( int a [ 3 ][ 3 ]);
توابع زیر نیز در هر دو قسمت برنامه به صورت مشترک استفاده شده است :
برای نمایش اطلاعات و تست پیروزی و یا باخت .
کد php:
void show_game ( int a [ 3 ][ 3 ]); void test_win ( int a [ 3 ][ 3 ], int *);
و اینم اصل برنامه یه نفره :
کد php:
#include <stdio.h> #include <string.h> #include <conio.h> #include <stdlib.h> void show_game ( int a [ 3 ][ 3 ]); void get_kbd1 ( int a [ 3 ][ 3 ]); void move_rnd ( int a [ 3 ][ 3 ]); void move_2 ( int a [ 3 ][ 3 ]); void move_4 ( int a [ 3 ][ 3 ]); void move_random ( int a [ 3 ][ 3 ]); void move_clear ( int a [ 3 ][ 3 ]); void test_win ( int a [ 3 ][ 3 ], int *); void get_kbd3 ( int a [ 3 ][ 3 ]); void main ( void ) { star : int a [ 3 ][ 3 ]={ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }, win = 0 ; show_game ( a ); get_kbd1 ( a ); show_game ( a ); move_rnd ( a ); show_game ( a ); get_kbd1 ( a ); show_game ( a ); move_2 ( a ); show_game ( a ); get_kbd1 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; move_2 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; do { get_kbd3 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; move_4 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; }while( 1 ); } void show_game ( int a [ 3 ][ 3 ]) { clrscr (); printf ( "\n\n A %d %d %d" , a [ 0 ][ 0 ] , a [ 0 ][ 1 ] , a [ 0 ][ 2 ]); printf ( "\n\n B %d %d %d" , a [ 1 ][ 0 ] , a [ 1 ][ 1 ] , a [ 1 ][ 2 ]); printf ( "\n\n C %d %d %d" , a [ 2 ][ 0 ] , a [ 2 ][ 1 ] , a [ 2 ][ 2 ]); printf ( "\n\n\n 1 2 3 " ); printf ( "\n\n\n\n" ); } void get_kbd1 ( int a [ 3 ][ 3 ]) { int n = 0 ; do { do { n = getch (); n -= 48 ; }while( n == 0 || 9 < n ); if( n == 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 1 ; return; } if( n == 2 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 1 ; return; } if( n == 3 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 1 ; return; } if( n == 4 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 1 ; return; } if( n == 5 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 1 ; return; } if( n == 6 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 1 ; return; } if( n == 7 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 1 ; return; } if( n == 8 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 1 ; return; } if( n == 9 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 1 ; return; } }while( 1 ); } void move_rnd ( int a [ 3 ][ 3 ]) { int i , j ; printf ( "\n\n LOADING ... " ); do { i = random ( 3 ); j = random ( 3 ); if( a [ i ][ j ]== 0 ) { a [ i ][ j ]= 2 ; return; } }while( 1 ); } void move_2 ( int a [ 3 ][ 3 ]) { if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 2 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 2 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if ( a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 2 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 2 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 2 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 2 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if ( a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 2 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 1 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 1 && a [ 0 ][ 2 ]== 1 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 2 ; return; } if( a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 1 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if( a [ 1 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 2 ; return; } if( a [ 1 ][ 0 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if( a [ 1 ][ 1 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 2 ; return; } if( a [ 2 ][ 0 ]== 1 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if( a [ 2 ][ 0 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 2 ; return; } if( a [ 2 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 2 ; return; } if( a [ 1 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 1 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 2 ; return; } if( a [ 0 ][ 1 ]== 1 && a [ 2 ][ 1 ]== 1 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if( a [ 1 ][ 1 ]== 1 && a [ 2 ][ 1 ]== 1 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 2 ; return; } if( a [ 0 ][ 2 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if( a [ 0 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 2 ; return; } if( a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if( a [ 1 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 2 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if( a [ 1 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if( a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 1 && a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if( a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if( a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 1 && a [ 0 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if( a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if( a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } if( a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if( a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } move_rnd ( a ); } void move_random ( int a [ 3 ][ 3 ]) { int i , j , m , n ; do { i = random ( 3 ); j = random ( 3 ); if( a [ i ][ j ]== 2 ) break; }while( 1 ); do { m = random ( 3 ); n = random ( 3 ); if( a [ m ][ n ]== 0 ) break; }while( 1 ); a [ i ][ j ]= 0 ; a [ m ][ n ]= 2 ; } void move_4 ( int a [ 3 ][ 3 ]) { int n ; printf ( "\n\n LOADING ..." ); if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 0 ][ 2 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 0 ][ 2 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 0 ][ 2 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 0 ][ 2 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 0 ][ 2 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 0 ][ 2 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 0 ][ 1 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 0 ][ 1 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 0 ][ 1 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 0 ][ 1 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 0 ][ 1 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 0 ][ 1 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 2 ][ 0 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 1 ][ 0 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 && a [ 0 ][ 0 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 0 ][ 0 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 2 ][ 1 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 1 ][ 1 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 0 ][ 2 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 0 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 1 ][ 2 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 1 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 0 && a [ 2 ][ 2 ]== 2 ) { a [ 1 ][ 1 ]= 2 ; a [ 2 ][ 2 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 2 ][ 2 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 0 ][ 0 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 0 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 0 ][ 1 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 0 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 1 ][ 0 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 1 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 1 ][ 1 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 1 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 2 ][ 0 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 2 ][ 0 ]= 0 ; return; } if ( a [ 0 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 2 ) { a [ 1 ][ 2 ]= 2 ; a [ 2 ][ 1 ]= 0 ; return; } if ( a [ 0 ][ 0 ]== 1 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 0 ) { move_clear ( a ); a [ 0 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 1 && a [ 0 ][ 2 ]== 1 && a [ 0 ][ 1 ]== 0 ) { move_clear ( a ); a [ 0 ][ 1 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 1 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 0 ]== 0 ) { move_clear ( a ); a [ 0 ][ 0 ]= 2 ; return; } if ( a [ 1 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 1 ][ 2 ]== 0 ) { move_clear ( a ); a [ 1 ][ 2 ]= 2 ; return; } if ( a [ 1 ][ 0 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 0 ) { move_clear ( a ); a [ 1 ][ 1 ]= 2 ; return; } if ( a [ 1 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 1 ][ 0 ]== 0 ) { move_clear ( a ); a [ 1 ][ 0 ]= 2 ; return; } if ( a [ 2 ][ 0 ]== 1 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 0 ) { move_clear ( a ); a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 2 ][ 0 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 2 ][ 1 ]== 0 ) { move_clear ( a ); a [ 2 ][ 1 ]= 2 ; return; } if ( a [ 2 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 2 ][ 0 ]== 0 ) { move_clear ( a ); a [ 2 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 0 ) { move_clear ( a ); a [ 2 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 1 ][ 0 ]== 0 ) { move_clear ( a ); a [ 1 ][ 0 ]= 2 ; return; } if ( a [ 1 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 0 ][ 0 ]== 0 ) { move_clear ( a ); a [ 0 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 1 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 1 ]== 0 ) { move_clear ( a ); a [ 2 ][ 1 ]= 2 ; return; } if ( a [ 0 ][ 1 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 0 ) { move_clear ( a ); a [ 1 ][ 1 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 0 ) { move_clear ( a ); a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 1 ][ 2 ]== 0 ) { move_clear ( a ); a [ 1 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 0 ) { move_clear ( a ); a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 0 ) { move_clear ( a ); a [ 1 ][ 1 ]= 2 ; return; } if ( a [ 1 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 && a [ 0 ][ 0 ]== 0 ) { move_clear ( a ); a [ 0 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 0 ) { move_clear ( a ); a [ 2 ][ 0 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 0 ) { move_clear ( a ); a [ 1 ][ 1 ]= 2 ; return; } if ( a [ 1 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 1 && a [ 0 ][ 2 ]== 0 ) { move_clear ( a ); a [ 0 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 0 ) { move_clear ( a ); a [ 0 ][ 2 ]= 2 ; return; } if ( a [ 0 ][ 2 ]== 0 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 0 ) { move_clear ( a ); a [ 2 ][ 2 ]= 2 ; return; } if ( a [ 2 ][ 2 ]== 0 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 1 && a [ 0 ][ 0 ]== 0 ) { move_clear ( a ); a [ 2 ][ 0 ]= 2 ; return; } if ( a [ 2 ][ 0 ]== 0 && a [ 1 ][ 0 ]== 1 && a [ 0 ][ 0 ]== 0 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 0 ) { move_clear ( a ); a [ 0 ][ 0 ]= 2 ; return; } move_random ( a ); } void move_clear ( int a [ 3 ][ 3 ]) { int i , j ; do { i = random ( 3 ); j = random ( 3 ); if( a [ i ][ j ]== 2 ) break; }while( 1 ); a [ i ][ j ]= 0 ; } void test_win ( int a [ 3 ][ 3 ], int * win ) { int f = 0 ; if( a [ 0 ][ 0 ]== 1 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 1 ) f = 1 ; if( a [ 1 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 1 ][ 2 ]== 1 ) f = 1 ; if( a [ 2 ][ 0 ]== 1 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 ) f = 1 ; if( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 1 ) f = 1 ; if( a [ 0 ][ 1 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 1 ]== 1 ) f = 1 ; if( a [ 0 ][ 2 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 1 ) f = 1 ; if( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 ) f = 1 ; if( a [ 2 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 1 ) f = 1 ; if( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 2 ) f = 2 ; if( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 2 ) f = 2 ; if( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 ) f = 2 ; if( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 ) f = 2 ; if( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 2 ) f = 2 ; if( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 ) f = 2 ; if( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 ) f = 2 ; if( a [ 2 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 2 ) f = 2 ; if( f == 1 ) printf ( "\n YOU WIN." ); if( f == 2 ) printf ( "\n YOU LOST." ); if( f ) { printf ( "\n\n GAME OVER !" ); printf ( "\n\n PRESS ANY KEY TO RESTART GAME.\n" ); getch (); * win = 1 ; } } void get_kbd3 ( int a [ 3 ][ 3 ]) { int x , i , j , m , n ; do { do { x = getch (); x -= 48 ; }while( x == 0 || 9 < x ); if( x == 1 && a [ 2 ][ 0 ]== 1 ) { printf ( "Select C1" ); i = 2 ; j = 0 ; break; } if( x == 2 && a [ 2 ][ 1 ]== 1 ) { printf ( "Select C2" ); i = 2 ; j = 1 ; break; } if( x == 3 && a [ 2 ][ 2 ]== 1 ) { printf ( "Select C3" ); i = 2 ; j = 2 ; break; } if( x == 4 && a [ 1 ][ 0 ]== 1 ) { printf ( "Select B1" ); i = 1 ; j = 0 ; break; } if( x == 5 && a [ 1 ][ 1 ]== 1 ) { printf ( "Select B2" ); i = 1 ; j = 1 ; break; } if( x == 6 && a [ 1 ][ 2 ]== 1 ) { printf ( "Select B3" ); i = 1 ; j = 2 ; break; } if( x == 7 && a [ 0 ][ 0 ]== 1 ) { printf ( "Select A1" ); i = 0 ; j = 0 ; break; } if( x == 8 && a [ 0 ][ 1 ]== 1 ) { printf ( "Select A2" ); i = 0 ; j = 1 ; break; } if( x == 9 && a [ 0 ][ 2 ]== 1 ) { printf ( "Select A3" ); i = 0 ; j = 2 ; break; } }while( 1 ); do { do { x = getch (); x -= 48 ; }while( x == 0 || 9 < x ); if( x == 1 && a [ 2 ][ 0 ]== 0 ) { m = 2 ; n = 0 ; break; } if( x == 2 && a [ 2 ][ 1 ]== 0 ) { m = 2 ; n = 1 ; break; } if( x == 3 && a [ 2 ][ 2 ]== 0 ) { m = 2 ; n = 2 ; break; } if( x == 4 && a [ 1 ][ 0 ]== 0 ) { m = 1 ; n = 0 ; break; } if( x == 5 && a [ 1 ][ 1 ]== 0 ) { m = 1 ; n = 1 ; break; } if( x == 6 && a [ 1 ][ 2 ]== 0 ) { m = 1 ; n = 2 ; break; } if( x == 7 && a [ 0 ][ 0 ]== 0 ) { m = 0 ; n = 0 ; break; } if( x == 8 && a [ 0 ][ 1 ]== 0 ) { m = 0 ; n = 1 ; break; } if( x == 9 && a [ 0 ][ 2 ]== 0 ) { m = 0 ; n = 2 ; break; } }while( 1 ); a [ m ][ n ]= 1 ; a [ i ][ j ]= 0 ; }
و اینم برنامه دونفره اش
( فرم برنامه خیلی شبیه بازی یه نفره اس ولی دیگه در اینجا خبری از هوش نیست چون کامپیوتر قرار نیست بازی کنه ) :
کد php:
#include <stdio.h> #include <string.h> #include <conio.h> #include <stdlib.h> void show_game ( int a [ 3 ][ 3 ]); void get_kbda1 ( int a [ 3 ][ 3 ]); void get_kbdb1 ( int a [ 3 ][ 3 ]); void get_kbda2 ( int a [ 3 ][ 3 ]); void get_kbdb2 ( int a [ 3 ][ 3 ]); void test_win ( int a [ 3 ][ 3 ], int *); void main ( void ) { star : int a [ 3 ][ 3 ]={ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 }, win = 0 ; show_game ( a ); get_kbda1 ( a ); show_game ( a ); get_kbdb1 ( a ); show_game ( a ); get_kbda1 ( a ); show_game ( a ); get_kbdb1 ( a ); show_game ( a ); get_kbda1 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; get_kbdb1 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; do { get_kbda2 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; get_kbdb2 ( a ); show_game ( a ); test_win ( a ,& win ); if( win ) goto star ; }while( 1 ); } void show_game ( int a [ 3 ][ 3 ]) { clrscr (); printf ( "\n\n A %d %d %d" , a [ 0 ][ 0 ] , a [ 0 ][ 1 ] , a [ 0 ][ 2 ]); printf ( "\n\n B %d %d %d" , a [ 1 ][ 0 ] , a [ 1 ][ 1 ] , a [ 1 ][ 2 ]); printf ( "\n\n C %d %d %d" , a [ 2 ][ 0 ] , a [ 2 ][ 1 ] , a [ 2 ][ 2 ]); printf ( "\n\n\n 1 2 3 " ); printf ( "\n\n\n\n" ); } void get_kbda1 ( int a [ 3 ][ 3 ]) { printf ( " MOVE PLAYER 1" ); int n = 0 ; do { do { n = getch (); n -= 48 ; }while( n == 0 || 9 < n ); if( n == 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 1 ; return; } if( n == 2 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 1 ; return; } if( n == 3 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 1 ; return; } if( n == 4 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 1 ; return; } if( n == 5 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 1 ; return; } if( n == 6 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 1 ; return; } if( n == 7 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 1 ; return; } if( n == 8 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 1 ; return; } if( n == 9 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 1 ; return; } }while( 1 ); } void get_kbdb1 ( int a [ 3 ][ 3 ]) { printf ( " MOVE PLAYER 2" ); int n = 0 ; do { do { n = getch (); n -= 48 ; }while( n == 0 || 9 < n ); if( n == 1 && a [ 2 ][ 0 ]== 0 ) { a [ 2 ][ 0 ]= 2 ; return; } if( n == 2 && a [ 2 ][ 1 ]== 0 ) { a [ 2 ][ 1 ]= 2 ; return; } if( n == 3 && a [ 2 ][ 2 ]== 0 ) { a [ 2 ][ 2 ]= 2 ; return; } if( n == 4 && a [ 1 ][ 0 ]== 0 ) { a [ 1 ][ 0 ]= 2 ; return; } if( n == 5 && a [ 1 ][ 1 ]== 0 ) { a [ 1 ][ 1 ]= 2 ; return; } if( n == 6 && a [ 1 ][ 2 ]== 0 ) { a [ 1 ][ 2 ]= 2 ; return; } if( n == 7 && a [ 0 ][ 0 ]== 0 ) { a [ 0 ][ 0 ]= 2 ; return; } if( n == 8 && a [ 0 ][ 1 ]== 0 ) { a [ 0 ][ 1 ]= 2 ; return; } if( n == 9 && a [ 0 ][ 2 ]== 0 ) { a [ 0 ][ 2 ]= 2 ; return; } }while( 1 ); } void test_win ( int a [ 3 ][ 3 ], int * win ) { int f = 0 ; if( a [ 0 ][ 0 ]== 1 && a [ 0 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 1 ) f = 1 ; if( a [ 1 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 1 ][ 2 ]== 1 ) f = 1 ; if( a [ 2 ][ 0 ]== 1 && a [ 2 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 ) f = 1 ; if( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 0 ]== 1 && a [ 2 ][ 0 ]== 1 ) f = 1 ; if( a [ 0 ][ 1 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 1 ]== 1 ) f = 1 ; if( a [ 0 ][ 2 ]== 1 && a [ 1 ][ 2 ]== 1 && a [ 2 ][ 2 ]== 1 ) f = 1 ; if( a [ 0 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 2 ][ 2 ]== 1 ) f = 1 ; if( a [ 2 ][ 0 ]== 1 && a [ 1 ][ 1 ]== 1 && a [ 0 ][ 2 ]== 1 ) f = 1 ; if( a [ 0 ][ 0 ]== 2 && a [ 0 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 2 ) f = 2 ; if( a [ 1 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 1 ][ 2 ]== 2 ) f = 2 ; if( a [ 2 ][ 0 ]== 2 && a [ 2 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 ) f = 2 ; if( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 0 ]== 2 && a [ 2 ][ 0 ]== 2 ) f = 2 ; if( a [ 0 ][ 1 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 1 ]== 2 ) f = 2 ; if( a [ 0 ][ 2 ]== 2 && a [ 1 ][ 2 ]== 2 && a [ 2 ][ 2 ]== 2 ) f = 2 ; if( a [ 0 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 2 ][ 2 ]== 2 ) f = 2 ; if( a [ 2 ][ 0 ]== 2 && a [ 1 ][ 1 ]== 2 && a [ 0 ][ 2 ]== 2 ) f = 2 ; if( f == 1 ) printf ( "\n PLAYER 1 WIN." ); if( f == 2 ) printf ( "\n PLAYER 2 WIN." ); if( f ) { printf ( "\n\n GAME OVER !" ); printf ( "\n\n PRESS ANY KEY TO RESTART GAME.\n" ); getch (); * win = 1 ; } } void get_kbda2 ( int a [ 3 ][ 3 ]) { printf ( " MOVE PLAYER 1\n\n " ); int x , i , j , m , n ; do { do { x = getch (); x -= 48 ; }while( x == 0 || 9 < x ); if( x == 1 && a [ 2 ][ 0 ]== 1 ) { printf ( "Select C1" ); i = 2 ; j = 0 ; break; } if( x == 2 && a [ 2 ][ 1 ]== 1 ) { printf ( "Select C2" ); i = 2 ; j = 1 ; break; } if( x == 3 && a [ 2 ][ 2 ]== 1 ) { printf ( "Select C3" ); i = 2 ; j = 2 ; break; } if( x == 4 && a [ 1 ][ 0 ]== 1 ) { printf ( "Select B1" ); i = 1 ; j = 0 ; break; } if( x == 5 && a [ 1 ][ 1 ]== 1 ) { printf ( "Select B2" ); i = 1 ; j = 1 ; break; } if( x == 6 && a [ 1 ][ 2 ]== 1 ) { printf ( "Select B3" ); i = 1 ; j = 2 ; break; } if( x == 7 && a [ 0 ][ 0 ]== 1 ) { printf ( "Select A1" ); i = 0 ; j = 0 ; break; } if( x == 8 && a [ 0 ][ 1 ]== 1 ) { printf ( "Select A2" ); i = 0 ; j = 1 ; break; } if( x == 9 && a [ 0 ][ 2 ]== 1 ) { printf ( "Select A3" ); i = 0 ; j = 2 ; break; } }while( 1 ); do { do { x = getch (); x -= 48 ; }while( x == 0 || 9 < x ); if( x == 1 && a [ 2 ][ 0 ]== 0 ) { m = 2 ; n = 0 ; break; } if( x == 2 && a [ 2 ][ 1 ]== 0 ) { m = 2 ; n = 1 ; break; } if( x == 3 && a [ 2 ][ 2 ]== 0 ) { m = 2 ; n = 2 ; break; } if( x == 4 && a [ 1 ][ 0 ]== 0 ) { m = 1 ; n = 0 ; break; } if( x == 5 && a [ 1 ][ 1 ]== 0 ) { m = 1 ; n = 1 ; break; } if( x == 6 && a [ 1 ][ 2 ]== 0 ) { m = 1 ; n = 2 ; break; } if( x == 7 && a [ 0 ][ 0 ]== 0 ) { m = 0 ; n = 0 ; break; } if( x == 8 && a [ 0 ][ 1 ]== 0 ) { m = 0 ; n = 1 ; break; } if( x == 9 && a [ 0 ][ 2 ]== 0 ) { m = 0 ; n = 2 ; break; } }while( 1 ); a [ m ][ n ]= 1 ; a [ i ][ j ]= 0 ; } void get_kbdb2 ( int a [ 3 ][ 3 ]) { printf ( " MOVE PLAYER 2\n\n " ); int x , i , j , m , n ; do { do { x = getch (); x -= 48 ; }while( x == 0 || 9 < x ); if( x == 1 && a [ 2 ][ 0 ]== 2 ) { printf ( "Select C1" ); i = 2 ; j = 0 ; break; } if( x == 2 && a [ 2 ][ 1 ]== 2 ) { printf ( "Select C2" ); i = 2 ; j = 1 ; break; } if( x == 3 && a [ 2 ][ 2 ]== 2 ) { printf ( "Select C3" ); i = 2 ; j = 2 ; break; } if( x == 4 && a [ 1 ][ 0 ]== 2 ) { printf ( "Select B1" ); i = 1 ; j = 0 ; break; } if( x == 5 && a [ 1 ][ 1 ]== 2 ) { printf ( "Select B2" ); i = 1 ; j = 1 ; break; } if( x == 6 && a [ 1 ][ 2 ]== 2 ) { printf ( "Select B3" ); i = 1 ; j = 2 ; break; } if( x == 7 && a [ 0 ][ 0 ]== 2 ) { printf ( "Select A1" ); i = 0 ; j = 0 ; break; } if( x == 8 && a [ 0 ][ 1 ]== 2 ) { printf ( "Select A2" ); i = 0 ; j = 1 ; break; } if( x == 9 && a [ 0 ][ 2 ]== 2 ) { printf ( "Select A3" ); i = 0 ; j = 2 ; break; } }while( 1 ); do { do { x = getch (); x -= 48 ; }while( x == 0 || 9 < x ); if( x == 1 && a [ 2 ][ 0 ]== 0 ) { m = 2 ; n = 0 ; break; } if( x == 2 && a [ 2 ][ 1 ]== 0 ) { m = 2 ; n = 1 ; break; } if( x == 3 && a [ 2 ][ 2 ]== 0 ) { m = 2 ; n = 2 ; break; } if( x == 4 && a [ 1 ][ 0 ]== 0 ) { m = 1 ; n = 0 ; break; } if( x == 5 && a [ 1 ][ 1 ]== 0 ) { m = 1 ; n = 1 ; break; } if( x == 6 && a [ 1 ][ 2 ]== 0 ) { m = 1 ; n = 2 ; break; } if( x == 7 && a [ 0 ][ 0 ]== 0 ) { m = 0 ; n = 0 ; break; } if( x == 8 && a [ 0 ][ 1 ]== 0 ) { m = 0 ; n = 1 ; break; } if( x == 9 && a [ 0 ][ 2 ]== 0 ) { m = 0 ; n = 2 ; break; } }while( 1 ); a [ m ][ n ]= 2 ; a [ i ][ j ]= 0 ; }
اصل برنامه و برنامه کامپایل شده به همراه فایل توضیحات را در پیوست دریافت کنید :
فایل(های) پیوست شده
13_GHATAR_c++_ANT.rar (اندازه: 196.07 KB / تعداد دفعات دریافت: 558)
(آخرین ویرایش در این ارسال: ۰۷-آبان-۱۳۸۹, ۲۰:۲۴:۴۴، توسط t3r!p3000 .)