Unos compañeros realizaron un código en c del juego buscaminas, necesito saber para que sirve cada ciclo, matriz y variable ya que hay algunos ciclos los cuales no entiendo su funcion.
Gracias
Código
#include <stdio.h> #include <stdlib.h> int main() { int d,c,r,con,x,y,b=0,A[10][10]={0},B[10]={0},v=3,C[10][10],a; for(x=0;x<10;x++){ for(y=0;y<10;y++){ C[x][y]=11; } } for(x=0;x<10;x++){ for(y=0;y<10;y++){ A[x][y]=0; } } switch(d){ case 1: for(c=0;c<10;c++){ A[x][y]=10; } a=90; break; case 2: for(c=0;c<20;c++){ A[x][y]=10; } a=80; break; case 3: for(c=0;c<40;c++){ A[x][y]=10; } a=60; break; } while(b!=3&&a!=0){ con=0; if(A[x][y]==10){ v=v-1; b++; for(r=0;r<10;r++){ for(c=0;c<10;c++){ if(x==r&&y==c){ } else{ if(C[r][c]==11){ } else{ } } } } } else{ switch(y){ case 0: if(x==0){ B[0]=A[x][y+1]; B[1]=A[x+1][y]; B[2]=A[x+1][y+1]; for(c=0;c<3;c++){ if(B[c]==10){ con++; } } } else{ if(x==9){ B[0]=A[x][y+1]; B[1]=A[x-1][y]; B[2]=A[x-1][y+1]; for(c=0;c<3;c++){ if(B[c]==10){ con++; } } } else{ B[0]=A[x][y+1]; B[1]=A[x-1][y]; B[2]=A[x-1][y+1]; B[3]=A[x+1][y]; B[4]=A[x+1][y+1]; for(c=0;c<5;c++){ if(B[c]==10){ con++; } } } } break; case 9: if(x==0){ B[0]=A[x][y-1]; B[1]=A[x+1][y]; B[2]=A[x+1][y-1]; for(c=0;c<3;c++){ if(B[c]==10){ con++; } } } else{ if(x==9){ B[0]=A[x][y-1]; B[1]=A[x-1][y]; B[2]=A[x-1][y-1]; for(c=0;c<3;c++){ if(B[c]==10){ con++; } } } else{ B[0]=A[x][y-1]; B[1]=A[x-1][y]; B[2]=A[x-1][y-1]; B[3]=A[x+1][y]; B[4]=A[x+1][y-1]; for(c=0;c<5;c++){ if(B[c]==10){ con++; } } } } break; default: switch(x){ case 0: B[0]=A[x][y+1]; B[1]=A[x][y-1]; B[2]=A[x+1][y]; B[3]=A[x+1][y-1]; B[4]=A[x+1][y+1]; for(c=0;c<5;c++){ if(B[c]==10){ con++; } } break; case 9: B[0]=A[x][y+1]; B[1]=A[x][y-1]; B[2]=A[x-1][y]; B[3]=A[x-1][y+1]; B[4]=A[x-1][y-1]; for(c=0;c<5;c++){ if(B[c]==10){ con++; } } break; default: B[0]=A[x-1][y-1]; B[1]=A[x-1][y]; B[2]=A[x-1][y+1]; B[3]=A[x][y-1]; B[4]=A[x][y+1]; B[5]=A[x+1][y]; B[6]=A[x+1][y-1]; B[7]=A[x+1][y+1]; for(c=0;c<8;c++){ if(B[c]==10){ con++; } } } } C[x][y]=con; for(r=0;r<10;r++){ for(c=0;c<10;c++){ if(C[r][c]==11){ } else{ } } } a=a-1; } } if(b==3){ } else{ } return 0; }