Código de C/Visual C - Sudoku

Imágen de perfil
Val: 720
Oro
Ha mantenido su posición en C/Visual C (en relación al último mes)
Gráfica de C/Visual C

Sudokugráfica de visualizaciones


C/Visual C

estrellaestrellaestrellaestrellaestrella(2)
Actualizado el 03 de Febrero del 2019 por Adelino (Publicado el 20 de Septiembre del 2017)
6.462 visualizaciones desde el 20 de Septiembre del 2017. Una media de 84 por semana
Solucionador de sudokus.
Utilizo TurboC++
Contiene 1 sudoku de prueba.

SudokuCPP

Requerimientos

Ejecutado con TurboC++ en DosBox.

1.0

Actualizado el 21 de Septiembre del 2017 (Publicado el 20 de Septiembre del 2017)gráfica de visualizaciones de la versión: 1.0
276 visualizaciones desde el 20 de Septiembre del 2017. Una media de 7 por semana

1.1

Publicado el 21 de Septiembre del 2017gráfica de visualizaciones de la versión: 1.1
233 visualizaciones desde el 21 de Septiembre del 2017. Una media de 7 por semana

1.2

Actualizado el 25 de Septiembre del 2017 (Publicado el 22 de Septiembre del 2017)gráfica de visualizaciones de la versión: 1.2
271 visualizaciones desde el 22 de Septiembre del 2017. Una media de 7 por semana

1.3

Publicado el 25 de Septiembre del 2017gráfica de visualizaciones de la versión: 1.3
223 visualizaciones desde el 25 de Septiembre del 2017. Una media de 7 por semana

1.4

Actualizado el 02 de Octubre del 2017 (Publicado el 29 de Septiembre del 2017)gráfica de visualizaciones de la versión: 1.4
289 visualizaciones desde el 29 de Septiembre del 2017. Una media de 7 por semana

1.5
estrellaestrellaestrellaestrellaestrella(1)

Actualizado el 03 de Octubre del 2017 (Publicado el 02 de Octubre del 2017)gráfica de visualizaciones de la versión: 1.5
250 visualizaciones desde el 02 de Octubre del 2017. Una media de 7 por semana

1.6
estrellaestrellaestrellaestrellaestrella(1)

Publicado el 06 de Octubre del 2017gráfica de visualizaciones de la versión: 1.6
216 visualizaciones desde el 06 de Octubre del 2017. Una media de 7 por semana

1.7

Actualizado el 10 de Octubre del 2017 (Publicado el 07 de Octubre del 2017)gráfica de visualizaciones de la versión: 1.7
337 visualizaciones desde el 07 de Octubre del 2017. Una media de 7 por semana

1.8

Publicado el 13 de Octubre del 2017gráfica de visualizaciones de la versión: 1.8
182 visualizaciones desde el 13 de Octubre del 2017. Una media de 7 por semana

1.9

Actualizado el 17 de Octubre del 2017 (Publicado el 16 de Octubre del 2017)gráfica de visualizaciones de la versión: 1.9
263 visualizaciones desde el 16 de Octubre del 2017. Una media de 7 por semana

2.0

Actualizado el 24 de Octubre del 2017 (Publicado el 21 de Octubre del 2017)gráfica de visualizaciones de la versión: 2.0
210 visualizaciones desde el 21 de Octubre del 2017. Una media de 7 por semana

2.1

Actualizado el 08 de Noviembre del 2017 (Publicado el 26 de Octubre del 2017)gráfica de visualizaciones de la versión: 2.1
297 visualizaciones desde el 26 de Octubre del 2017. Una media de 7 por semana

2.2

Actualizado el 01 de Noviembre del 2017 (Publicado el 31 de Octubre del 2017)gráfica de visualizaciones de la versión: 2.2
269 visualizaciones desde el 31 de Octubre del 2017. Una media de 7 por semana

2.3

Actualizado el 02 de Diciembre del 2017 (Publicado el 11 de Noviembre del 2017)gráfica de visualizaciones de la versión: 2.3
566 visualizaciones desde el 11 de Noviembre del 2017. Una media de 14 por semana

2.4

Actualizado el 23 de Enero del 2018 (Publicado el 16 de Diciembre del 2017)gráfica de visualizaciones de la versión: 2.4
670 visualizaciones desde el 16 de Diciembre del 2017. Una media de 14 por semana

2,5

Actualizado el 19 de Marzo del 2018 (Publicado el 18 de Marzo del 2018)gráfica de visualizaciones de la versión: 2,5
156 visualizaciones desde el 18 de Marzo del 2018. Una media de 7 por semana

2.6

Publicado el 23 de Marzo del 2018gráfica de visualizaciones de la versión: 2.6
146 visualizaciones desde el 23 de Marzo del 2018. Una media de 7 por semana

2.7

