Método para contabilzação de pontos
Amigos,
Estou com um probleminha para resolver uma jogo de cartas:
Estou usando Java e preciso fazer um método para calcular a pontuação de um jogador do jogo de cartas:
O jogador tem 6 cartas de qualquer valor (existente no baralho). e tenho que calcular a pontuação com base nas regras:
- 1 sequencia simples (2 cartas) = 4 pontos;
- 1 sequencia plus (3cartas ou mais) = 2 pontos por carta
- trinca (3 cartas de mesmo numero) =2 pontos p/ cada trinca
-par(2 cartas de mesmo numero)=1 ponto por par
Alguém tem alguma idéia???
Desde já agradeço a atenção de todos,
Marcelo Oliveira
Re: Método para contabilzação de pontos
Citação:
Postado originalmente por mrsoliveira
Estou com um probleminha para resolver uma jogo de cartas
Ola Marcelo, nao entendi qual o problema, o que vc ja tentou fazer? o q nao funcionou?
Re: Método para contabilzação de pontos
Cara,
Eu tava tentando utilizar o metodo bubble sort para ordenar o array, mas isso não adianta.
Citação:
public static void Bolha (int[] v)
{
for (int i = v.length - 1; i > 0; i--)
{
for (int j = 0; j < i; j++)
if (v [j] > v [j + 1])
troca (v, j, j + 1);
}
}
public static void troca (int[] v, int j, int aposJ)
{
int aux = 0;
aux = v [j];
v [j] = v [aposJ];
v [aposJ] = aux;
}
Olha o pq:
Se eu mandar ordenar um array de 6 posições que são o máximo de cartas que o jogador pode ter e ordenar da seguinte maneira:
[1]
[1]
[2]
[4]
[4]
[8]
se eu mandasse ordenar o array com o metodo buble sort , ele ficaria com mostrado acima.
O problema ai eh como eu calcular a pontuação deste jogador, que no caso seria:
[1]
[2] = sequencia simples 2 pontos
[4]
[4] = par 1 ponto por carta = 2 pontos
[1] = subtrai 1 ponto
[8] = subtrai 1 ponto
Eu tava tentando fazer um for para verificar se está em sequencia:
tipo:
for (int i=0; i<cartasDoJogador.length;i++) //cartasDoJogador é o array q guarda as cartas do jogador
aux = [i+1]; //proximo valor do array //problema no utlimo valor
Nesta parte não consegui evoluir!
Mas pensei em seguir a seguinte lógica:
1- Inicia jogo;
2- Define quantos participantes;
3- Cria o Baralho (Monte de cartas - Banco);
4- Jogador[X] compra carta (verifica-se já estourou a quota (6));
5- OrganizaJogo (este metodo seria responsavel por organizar as cartas de maneira a acumular o maior nr de pontos posssivel)
6- VerificaPontuacao - Verifica a pontuacao de cada jogador
7 - Verfica a pontuacao Geral
O maior problema tah sendo a parte de pontuação!