Logo

¡Bienvenido a Stratos!

Acceder

Foros



Menu

Mostrar Mensajes

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

Mostrar Mensajes Menu

Mensajes - mastertemplar

#1
General Programadores / Sudokus
10 de Febrero de 2008, 08:36:02 PM
Hola tengo este programa que hasta el momento solo genera automaticamente dos lineas de numeros de acuerdo a las reglas de un sudoku.
¿Alguien me podria decir alguna forma de mejorar el codigo para que ocupase menos espacio y fuese mas eficiente?
Esta hecho con darkbasic.
Gracias por adelantado

Inicio:
A = rnd(9)
if A = 0
goto Inicio
else
print A;
endif

Inicio2:
B = rnd(9)
if B = 0
goto Inicio2
else
if B = A
goto Inicio2
else
print B;
endif
endif

Inicio3:
C = rnd(9)
if C = 0
goto Inicio3
else
if C = A or  C = B
goto Inicio3
else
print C;
endif
endif

Inicio4:
D = rnd(9)
if D = 0
goto Inicio4
else
if D = A or D = B or D = C
goto Inicio4
else
print D;
endif
endif

Inicio5:
E = rnd(9)
if E = 0
goto Inicio5
else
if E = A or E = B or E = C or E = D
goto Inicio5
else
print E;
endif
endif

Inicio6:
F = rnd(9)
if F = 0
goto Inicio6
else
if F = A or F = B or F = C or F = D or F = E
goto Inicio6
else
print F;
endif
endif

Inicio7:
G = rnd(9)
if G = 0
goto Inicio7
else
if G = A or G = B or G = C or G = D or G = E or G = F
goto Inicio7
else
print G;
endif
endif

Inicio8:
H = rnd(9)
if H = 0
goto Inicio8
else
if H = A or H = B or H = C or H = D or H = E or H = F or H = G
goto Inicio8
else
print H;
endif
endif

Inicio9:
I = rnd(9)
if I = 0
goto Inicio9
else
if I = A or I = B or I = C or I = D or I = E or I = F or I = G or I = H
goto Inicio9
else
print I
endif
endif

Inicio10:
A1 = rnd(9)
if A1 = 0
goto Inicio10
else
if A1 = A or A1 = B or A1 = C
goto Inicio10
else
print A1;
endif
endif

Inicio11:
B1 = rnd(9)
if B1 = 0
goto Inicio11
else
if B1 = A1 or B1 = B or B1 = C or B1 = A
goto Inicio11
else
print B1;
endif
endif

Inicio12:
C1 = rnd(9)
if C1 = 0
goto Inicio12
else
if C1 = A1 or C1 = B1 or C1 = A or C1 = B or C1 = C
goto Inicio12
else
print C1;
endif
endif

Inicio13:
D1 = rnd(9)
if D1 = 0
goto Inicio13
else
if D1 = A1 or D1 = B1 or D1 = C1 or D1 = D or D1 = E
goto Inicio13
else
if D1 = F
goto Inicio13
else
print D1;
endif
endif
endif


Inicio14:
E1 = rnd(9)
if E1 = 0
goto Inicio14
else
if E1 = A1 or E1 = B1 or E1 = C1 or E1 = D1 or E1 = D
goto Inicio14
else
if E1 = E or E1 = F
goto Inicio14
else
print E1;
endif
endif
endif

Inicio15:
F1 = rnd(9)
if F1 = 0
goto Inicio15
else
if F1 = A1 or F1 = B1 or F1 = C1 or F1 = D1 or F1 = E1
goto Inicio15
else
if E1 = D or E1 = E or E1 = F
goto Inicio15
else
print F1;
endif
endif
endif

Inicio16:
G1 = rnd(9)
if G1 = 0
goto Inicio16
else
if G1 = A1 or G1 = B1 or G1 = C1 or G1 = D1 or G1 = E1
goto Inicio16
else
if G1 = F1 or G1 = G or G1 = H or G1 = I
goto Inicio16
else
print G1;
endif
endif
endif

Inicio17:
H1 = rnd(9)
if H1 = 0
goto Inicio17
else
if H1 = A1 or H1 = B1 or H1 = C1 or H1 = D1 or H1 = E1 or H1 = F1 or H1 = G1
goto Inicio17
else
if H1 = G or H1 = H or H1 = I
goto Inicio17
else
print H1;
endif
endif
endif

Inicio18:
I1 = rnd(9)
if I1 = 0
goto Inicio18
else
if I1 = A1 or I1 = B1 or I1 = C1 or I1 = D1 or I1 = E1 or I1 = F1 or I1 = G1
goto Inicio18
else
if I1 = H1 or I1 = G or I1 = H or I1 = I
goto Inicio18
else
print I1;
endif
endif
endif





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.
Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.