• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

zepiroca

help !! jogo 21

5 mensagens neste tópico

Exactamente o k eu preciso é fazer o jogo do 21 para o projecto da escola.

So que eu nao sei bem como começar. Por isso é que eu pedi ajuda.

Eu 1º criei uma classe Carta

private String naipe

private String nome

private int valor

public Carta(string naipe,String nome,int valor)

getNaipe

setNaipe

getNome

setNome

getValor

setValor

Só k agora n sei como criar um baralho criar um baralho a partir da classe carta.

Se alguem me poder ajudar eu agradeço mto

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Esta deve ser a estrutura base da classe baralho, repara que não sei as regras do jogo por isso podem faltar métodos ou existirem métodos que não fazem sentido.

O único ponto de interesse nesta classe é a forma como guardas as cartas que formam o baralho, eu escolhi usar tabelas, podes usar outro tipo de estrutura.

public Class Baralho {


    private Carta[] baralho = new Carta[52]; //Nao sei quantas cartas tem um baralho 

    public Baralho() {

    }

    public void adicionarCarta(Carta nova) {
    }

    public void removerCarta(Cart nova) {
    }

    public carta[] getBaralho() {
    }
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É assim eu ja crei uma classe carta do tipo

public class Carta {

public final static int copas=0,espadas=1,ouros=2,paus=3;
public final static int valete=11, dama=12, rei=13, as=14, joker=15;
private int naipe;
private int tipo;

public Carta(int naipe,int tipo){
	this.naipe=naipe;
	this.tipo=tipo;
}

public int getNaipe(){
	return naipe;
}
public int getTipo(){
	return tipo;
}

public String toStringNaipe(){
	switch(naipe){
	 case 0: return "Copas";
	 case 1: return "Espadas";
	 case 2: return "Ouros";
	 case 3: return "Paus";
	 default : return "Nao existe";
	 }
}

public String toStringTipo(){
	switch(tipo){
	 case 2: return "2";
	 case 3: return "3";
	 case 4: return "4";
	 case 5: return "5";
	 case 6: return "6";
	 case 7: return "7";
	 case 8: return "8";
	 case 9: return "9";
	 case 10: return "10";
	 case 11: return "Valete";
	 case 12: return "Dama";
	 case 13: return "Rei";
	 case 14: return "Ás";
	 case 15: return "Joker";
	 default: return "Não existe";
	}
}

public String toString(){
	return toStringTipo()+ " " + toStringNaipe();
 }
}

e depois criei um classe baralho do tipo

public class Baralho {
private Carta[] baralho21;

public Baralho21(){
	baralho21 = new Carta[35];
	int contCartas=0;
	for(int naipe=0;naipe<=3;naipe++){
		for(int tipo=6;tipo<=14;tipo++){
			baralho21[contCartas]=new Carta(naipe,tipo);
			contCartas++;
		}
	}
}

public Carta[] getBaralho21(){
	return baralho21;
}
}

Mas agora tou com um problema, n consigo fazer um metodo para baralhar o baralho.

Sera que alguem me pode ajudar

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Baralhar, solução clássica, deves de encontrar imensos exemplos na net...

    public void baralhar() {
        for (int ultimo = baralho21.length-1; ultimo > 0; ultimo--) {
            int posicaoAleat = (int)(Math.random()*(ultimo + 1));
            
            Carta cTemp = baralho21[posicaoAleat];
            baralho21[posicaoAleat] = baralho21[ultimo];
            baralho21[ultimo] = cTemp;
        }
    }

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora