SbPuzzle


  • Descrição


    Este é um jogo de tabuleiro que consiste em  mover  um certo  bloco- chamado de bloco principal - de uma posição para a outra  (neste caso,  mover para a extremidade direita). O tabuleiro - que, junto com os blocos do mesmo, é definido pelo jogador - é preenchido com blocos, de vários tamanhos, que são posicionados de forma que impeçam ou não a movimentação do bloco principal.
  
    O jogo tem como objetivo, mover o bloco principal para a extremidade direita com o menor número de movimentações de blocos possível.
   
    Tudo que o jogador deve fazer é criar, a partir de um arquivo fonte, o tabuleiro e os blocos. Depois de criado o programa trata de procurar a melhor solução para o problema.

 

  •   Entrada de Dados

 

A entrada de dados correspondente a um quebra-cabeça será sempre realizada através de um arquivo ascii, cujo nome será fornecido através de argumentos de linha de comando.

 

O arquivo de entrada e um arquivo de texto com a primeira linha indicando o tamanho do tabuleiro, a segunda com o bloco principal e as outras com os outros blocos a serem inseridos no tabuleiro.

 

O primeiro valor da primeira linah indica o numero de linhas do tabuleiro e o segundo valor indica o numero de colunas do mesmo.

 

A forma de entrada dos blocos será:

  • O primeiro inteiro indica a linha inicial de posicionamento do bloco.
  • O segundo inteiro indica a coluna inicial de posicionamento do bloco.
  • O terceiro inteiro indica a largura do bloco em colunas.
  • O quarto inteiro indica a altura do bloco em linhas.

Um arquivo de entrada de exemplo esta incluso no pacote para download logo abaixo.

  
  • Execução

 

Para compilar digite: g++ -Wall sbpuzzle -o sbpuzzle

E para executar:  ./sbpuzzle <entrada.txt

 

 

  • O trabalho


    O trabalho foi desenvolvido em C++ com a utilização de classes  e algumas estruturas de dados.  Foi necessario uma grande quantidade de formulas matematicas para movimentacoes  dos blocos (internamente  definidos como strings).  O trabalho ainda esta em fase de desenvolvimento. Mas um arquivo  com tudo que ja foi feito ate aqui  esta disponivel logo abaixo.

Download
Projeto sbpuzzle
Projeto.rar
compressed file archive 48.6 KB
  • Desenvolvedor
    Raul Joaquim Camara dos Santos