Gran código has puesto desde luego le voy a echar mi tiempo para verlo y aprenderlo puesto que he visto mientras bajaba la pantalla para darle a responder clases XD.
Aquí pongo el código que buscaba terminado, aunque me decepciona puesto que Xeracker, ya lo había echo antes y con 14 años xD.
Es para generar sudoku
Que !! bonito queda .
Haber si mañana ya termino este proyecto .
Aquí pongo el código que buscaba terminado, aunque me decepciona puesto que Xeracker, ya lo había echo antes y con 14 años xD.
Es para generar sudoku
Código (cpp) [Seleccionar]
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
int lista[10][10];
int num=0;
void Generator(){;
srand(time(0));
for(int y=1;y<10;y++){
for(int x=1;x<10;x++){
int c=0;
for(bool ok=false ;ok==false;c++){
num=0;ok=true;
while(num==0)num=rand()%10;
for(int i=x;i>0;i--)if(lista[y][i]==num)ok=false;
for(int i=y;i>0;i--)if(lista[i][x]==num)ok=false;
if((y%3==2) && (x%3==1) && ((num==lista[y-1][x+1]) || (num==lista[y-1][x+2]) ))ok=false;
if((y%3==2) && (x%3==2) && ((num==lista[y-1][x-1]) || (num==lista[y-1][x+1]) ))ok=false;
if((y%3==2) && (x%3==0) && ((num==lista[y-1][x-2]) || (num==lista[y-1][x-1]) ))ok=false;
if((y%3==0) && (x%3==1) && ((num==lista[y-2][x+1]) || (num==lista[y-2][x+2]) || (num==lista[y-1][x+1]) || (num==lista[y-1][x+2])))ok=false;
if((y%3==0) && (x%3==2) && ((num==lista[y-2][x-1]) || (num==lista[y-2][x+1]) || (num==lista[y-1][x-1]) || (num==lista[y-1][x+1])))ok=false;
if((y%3==0) && (x%3==0) && ((num==lista[y-2][x-2]) || (num==lista[y-2][x-1]) || (num==lista[y-1][x-2]) || (num==lista[y-1][x-1])))ok=false;
if(c==50){
x=1;
y=1;
}
}
lista[y][x]=num;
}
}
}
int main(int argc,char *argv[]){
Generator();
//////////////////////////////////////
//// IMPRIMIR /////////////////////////
for(int y=1;y<10;y++){
cout << "\nLine -> ";
for(int x=1;x<10;x++){
cout << lista[y][x] << "-";
}
}
return 0;
};
Que !! bonito queda .
Haber si mañana ya termino este proyecto .