Ir ao conteúdo

Posts recomendados

Postado

galera eu estou aprendendo java básico, e estou com um problema no código : 

 Implemente em Java um Jogo de Adivinhação, onde o computador sorteia 2 números de 0 a 15 e o jogador tem 4 chances para adivinhá-los;

obs: eu sei que simples mais não conheço os comando direito de java.

Agradeço

 

package atividade1;


import java.util.Random;
import java.util.Scanner;
import java.lang.ArrayIndexOutOfBoundsException;
public class Atividade1 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        
       
        int palpite,tentativas=0,i,contador=-2;
        int[] sorteio=new int[2];
            
        Scanner entrada = new Scanner(System.in);
        
        for ( i=0;i<2;i++)
        {
            Random rnd=new Random();
            rnd.nextInt(16);
             sorteio=rnd.nextInt(16);
        }
        
        do{
           
            System.out.printf("\n\n\n\n-----------------\n");
            System.out.println("Número de tentativas: " + tentativas);
            
            System.out.print("Qual seu palpite: ");
            palpite = entrada.nextInt();
            
            tentativas++; 
          Jogo(palpite,sorteio,tentativas); <<<< ERRO (e alguma coisa relacionada ao vetor eu acho)
        }while(contador!=0);
    }

   public static void Jogo(int palpites,int num,int tentativas)
    {
        if(palpites<num)
        {
            System.out.println("Seu palpite é menor que o número sorteado.");
        }
        else
        {
            if(palpites>num)
            {
                System.out.println("Seu palpite é maior que o número sorteado.");
            }
            else
            {
              System.out.println("Parabéns, você acertou! O número era " + num);
                System.out.println("Você tentou " + tentativas + " vezes antes de acertar!");  
            }
        }
    }
}

 

ERRO:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
    at atividade1.Atividade1.main(Atividade1.java:45)

 

  • Curtir 1
Postado

@VirtualDarckness Olá. Cara... eu sempre fico com um pé atrás quando resolvo dar o exercício pronto p alguém.

Não sei até q ponto isso pode ou não ser prejudicial para o aprendizado do aluno.

Mas, como você inda demostra estar meio confuso com o uso de estruturas de decisão e repetição, vou postar.

Recomendo olhar bem para o código, analisar bem o q está acontecendo e procurar de toda forma fazer sozinho, ok?

Segue o código:

Vou passar o código simplificado para você entender melhor:

import java.util.Scanner;

public class Aplicacao {

    public static void main(String[] args) {

        int erros = 7, tentativa = 0, palpite = 0;
        int num = 0;
        String opcao;
        Scanner scan = new Scanner(System.in);

        num = (int) (Math.random() * 100);

        tentativa = 0;
        erros = 7;

        while (palpite != num && erros > 0) {

            System.out.print("Adivinhe o número: ");
            palpite = scan.nextInt();

            tentativa++;

            if (num < palpite) {
                erros--;
                System.out.println("O número é menor");
            } else if (num > palpite) {
                erros--;
                System.out.println("O número é maior");
            }
        }

        if (palpite == num) {
            System.out.println("Parabéns! Você acertou o número em " + tentativa + " tentativas. Número sorteado: " + num);
        } else if (erros == 0) {
            System.out.println("Você perdeu! O número sorteado foi o " + num);
        }
    }
}

Procure entender bem o que está sendo feito no código ok? Se ficar só no copia/cola você não vai aprender nada!

Fiz uma modificação no código p ficar mais simples e fácil de entender

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...