Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - anonimo12121

#771
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

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 :) .
#772
haber ponlo aquí no te preocupes por el tamaño del post. Ahora mismo estoy haciendo un diseño que valga para el sudoku :) y estoy usando un método  bas de unos cuantos if que comprueba en el cuadrante que esta Y.X cada vez para que no haya ningun número similar ni el fila ni el la columna ni en el cuadrante.
#773
no ya. solo que quiero primero intentar hacer el código que busco y luego mejorarlo.
#774
Buah que pasada espero que no sea fake.
#775
no jijiji. aún así la mía esta mal. tengo que arreglarla.
#776
He generado un segundo código aun lo tengo que mejorar xD, pero no se si sabéis por donde van los tiros xDD. Se que algunos lo haríais rápido xD
Fallo 1: aveces no crea nada, por qué el numero generado sigue siempre un patrón...
Fallo 2: aveces se cuela un mismo numero en un cuadrante X(...
Código (cpp) [Seleccionar]
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
time_t tiempo;
struct tm *pt;
int semilla;
int lista[9][9];
int numero;
void Generator(){
   for(int z=0,x=0,y=0,c1=0,c2=0;y<9;z++){
       tiempo=time(NULL);
       pt=localtime(&tiempo);
       semilla=pt->tm_sec+pt->tm_yday+pt->tm_min+z;
       srand(semilla);
       numero=rand() % 10;
       for(int i=0;i<9;i++){
           if(numero!=lista[y][i]){
               c1++;
           }
       }
       if(c1==9){
           for(int i=0;i<9;i++){
               if(numero!=lista[i][x]){
                   c2++;
               }
           }
       }
       if(c1==9 && c2==9){
           lista[y][x]=numero;
           x++;
       }
       if(x==9){
           x=0;
           y++;
       }
       c1=0;
       c2=0;
   }
}
int main(int argc,char *argv[]){
   Generator();
   //////////////////////////////////////
   //// IMPRIMIR /////////////////////////
   for(int y=0;y<9;y++){
       cout << "\nLine -> ";
       for(int x=0;x<9;x++){
           cout << lista[y][x] << "-";
       }
   }
   cout << endl;
   cout << "GAME OVER";
   return 0;
};


#777
Hola compañeros de elhacker. tengo ganas de comprar me un portátil decente puesto que no tengo dinero por que no tengo ninguna fuente de ingreso, para ello os pido un pequeño favor para los que podáis que me hagáis una pequeña donación.
Os agradezco a todos los que podáis colaborar.

https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2RARBYNTCZ87S
#778
Foro Libre / Re: The Big Ban Theory
19 Marzo 2012, 23:33 PM
yo tengo hasta la quinta temporada en castellano hasta que temporada esta en inglés?
#779
Cortale la mano y luego le dices choca esos cinco, que era una broma :) BY YO
#780
sagrini en tu code se me repiten números corrigelo xD