A idéia de escrever esse "Tutorial" do Sudoku surgiu assim que resolvi publicar algumas dicas sobre o sistema Protheus da Totvs/Microsiga.
Considerando que a uns 3 anos atrás escrevi, usando
Advpl (
Acrônimo de
Advanced Protheus Language), uma versão do "game"
Sudoku, esse breve tutorial servirá como referência do programa que
disponibilizarei para "
download".
Não quero aqui esgotar o assunto sobre o tema pois existem vários tutoriais disponíveis na web, mais interessantes e muito mais bem escritos, bastando digitar Sudoku no google que +ou- 53.600.000 de resultados aparecerão.
A idéia base é utilizar este como trampolim para os próximos artigos uma vez que o
código fonte do sudoku possui várias características interessantes que são merecedoras de um novo artigo, por exemplo: Compilação Condicional, Threads, Variáveis Globais dentre outras.
Vamos ao Tutorial.
Para joga-lo faz-se necessário ter o
protheus, versão 10 ou superior instalado e ter baixado e compilado o programa
u_sudoku.prg A tela de entrada do jogo é a mesma dos módulos do Protheus, então informe "programa inicial" u_sudoku, o tipo de comunicação entre o Client do Protheus e o Protheus Server, no meu caso TCP, e o ambiente em que o jogo foi compilado, no meu caso "games".
Ao iniciar o jogo escolha o nível de dificuldade, Iniciante, Intermediário ou Avançado. A diferença entre os níveis é a quantidade de casas que serão automaticamente preenchidas e na disposição dos números. E se deverá utilizar as configurações aqui definidas nas próximas partidas.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX6Dgpr1C_kDsmeOuaxOH8RN7d_07cDab_7kbHkbSI5oC1KgRPbsxsuBobK5s-LDBQChnBMi0Anao_bu4u3viTBIfM4HS-DiBCkj3_sSd2IHOIIEDW9s3IOSUluuoKMF9ZISl13vhgaps/s400-rw/u_sudoku02.JPG)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmFTqo5p7YosDOgl9axUE5BaFSj9Ar9HGUNQ3Wu_MC4gvriaEumr4p9EDZgiRFKVt58qrOgVeb_odaFlB6zi0Va8TxM19ZOP9k18Gq0Q4F8fON2kIp7lnsDiBMn4rxQWyqRVPMSUEBxME/s400-rw/u_sudoku09.JPG)
Clique nesse botão ou pressione simultaneamente
CTRL-O
para começar o jogo. E eis que surge a tela do jogo. A tela abaixo representa o ambiente do jogo com a característica de um jogo de fácil solução.
![Sudoku Sudoku](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAFacHT7x87GpQK5_Uk-tb3-eiS2dnnBoo8-TyRP5iJboDHRkE0MEPixyfqtreVEaMn46tQMY6HdBN0feCL3tTIEa974GaD46LhHUpWGltcAfYB_EQb1bcTuZJTnsJ8qXiW105up3ihso/s400-rw/u_sudoku03.JPG)
Os botões situados à esquerda da barra superior (figura abaixo)
Tem as seguintes ações:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRk4l0C8HdOWJ43HjVyIV3O7tA5dhGPBbTJAj2avDTtlXJsqNwOghy-FS66CLXsEfOzMkmN8ns-O3VG8KL6PC1oVPZtHClkDs2hMijij_8OCUzx6-uqRtbRkaU3DYJFEcQ605gT4GMyGE/s400-rw/u_sudoku06.JPG)
Novo Jogo
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL-BM_rp_kk-aVPEGfcF2YOOrJPEWbr1V6EykUaGx1t3KIXwmmqqKl-6uZ6f9YQTT12xDXGxCCzJ57JdLKUTNDmLpozA7XVZA7S1BqJiSXpcp-cINWzTGRAPkMqCHaR6h9rIHk7sYJy1s/s400-rw/u_sudoku07.JPG)
Preencher Números
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjE7eNsBOq5PH2i7tCcUlh_A6vcksbdXoNt7kPLH67JTMHeuXmU8nChbFmiIg5-JqfcSSTiL2hT4b0RmSf4chDHzQfUv9yvhPBSaI8AfZRuHjuYD75_mpgElrpBqKURVzrdDJ43q4i5cUA/s400-rw/u_sudoku08.JPG)
Parâmetros
Ok (Verificar Jogo)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9ZhM1tHE00YU8M7-IfBSne0VP2bF-oISWEXCHBBSqNoW8VSKvIgVUEGgiFYH1cK_e7nRLEmWQX_t7HMzYaasa7RXggXbMtuksHb9HnSdPcnh32lPTkXv1VQrrH2BODObH-eLRUm2QQa8/s400-rw/u_sudoku10.JPG)
Sair
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-hStQ2VN2NK5jz0xHwLXmMDLCvaSX8VMpwOh2XtIKro73Hev72LESQxaVGGNRYlNZooRHufRhebpxe6gwlVbOaqXTaeyzdCGCIVmTuDc4IhDnyBTot4Wol0ExSTbuaKzJQEYjF39RBII/s400-rw/u_sudoku11.JPG)
Ajuda (link para este tutorial)
As regras do jogo: O Sudoku ou Su Doku é um quebra-cabeça numérico.
Os números devem ser dispostos logicamente de forma a completar todos os quadrados utilizando-se a seqüencia numérica de 1 a 9 que deve completar todos as coordenadas horizontal e verticalmente bem como os quadrados menores que compõe o quadrado maior.
Nenhum número poderá ser repetido quando: ao ser utilizado em uma determinada coordenada horizontal não poderá ser usado na mesma linha verticalmente e vice-versa.
Bom Divertimento. No próximo artigo utilizarei esse programa para escrever sobre algumas características interessantes do Protheus utilizando Advpl.
Comentários
Postar um comentário