#include "seabattle.h" int sheeps(int pole[10][10]) { int i,j,f,k,r; int rand_chislo, rand_chislo1, ts,s; srand(time(NULL)); for (i=0;i<10;i++) for (j=0;j<10;j++) pole [i][j]=0; do{ f=0; rand_chislo = 0 + rand() %10; rand_chislo1= 0 + rand() %10; ts = 1+rand()%4; if (ts==1) {for(i=0;i<3;i++) if(rand_chislo==i)f=1;} if (ts==2) {for(i=7;i<10;i++) if(rand_chislo==i)f=1;} if (ts==3) {for(i=0;i<3;i++) if(rand_chislo1==i)f=1;} if (ts==4) {for(i=7;i<10;i++) if(rand_chislo1==i)f=1;} } while (f==1); switch (ts){ case 1: pole[rand_chislo][rand_chislo1]=1; pole[rand_chislo-1][rand_chislo1]=1; pole[rand_chislo-2][rand_chislo1]=1;pole[rand_chislo-3][rand_chislo1]=1; break; case 2: pole[rand_chislo][rand_chislo1]=1; pole[rand_chislo+1][rand_chislo1]=1; pole[rand_chislo+2][rand_chislo1]=1;pole[rand_chislo+3][rand_chislo1]=1; break; case 3: pole[rand_chislo][rand_chislo1]=1; pole[rand_chislo][rand_chislo1-1]=1; pole[rand_chislo][rand_chislo1-2]=1;pole[rand_chislo][rand_chislo1-3]=1;break; case 4: pole[rand_chislo][rand_chislo1]=1; pole[rand_chislo][rand_chislo1+1]=1; pole[rand_chislo][rand_chislo1+2]=1;pole[rand_chislo][rand_chislo1+3]=1; break; } for (k=0;k<3;k++) { do{ f=0; rand_chislo = 0 + rand() %10; rand_chislo1= 0 + rand() %10; ts = 1+rand()%4; if (ts==1) {if(rand_chislo!=0){ for (i=rand_chislo-2;i0){if(mypole[i-1][j]==1){h=1;mypole[i-1][j]=5;GotoXY(28,16);SetColor(15,0);printf (Rus("Попал!"));Sleep(1000); printf ("\x07"); for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} GotoXY(x,y+1);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3:SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} }}} if(i<9){if(mypole[i+1][j]==1){h=1;mypole[i+1][j]=5;GotoXY(28,16);SetColor(15,0);printf (Rus("Попал!"));Sleep(1000); printf ("\x07"); for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} GotoXY(x,y+1);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3:SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} }}} if(j>0){if(mypole[i][j-1]==1){h=1;mypole[i][j-1]=5;GotoXY(28,16);SetColor(15,0);printf (Rus("Попал!"));Sleep(1000); printf ("\x07"); for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} GotoXY(x,y+1);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3:SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} }}} if(j<9){if(mypole[i][j+1]==1){h=1;mypole[i][j+1]=5;GotoXY(28,16);SetColor(15,0);printf (Rus("Попал!"));Sleep(1000); printf ("\x07"); for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} GotoXY(x,y+1);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3:SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} }}} } } for (i=0;i<10;i++) for (j=0;j<10;j++) { h=0; if(mypole[i][j]==5) { if(i>0){if(mypole[i-1][j]==0){h=1;mypole[i-1][j]=3;}} if(i<9){if(mypole[i+1][j]==0){h=1;mypole[i+1][j]=3;}} if(j>0){if(mypole[i][j-1]==0){h=1;mypole[i][j-1]=3;}} if(j<9){if(mypole[i][j+1]==0){h=1;mypole[i][j+1]=3;}} if(i>0&&j>0){if(mypole[i-1][j-1]==0){h=1;mypole[i-1][j-1]=3;}} if(i>0&&j<9){if(mypole[i-1][j+1]==0){h=1;mypole[i-1][j+1]=3;}} if(i<9&&j<9){if(mypole[i+1][j+1]==0){h=1;mypole[i+1][j+1]=3;}} if(i<9&&j>0){if(mypole[i+1][j-1]==0){h=1;mypole[i+1][j-1]=3;}} } } } udar=0; for(i=0;i<10;i++) for(j=0;j<10;j++) if(mypole[i][j]==4||mypole[i][j]==5) udar++; if(udar==20) {f=1;per=1;} for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} GotoXY(x,y+1);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3:SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} } if (per==0) { do{ i = 0 + rand() %10; j = 0 + rand() %10; }while(mypole[i][j]>1); if (mypole[i][j]==1){mypole[i][j]=4;ud[0]=i;ud[1]=j;GotoXY(28,16);SetColor(15,0);printf (Rus("Попал!"));hod[0]=5;Sleep(1000); printf ("\x07");f=0;} if(mypole[i][j]==0) {mypole[i][j]=3;f=1;GotoXY(28,16);SetColor(15,0);printf (Rus("Мимо!"));Sleep(1000);} } Sleep(1000); for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} GotoXY(x,y+1);switch(mypole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:SetColor(0,12);printf (" ");break; case 2:SetColor(0,7);printf (" ");break; case 3:SetColor(0,11);printf (" ");break; case 4:SetColor(0,7);printf (" ");break; case 5:SetColor(0,7);printf (" ");break;} } }while (f==0); return udar; } int player(int pole[10][10],int udar) { GotoXY(27,16);SetColor(0,0);printf (Rus(" ")); int i,j,x,y,f,e,k=0,pop,iper,jper;int vih, end; for (i=0,x=1;i<10,x<21;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if(pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} GotoXY(x,y+1);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if(pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} } x=1;y=1; i=j=0; e=x; { GotoXY(e,y); SetColor(0,14);printf (" "); GotoXY(e,y+1); SetColor(0,14);printf (" "); } do { f=0; pop=0; GotoXY(24,14); SetColor(15,0);printf (Rus(" Ходит игрок ")); int code =getch(); if (code == 224) {GotoXY(27,16);SetColor(0,0);printf (Rus(" ")); code = getch(); switch(code) { case 72: { if (y!=1) { e=x; { i=e/2; j=y/2; GotoXY(e,y);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} GotoXY(e,y+1);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} } y=y-2; e=x; { GotoXY(e,y); SetColor(0,14);printf (" "); GotoXY(e,y+1); SetColor(0,14);printf (" "); } } break; } case 77: { if (x!=19) { e=x;{ i=e/2; j=y/2; GotoXY(e,y);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} GotoXY(e,y+1);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} } x=x+2; e=x; { GotoXY(e,y); SetColor(0,14);printf (" "); GotoXY(e,y+1); SetColor(0,14);printf (" "); } } break; } case 80: { if (y!=19) { e=x;{ i=e/2; j=y/2; GotoXY(e,y);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} GotoXY(e,y+1);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} } y=y+2; e=x; { GotoXY(e,y); SetColor(0,14);printf (" "); GotoXY(e,y+1); SetColor(0,14);printf (" "); } } break; } case 75: { if (x!=1) { e=x;{ i=e/2; j=y/2; GotoXY(e,y);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} GotoXY(e,y+1);if(pole[i][j]==3){SetColor(0,11);printf (" ");}else {if (pole[i][j]==2){SetColor(0,12);printf (" ");}else {if((i+j)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}}} } x=x-2; e=x; { GotoXY(e,y); SetColor(0,14);printf (" "); GotoXY(e,y+1); SetColor(0,14);printf (" "); } } break; } }} else {switch(code) { case 13:{ int pr=f=0; pop=0; e=x; int a=y; {i=e/2; j=a/2; if (i<10&&j<10)if (pole[i][j]==2||pole[i][j]==3) pr=1; } if (pr==0) {e=x; i=e/2; j=y/2; if (pole[i][j]==0) {pole[i][j]=3;f=1;GotoXY(28,16);SetColor(15,0);printf (Rus("Мимо!"));} else {pole[i][j]=2; printf ("\x07");GotoXY(27,16);SetColor(15,0);printf (Rus("Попал!"));pop=1;udar++;}} break; } case 27: { f=1; GotoXY(24,14); SetColor(15,0);printf (Rus(" Выйти? ")); GotoXY(24,16);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("да"));SetColor(15,0);printf ("] "); GotoXY(31,16);SetColor(15,0);printf (" ["); printf (Rus("нет"));SetColor(15,0);printf ("]"); do {k=0;vih=0; int code =getch(); if (code == 224) { code = getch(); switch(code) { case 75: {f=f*(-1); if (f==1){GotoXY(24,16);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("да"));SetColor(15,0);printf ("] "); GotoXY(31,16);SetColor(15,0);printf (" ["); printf (Rus("нет"));SetColor(15,0);printf ("]");} else{ GotoXY(24,16);SetColor(15,0);printf ("["); printf (Rus("да"));printf ("] "); GotoXY(31,16);SetColor(15,0);printf (" [");SetColor(0,2);printf (Rus("нет"));SetColor(15,0);printf ("]");} break;} case 77: {f=f*(-1); if (f==1){GotoXY(24,16);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("да"));SetColor(15,0);printf ("] "); GotoXY(31,16);SetColor(15,0);printf (" ["); printf (Rus("нет"));SetColor(15,0);printf ("]");} else{ GotoXY(24,16);SetColor(15,0);printf ("["); printf (Rus("да"));printf ("] "); GotoXY(31,16);SetColor(15,0);printf (" [");SetColor(0,2);printf (Rus("нет"));SetColor(15,0);printf ("]");} break;} } } else {switch(code) { case 13:{GotoXY(24,14); SetColor(0,0);printf (Rus(" ")); GotoXY(24,16);printf (" "); if(f==1) k=1; vih=1; break;} } } } while (vih==0); break;} } int mas[20][2], flag,sh=0, a,b; for(i=0;i<10;i++) for(j=0;j<10;j++) { if(pole[i][j]==1) { if(i>0)if(pole[i-1][j]==2){mas[sh][0]=i-1;mas[sh][1]=j; sh++; if(i>1)if(pole[i-2][j]==2){mas[sh][0]=i-2;mas[sh][1]=j;sh++; if(i>2)if(pole[i-3][j]==2){mas[sh][0]=i-3;mas[sh][1]=j; sh++;}}} if(i<9)if(pole[i+1][j]==2){mas[sh][0]=i+1;mas[sh][1]=j; sh++; if(i<8)if(pole[i+2][j]==2){mas[sh][0]=i+2;mas[sh][1]=j;sh++; if(i<7)if(pole[i+3][j]==2){mas[sh][0]=i+3;mas[sh][1]=j; sh++;}}} if(j>0)if(pole[i][j-1]==2){mas[sh][0]=i;mas[sh][1]=j-1; sh++; if(j>1)if(pole[i][j-2]==2){mas[sh][0]=i;mas[sh][1]=j-2;sh++; if(j>2)if(pole[i][j-3]==2){mas[sh][0]=i;mas[sh][1]=j-3; sh++;}}} if(j<9)if(pole[i][j+1]==2){mas[sh][0]=i;mas[sh][1]=j+1; sh++; if(i<8)if(pole[i][j+2]==2){mas[sh][0]=i;mas[sh][1]=j+2;sh++; if(i<7)if(pole[i][j+3]==2){mas[sh][0]=i;mas[sh][1]=j+3; sh++;}}} } } for(i=0;i<10;i++) for(j=0;j<10;j++) {b=0; if(pole[i][j]==2) {for(a=0;a0){if(pole[i-1][j]==0){pole[i-1][j]=3;}} if(i<9){if(pole[i+1][j]==0){pole[i+1][j]=3;}} if(j>0){if(pole[i][j-1]==0){pole[i][j-1]=3;}} if(j<9){if(pole[i][j+1]==0){pole[i][j+1]=3;}} if(i>0&&j>0){if(pole[i-1][j-1]==0){pole[i-1][j-1]=3;}} if(i>0&&j<9){if(pole[i-1][j+1]==0){pole[i-1][j+1]=3;}} if(i<9&&j<9){if(pole[i+1][j+1]==0){pole[i+1][j+1]=3;}} if(i<9&&j>0){if(pole[i+1][j-1]==0){pole[i+1][j-1]=3;}} } } } iper=x;jper=y; GotoXY(e,y); SetColor(0,14);printf (" "); GotoXY(e,y+1); SetColor(0,14);printf (" "); for (i=0,x=1;i<10,x<21;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);switch(pole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 2:SetColor(0,12);printf (" ");break; case 3: SetColor(0,11);printf (" ");break; } GotoXY(x,y+1);switch(pole[i][j]){ case 0:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 1:if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}break; case 2:SetColor(0,12);printf (" ");break; case 3: SetColor(0,11);printf (" ");break;} } x=iper;y=jper; udar=0; for(i=0;i<10;i++) for(j=0;j<10;j++) if(pole[i][j]==2||pole[i][j]==2) udar++; end=0; if(udar==20) {f=1;pop=0;} if (k==1) { udar=-1; f=1;} } GotoXY(20,20); printf("%d",udar); }while((f!=1||pop!=0)); return udar; } int main() { int pole[10][10],mypole[10][10],x,y,ui,ud[2],hod[1]; int i,j,m,k; keybd_event(VK_MENU,0x38,0,0); //press ALT keybd_event(VK_RETURN,0x1c,0,0); //press ENTER keybd_event(VK_RETURN,0x1c,KEYEVENTF_KEYUP,0); //release ENTER keybd_event(VK_MENU,0x38,KEYEVENTF_KEYUP,0); //release ALT do{m=menu();ui=0;if (m==1) {SetColor(0,0); system ("cls"); int f=1; GotoXY(30,10); SetColor(15,0);printf (Rus("Расставить корабли")); GotoXY(23,13);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("автоматически"));SetColor(15,0);printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("["); printf (Rus("вручную"));SetColor(15,0);printf ("]"); do {k=0; int code =getch(); if (code == 224) { code = getch(); switch(code) { case 75: {f=f*(-1); if (f==1){GotoXY(23,13);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("автоматически"));SetColor(15,0);printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("["); printf (Rus("вручную"));SetColor(15,0);printf ("]");} else{ GotoXY(23,13);SetColor(15,0);printf ("["); printf (Rus("автоматически"));printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("[");SetColor(0,2);printf (Rus("вручную"));SetColor(15,0);printf ("]");} break;} case 77: {f=f*(-1); if (f==1){GotoXY(23,13);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("автоматически"));SetColor(15,0);printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("["); printf (Rus("вручную"));SetColor(15,0);printf ("]");} else{ GotoXY(23,13);SetColor(15,0);printf ("["); printf (Rus("автоматически"));printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("[");SetColor(0,2);printf (Rus("вручную"));SetColor(15,0);printf ("]");} break;} } } else {switch(code) { case 13: k=1; break; } } } while (k==0); if (f==1){sheeps(mypole);} else {SetColor(0,0); //vivod(pole); ui=ras(mypole);} if (ui==0){ SetColor(0,0); system("cls"); GotoXY(30,10); SetColor(15,0); printf (Rus("Расстановка кораблей")); for (i=1;i<=100;i++) { GotoXY (62,15); SetColor(15,0);printf ("%d%%",i); if (i%2==0) {GotoXY (10+(i/2),15); SetColor(0,15);printf (" "); sheeps(pole);}Sleep(50); } SetColor(0,0); system ("cls"); f=1; GotoXY(30,10); SetColor(15,0);printf (Rus("Кто ходит первым?")); GotoXY(23,13);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("компьютер"));SetColor(15,0);printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("["); printf (Rus("игрок"));SetColor(15,0);printf ("]"); do {k=0; int code =getch(); if (code == 224) { code = getch(); switch(code) { case 75: {f=f*(-1); if (f==1){GotoXY(23,13);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("компьютер"));SetColor(15,0);printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("["); printf (Rus("игрок"));SetColor(15,0);printf ("]");} else{ GotoXY(23,13);SetColor(15,0);printf ("["); printf (Rus("компьютер"));printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("[");SetColor(0,2);printf (Rus("игрок"));SetColor(15,0);printf ("]");} break;} case 77: {f=f*(-1); if (f==1){GotoXY(23,13);SetColor(15,0);printf ("[");SetColor(0,2); printf (Rus("компьютер"));SetColor(15,0);printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("["); printf (Rus("игрок"));SetColor(15,0);printf ("]");} else{ GotoXY(23,13);SetColor(15,0);printf ("["); printf (Rus("компьютер"));printf ("]"); GotoXY(43,13);SetColor(15,0);printf ("[");SetColor(0,2);printf (Rus("игрок"));SetColor(15,0);printf ("]");} break;} } } else {switch(code) { case 13: k=1; break; } } } while (k==0); int chislocomp=0,chislomy=0; SetColor(15,0); system("cls"); printf("\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xBB\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xba"); printf("\t\t ");printf("\xba\n"); printf("\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xBC\n"); GotoXY(40,0);printf("\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xBB\n"); GotoXY(40,1);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,2);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,3);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,4);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,5);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,6);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,7);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,8);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,9);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,10);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,11);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,12);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,13);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,14);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,15);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,16);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,17);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,18);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,19);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,20);printf("\xba"); printf("\t\t ");printf("\xba\n"); GotoXY(40,21);printf("\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xBC\n"); for (i=0,x=1;i<10,x<21;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y); if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");} GotoXY(x,y+1); if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");} } for (i=0,x=41;i<10,x<61;i++,x=x+2) for (j=0,y=1;j<10,y<21;j++,y=y+2) { GotoXY(x,y);if(mypole[i][j]==1){SetColor(0,12);printf (" ");}else {if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}} GotoXY(x,y+1);if(mypole[i][j]==1){SetColor(0,12);printf (" ");}else {if((j+i)%2!=0) {SetColor(0,1);printf (" ");} else{SetColor(0,9);printf (" ");}} } GotoXY(25,8);SetColor(15,0);printf (Rus("принять-enter")); GotoXY(22,9);SetColor(15,0);printf (Rus("управление-стрелки")); GotoXY(26,10);SetColor(15,0);printf (Rus("Выход-Esc")); GotoXY(24,12);SetColor(15,0);printf (Rus("окно сообщений")); GotoXY(23,13);printf("\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xBB\n"); GotoXY(23,14);printf("\xba"); printf("\t ");printf("\xba\n"); GotoXY(23,15);printf("\xba"); printf("\t ");printf("\xba\n"); GotoXY(23,16);printf("\xba"); printf("\t ");printf("\xba\n"); GotoXY(23,17);printf("\xba"); printf("\t ");printf("\xba\n"); GotoXY(23,18);printf("\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xBC\n"); ud[0]=-3;ud[1]=-3; while (chislocomp<20&&chislomy<20) { if(chislomy==-1){break;} if(chislocomp!=20&&chislomy!=20) { if (f==1) { chislocomp=comp(mypole,chislocomp,ud,hod); f=f*(-1); } else { chislomy=player(pole,chislomy); f=f*(-1); } } } SetColor(0,0);system("cls"); if(chislocomp==20) {GotoXY(33,14); SetColor(0,12); printf(Rus("Вы проиграли"));fflush(stdin);getch();fflush(stdin);} if(chislomy==20) {GotoXY(33,14);SetColor(0,12); printf(Rus("Вы выиграли!"));fflush(stdin);getch();fflush(stdin);} }} // vivod(mypole); }while (m==1); }