1
resposta

Pratica Jogo da Adivinhação

Foi bem divertido criar essa lógica, não tive muitas dificuldades, me lembrou bastante o challenge do modulo inicial de JS :D

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

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

    Scanner caixaDeTexto = new Scanner(System.in);

    //Gerando o numero aleatorio
    int numeroAleatorio = new Random().nextInt(100);

    String comecarJogo;
    int tentativas = 1;

    System.out.println("** JOGO DO NUMERO ALEATORIO **");
    System.out.println("");

    System.out.print("Tente adivinhar o numero em 5 tentativas!");
    System.out.println("");

    System.out.print("Deseja iniciar o jogo? (digite 'S' para começar ou 'N' para sair): ");
    comecarJogo = caixaDeTexto.nextLine().toUpperCase();

    System.out.println("");

    if (comecarJogo.equals("S")){

        //Inicio do laço
        while (tentativas < 6){

            System.out.print("Digite seu " + tentativas + "º chute: ");
            int numeroChutado = caixaDeTexto.nextInt();

            if (numeroChutado == numeroAleatorio) {
                System.out.print("Parabens, você acertou o numero aleatorio sorteado!");
                break;
            } else {
                System.out.print("Você errou, tente novamente.");
                System.out.println("");

            }

            //DICA
            if (numeroChutado > numeroAleatorio) {
                System.out.println("O numero secreto é menor que " + numeroChutado);
            } else {
                System.out.println("O numero secreto é maior que " + numeroChutado);
            }
            System.out.println("");

            tentativas++;
        }

        System.out.println("Suas tentativas acabaram, o numero sorteado era: " + numeroAleatorio);

    } else if (comecarJogo.equals("N")) {
        System.out.println("Você escolheu sair do jogo. Até mais :)");
    }

    caixaDeTexto.close();

}
}

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Olá, Jefferson!

Que ótimo saber que você se divertiu criando a lógica! É um sinal de que você está internalizando os conceitos de forma prática. E sim, a lógica de controle de fluxo e interação com o usuário é muito similar entre linguagens, como Java e JavaScript, o que é um excelente ponto de partida para a sua jornada na programação!

Seu código do JogoNumeroAleatorio está excelente e muito bem estruturado!

Destaques da sua Solução
Boas Práticas de Classes: Você utilizou corretamente as classes essenciais para este projeto:

Random: Para gerar o número secreto, garantindo um jogo diferente a cada execução.

Scanner: Para gerenciar a entrada de dados do usuário.

Controle de Fluxo Limpo: A estrutura de controle está impecável:

O if inicial para verificar se o jogador deseja iniciar o jogo é um ótimo toque de UX (Experiência do Usuário).

O loop while com o limite claro (tentativas < 6) controla o número de jogadas.

O uso do break após o acerto é a forma mais eficiente de sair do laço, evitando que o jogador gaste as tentativas restantes.

Feedback e Usabilidade: A inclusão das dicas ("O numero secreto é menor/maior...") é crucial para um jogo de adivinhação, pois melhora muito a experiência do jogador.

Parabéns pela execução do desafio e por ter concluído com uma solução tão robusta!