2
respostas

[Dúvida] Maior ou menor

Por que quando rodo o meu código ele não distingue se o numero digitado é maior ou menor que o numero gerado?

import java.util.Random;
import java.util.Scanner;

public class JogoDeAdivinhacao {
    public static void main(String[] args) {
        Scanner jogo = new Scanner(System.in);

        int numeroGerado = new Random().nextInt(100);
        int numeroDeTentativas = 0;
        int numeroDigitado = 0;

        for (int i = 0; i < 5 ; i++) {
            System.out.println("Digite um número aleatório de 0 até 100:");
             numeroDigitado = jogo.nextInt();
             numeroDeTentativas++;

             if (numeroDigitado == numeroGerado) {
                 System.out.println("Parabéns! Você acertou o número!");
             } else if (numeroDigitado < numeroGerado) {
                 System.out.println("O número aleatório é menor!");
             } else {
                 System.out.println("O número aleatório é maior");
             }
        }
        if (numeroDeTentativas == 5) {
            System.out.println("Você não acertou o número nas 5 tentativas! O número aleatório era:  " + numeroGerado);

        }
    }
}
2 respostas

Olá Denislancken, tudo bem?

Testei aqui o seu código e comparou corretamente quando o número que digitei era maior ou menor que o gerado. Veja esse exemplo abaixo, onde o número gerado foi 79.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Aqui só faltou mesmo incluir um break quando a pessoa acerta o número, pois mesmo depois que eu digitei o 79, ele continuou pedindo para que fosse digitado mais um número aleatório.

Caso a dúvida persista, não deixe de nos avisar por aqui.

Bons estudos! 😄

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!

Fala, Denislancken! Tudo bem?

Assim como a Jacqueline Oliveira falou, seu codigo está comparando.

Só faça um ajuste na mensagens. Se o numero aleatorio é maior que o numero inserido pelo o usuario, a sua mensagem tem que ser: (O numero aleatorio é MAIOR)... e por ai vai.

import java.util.Random; import java.util.Scanner;

public class Loop { public static void main(String[] args) { Scanner jogo = new Scanner(System.in);

    int numeroGerado = new Random().nextInt(100);
    int numeroDeTentativas = 0;
    int numeroDigitado = 0;

    for (int i = 0; i < 5 ; i++) {
        System.out.println("Digite um número aleatório de 0 até 100:");
        numeroDigitado = jogo.nextInt();
        numeroDeTentativas++;

        if (numeroDigitado == numeroGerado) {
            System.out.println("Parabéns! Você acertou o número!");
            break;
        } else if (numeroDigitado < numeroGerado) {
            System.out.println("O número aleatório é maior!");
        } else {
            System.out.println("O número aleatório é menor");
        }
    }
    if (numeroDeTentativas == 5)
    {System.out.println("Você não acertou o número nas 5 tentativas! O número aleatório era:  " + numeroGerado);}
}

}

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software