Jump to content
Bruno

Alguem aqui domina o Sudoku?

Recommended Posts

Bruno

Pois é... nestas férias fiz um programa para resolver estas coisas :D

Ao contrário de muitos outros q ja fiz (tipo um q partia de tabuleiros num estado diferente do inicial e fazia o solitário) este n foi por "força bruta"! Isto é, n foi a testar todas as hipoteses mas sim seguir um raciocinio!

Testei com bastantes sudoku's... uns faceis, outros médios e outros difíceis...

Finalmente apanhei uns q me davam luta no papel, uns "Very Hard"... meti no pc e verifiquei q ele tb n o acabava... portanto se alguem quiseres resolvê-lo e me diga como decidiu (espero q n seja ao acaso) eu programo isso e dou por terminado o programa :)

---

Espero q tenha colocado no local certo visto q sao problemas de matematica :P

Ah, eu coloco o tabuleiro em questão on-line se alguem me disser q domina a "coisa" :)

Share this post


Link to post
Share on other sites
Grettir

Heyas,

"bota" la isso online que a malta da uma vista de olhos....

Fica bem


Ricardo Castelhano

-----------------------

FullStack Developer

Technical Manager

Trainer

Share this post


Link to post
Share on other sites
Bruno

Tab inicial (0 = vazio):

1 4 6 | 9 2 3 | 0 0 8

7 2 9 | 5 8 4 | 0 6 0

8 0 0 | 7 6 1 | 2 4 9

-------+-------+-------

2 0 0 | 6 0 0 | 8 0 0

6 0 0 | 0 0 0 | 0 0 0

9 0 7 | 0 0 0 | 0 0 6

-------+-------+-------

0 0 0 | 3 0 0 | 6 0 0

0 6 0 | 0 0 8 | 0 0 0

0 0 0 | 0 4 6 | 9 0 0

Tab até onde consigo ir:

1 4 6 | 9 2 3 | 0 0 8

7 2 9 | 5 8 4 | 0 6 0

8 0 0 | 7 6 1 | 2 4 9

-------+-------+-------

2 0 0 | 6 0 0 | 8 0 0

6 0 0 | 0 0 0 | 0 0 0

9 0 7 | 0 0 0 | 0 0 6

-------+-------+-------

4 9 0 | 3 0 0 | 6 0 0

0 6 0 | 0 9 8 | 0 0 0

0 7 0 | 0 4 6 | 9 0 0

E ainda vos posso dar a lista de numeros q podem ser em cada casa:

(1,7)  5 7

(1,8)  5 7

(2,7)  1 3

(2,9)  1 3

(3,2)  3 5

(3,3)  3 5

(4,2)  1 3 5

(4,3)  3 4 5

(4,5)  1 3 5 7

(4,6)  5 7 9

(4,8)  1 3 5 7 9

(4,9)  1 3 4 5 7

(5,2)  1 3 5 8

(5,3)  3 4 5

(5,4)  1 2 4 8

(5,5)  1 3 5 7

(5,6)  2 5 7 9

(5,7)  1 3 4 5 7

(5,8)  1 2 3 5 7 9

(5,9)  1 2 3 4 5 7

(6,2)  1 3 5 8

(6,4)  1 2 4 8

(6,5)  1 3 5

(6,6)  2 5

(6,7)  1 3 4 5

(6,8)  1 2 3 5

(7,3)  1 2 8

(7,5)  1 5 7

(7,6)  2 5 7

(7,8)  1 2 8

(7,9)  1 2

(8,1)  3 5

(8,3)  1 2

(8,4)  1 2

(8,7)  1 3 4 5 7

(8,8)  1 2 3 5 7

(8,9)  1 2 3 4 5 7

(9,1)  3 5

(9,3)  1 2 8

(9,4)  1 2

(9,8)  1 2 3 5 8

(9,9)  1 2 3 5

Se quiserem começem do inicial ou se preferirem do meu actual... ;)

Digam-me é como é q saem daqui :P

Share this post


Link to post
Share on other sites
Darkside

1 4 6 | 9 2 3 | 5 7 8

7 2 9 | 5 8 4 | 1 6 3

8 5 3 | 7 6 1 | 2 4 9

-------+-------+-------

2 1 4 | 6 3 9 | 8 5 7

6 8 5 | 4 7 2 | 3 9 1

9 3 7 | 8 1 5 | 4 2 6

-------+-------+-------

4 9 1 | 3 5 7 | 6 8 2

5 6 2 | 1 9 8 | 7 3 4

3 7 8 | 2 4 6 | 9 1 5

Até Foi fácil se kisers digo-te uma técnica para acabar rápido esses quebras-cabeças de uma vex:)

Share this post


Link to post
Share on other sites
Bruno
1 4 6 | 9 2 3 | 5 7 8

7 2 9 | 5 8 4 | 1 6 3

8 5 3 | 7 6 1 | 2 4 9

-------+-------+-------

2 1 4 | 6 3 9 | 8 5 7

6 8 5 | 4 7 2 | 3 9 1

9 3 7 | 8 1 5 | 4 2 6

-------+-------+-------

4 9 1 | 3 5 7 | 6 8 2

5 6 2 | 1 9 8 | 7 3 4

3 7 9 | 2 4 6 | 9 1 5

Até Foi fácil se kisers digo-te uma técnica para acabar rápido esses quebras-cabeças de uma vex:)

Sim, diz-me como... (mas n me digas q foi à sorte!!!)

Share this post


Link to post
Share on other sites
deathseeker25
Então e que tal um programa que resolva de forma inteligente TODOS os puzzel's possiveis?! :D

Venham as ideias, venha o projecto. Não me parece nada do outro mundo (e daí não sei...), mas pronto. A ver vamos...

Cumps

Share this post


Link to post
Share on other sites
deathseeker25
Por acaso já me lembrei disso, fazer uma algoritmo para resolver puzzles de sudoku.

Hum... ;) Vamos lá? Vou ali ao delphi, já venho.

LOL...em C tambem não é impossível...vou estudar isso. ;)

Cumps

Share this post


Link to post
Share on other sites
satanuke

O trabalho que demorava mais tempo tá feito, que era meter as edit boxes para dentro de um array multi-dimensional de 1x9 - 1x9.

Agora vou brincar com os ciclos for...já tinha saudades disto. Faz-me lembrar aqueles projectos que um gajo fazia na escola para praticar arrays. :D

Edit: Agora é que vem a dor de cabeça... 8)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.