Sudoku

5 respostas
F

Gostaria de uma ajuda com um projeto, estou desenvolvendo um jogo de sudoku e existe 3 dificuldades (easy,medium,hard) , e gostaria de saber de um modo de randomizar um jogo predefinido quando selecionado uma dificuldade.

private int puzzle[] = new int[9 * 9];

   private final String easyPuzzle =
      "360000000004230800000004200" +
      "070460003820000014500013020" +
      "001900000007048300000000045";
   private final String mediumPuzzle =
      "650000070000506000014000005" +
      "007009000002314700000700800" +
      "500000630000201000030000097";
   private final String hardPuzzle =
      "009000000080605020501078000" +
      "000000700706040102004000000" +
      "000720903090301080000000600";

Como mostrado , so predefini 1 jogo para cada nivel, gostaria de saber como poderia predefinir outros jogos e ao momento que selecionace o nivel aleatoriamente escolheria um.

Obrigado

5 Respostas

F
public static final int DIFFICULTY_EASY = 0;
   public static final int DIFFICULTY_MEDIUM = 1;
   public static final int DIFFICULTY_HARD = 2;
   protected static final int DIFFICULTY_CONTINUE = -1;
F

Ok agora entendo a tua pergunta,a dificuldade e definida pela quantidade de numeros iniciais como por exemplo o 3,6 o 0 representa a casa em branco que o jogador colocaria o numero.A primeira linha reprensentaria as 3 primeiras fileiras de quadrados e assim por diante. Se eu predefinice um segundo jogo para o easyPuzzle, como adicionaria ele e ao escolher o nivel easy um dos dois jogos seria aleatoriamente escolhido. Como vc falou sobre definir algoritimos aleatorios, seria possivel definir uma linha de codigo que criase jogos apartir dos nivel selecionados?

F

Alguma sugestao?

WellingtonRamos

qual seria a regra para a variável inicial de cada nível?

WellingtonRamos

acho que você não entendeu minha pergunta..

Você apresentou exemplos de easy, medium, hard certo?
private int puzzle[] = new int[9 * 9];   
  
   private final String easyPuzzle =   
      "360000000004230800000004200" +   
      "070460003820000014500013020" +   
      "001900000007048300000000045";   
   private final String mediumPuzzle =   
      "650000070000506000014000005" +   
      "007009000002314700000700800" +   
      "500000630000201000030000097";   
   private final String hardPuzzle =   
      "009000000080605020501078000" +   
      "000000700706040102004000000" +   
      "000720903090301080000000600";
O que, em cada caso, define a dificuldade? Quantidade de casas em branco (zeros)? Posição dos números (de 1 a 9)? Outra? Sem esse tipo de regra não é possível definir um algorítmo que possa gerar aleatórios.
Criado 8 de dezembro de 2010
Ultima resposta 8 de dez. de 2010
Respostas 5
Participantes 2