Ir para o conteúdo
mirador_22

[Resolvido] Determinar vez de execução de dois casos(1 e 2) dentro de um ciclo em Java

Mensagens Recomendadas

mirador_22

Ola,

eu estou com uma duvida em como testar vez entre jogadores do jogo de xadrez, porque como já tinha colocado uma outra duvida no outro post, mas o que eu necessitava é como determinar a vez entre dois casos usando switch e deu certo, o erro é que o random em cada iteração determina aleatoriamente e duplica os dados, tenho um exemplo em baixo

ps: desculpem o titulo do fórum.

public class TestarVez{
  public static void main(String[] args) {

	Random rd = new Random();
	int j = 0;

	int numero = rd.nextInt(2) + 1;//utilizei  random apenas para teste
	do {
		System.out.println("\nTESTAR VEZ");
		System.out.println(String.format("Interação nº%02d", ++j));
		switch (numero) {
			case 1:
				System.out.println("\n--- Imprimir 1 --- ");
				break;
			case 2:
				System.out.println("\n--- Imprimir 2 ---");
				break;
		}
	} while (j != 5);
}
}

o output em duas iterações testadas

exgbkfF.jpg?1

o que eu pretendo, se é possivel é desenvolver a aplicação como mostra na figura em baixo

21GIexV.jpg?1

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
mirador_22

ps: desculpem o titulo do fórum.

public class TestarVez{
  public static void main(String[] args) {

	Random rd = new Random();
	int j = 0;

	int numero = rd.nextInt(2) + 1;//utilizei  random apenas para teste
	do {
		System.out.println("\nTESTAR VEZ");
		System.out.println(String.format("Interação nº%02d", ++j));
		switch (numero) {
			case 1:
				System.out.println("\n--- Imprimir 1 --- ");
				break;
			case 2:
				System.out.println("\n--- Imprimir 2 ---");
				break;
		}
	} while (j != 5);
}
}

o output em duas iterações testadas

exgbkfF.jpg?1

o que eu pretendo, se é possivel é desenvolver a aplicação como mostra na figura em baixo

21GIexV.jpg?1

Já consegui resolver o codigo está aqui

public static void main(String[] args) {
    boolean isNumero;
    Random rd = new Random();
    int j = 0;
    int numero = rd.nextInt(1) + 1;

    isNumero = numero == 1;

    do {
	    System.out.println("\nTESTAR VEZ");
	    System.out.println(String.format("Interação nº%02d", ++j));

	    if(isNumero){
		    System.out.println("\n--- Imprimir 1 --- ");
	    }else{
		    System.out.println("\n--- Imprimir 2 ---");
		  }
				    isNumero = !isNumero;
    } while (j != 5);
   }

aqui em baixo está o resultado

Gy3Q6mA.jpg?1

Partilhar esta mensagem


Ligação 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

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.