Actualizado el 02 de Abril del 2018 (Publicado el 25 de Marzo del 2018)gráfica de visualizaciones de la versión: 2.7
240 visualizaciones desde el 25 de Marzo del 2018. Una media de 7 por semana

2.8

Actualizado el 14 de Mayo del 2018 (Publicado el 04 de Abril del 2018)gráfica de visualizaciones de la versión: 2.8
550 visualizaciones desde el 04 de Abril del 2018. Una media de 14 por semana

2.9

Actualizado el 21 de Septiembre del 2018 (Publicado el 20 de Julio del 2018)gráfica de visualizaciones de la versión: 2.9
334 visualizaciones desde el 20 de Julio del 2018. Una media de 14 por semana

3.0

Actualizado el 23 de Septiembre del 2018 (Publicado el 22 de Septiembre del 2018)gráfica de visualizaciones de la versión: 3.0
337 visualizaciones desde el 22 de Septiembre del 2018. Una media de 14 por semana

3.1

Publicado el 03 de Febrero del 2019gráfica de visualizaciones de la versión: 3.1
148 visualizaciones desde el 03 de Febrero del 2019. Una media de 14 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

Codigo optimizado.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include<dos.h>
#include<time.h>
#include<stdio.h>
#include<conio.h>
 
char far*q,far*Q[81]={(char far*)0xA0000000-4157};
char E,n[3][81],N[27][10],D[]=" 123456789";
char B[][9]={"5.2......",
             "....6.9..",
             ".........",
             ".41..7...",
             "...5...6.",
             "..5..2...",
             ".97.85...",
             ".......35",
             ".54....96"};
int b[81],i[255],g[3],C[81],X[81],Y[81];
int a,d,f,x,y,c=80,A[]={3,3,3,3,3,3,3,3,3,0};
void cursor(F){
for(d=225;d--;)
if(*(q=Q[c]+i[d])==F) *q=!*q;
}
void cifra(F){
gotoxy(X[c],Y[c]);
printf("%c",F);
}
int main(){
_AX=0x13;
geninterrupt(0x10);
time_t t;
for(d=255;d--;i[d]=d/15*320+d%15+321);
do{
   n[0][c]=c/27*9+c%27/9*3;
   n[1][c]=c%9/3*9+c%3*3+1;
   n[2][c]=c/27*9+c%9/3*3+2;
   X[c]=12+c%9*2;
   Y[c]=4+c/9*2;
   Q[c]=Q[0]+8*X[c]+2560*Y[c];
   if(b[c]=B[c/9][c%9]-46) cifra(D[b[c]-=2]);
   for(f=144,a=3;a--;f/=3)
   if(!a||!c||a==1&&c%27/9+c%3<1)
   for(q=Q[c]-321*a,d=a+1;d--;)
   for(x=y=d+f,y++;y--;)
   *(q+y)=*(q+320*y)=*(q+y+320*x)=*(q+320*y+x)=7;
  }while(c--);
 
Inicio:
while(E=c=f=kbhit()) getch();
do{
   if(E==77&&c<80) c++;
   if(E==75&&c) c--;
   if(E==80&&c<72) c+=9;
   if(E==72&&c>8) c-=9;
   if(E==32) E=48;
   cursor(0);
   if(E>47&&E<58) cifra(D[b[c]=E-48]),
                  E=77;
   else while(!(E=getch()));
   if(E==27) return 0;
   cursor(1);
  }while(E!=13);
 
for(x=c=81;c--;)
if(b[c]){
         for(y=3;y--;)
         if(N[n[y][c]][b[c]]) break;
         if(y>=0) cifra(D[b[c]=0]);
         else for(f++,g[c/27]++,cursor(0),y=3;y--;)
              N[n[y][c]][b[c]]++;
        }
while(x>f){
           for(a=y=2;y--;)
           if(g[y]<g[a]) a=y;
           for(g[a]=d=27;d--;)
           if(!b[c=27*a+d]) C[--x]=c;
          }
 
t=time(NULL)-1;
while(f>=x)
if(f<81){
         if(a=b[c=C[f]])
         for(y=3;y--;N[n[y][c]][a]--);
         do for(y=A[a++];y--;)
            if(N[n[y][c]][a]) break;
            while(y>=0);
         if(a>9) f--,
                 a=0;
         else for(f++,y=3;y--;N[n[y][c]][a]++);
         cifra(D[b[c]=a]);
        }
else{
     gotoxy(11,23);
     printf("%.f%c ",difftime(time(NULL),t),34);
     printf("Pulse una tecla\r");
     while(kbhit()) getch();
     if(getch()==27) return 0;
     printf("%c[2K",27);
     f--;
    }
for(c=81;c--;)
if(b[c]) for(cursor(1),y=3;y--;g[y]=0)
         N[n[y][c]][b[c]]--;
goto Inicio;
}



Comentarios sobre la versión: 3.1 (0)


No hay comentarios
 

Comentar la versión: 3.1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s4196
Revisar política de publicidad