Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Jogo de Adivinhação

Olá! Esta é a minha solução para o desafio! Estou aberto a sugestões para melhorar cada vez mais minhas habilidades.

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

public class AdivinhaNumero {
    public static void main(String[] args) {
        Scanner leitura = new Scanner(System.in);
        int numeroSecreto = new Random().nextInt(100);
        int tentativas = 0;
        int numeroInformado = 0;

        while (tentativas < 5) {
            System.out.println("Adivinhe o número secreto de 0 a 100. Você tem 5 tentativas!");
            numeroInformado = leitura.nextInt();
            tentativas++;

            if (numeroSecreto == numeroInformado) {
                System.out.println("Parabéns você adivinhou o número secreto!");
                break;
            } else if (numeroSecreto < numeroInformado ) {
                System.out.println("O número informado é menor que o número secreto");
            } else {
                System.out.println("O número informado é maior que o número secreto");
            }

            if (tentativas >= 5) {
                System.out.println("Você não conseguiu acertar!");
            }
        }
    }
}
1 resposta
solução!

Oi, Andressa! Tudo bem?

Excelente código, parabéns pelo projeto! Espero que esteja gostando do curso! Colocar em execução as atividades propostas pelo professor em aula é uma prática muito importante para internalizarmos o conteúdo!

Deixo como sugestão apenas uma prática para melhorar a experiência do usuário: no código, a mensagem "Adivinhe o número secreto de 0 a 100. Você tem 5 tentativas!" é repetida a cada ciclo do loop, o que pode ser um pouco confuso para o jogador, pois pode dar a impressão de que ele sempre terá 5 tentativas, mesmo após várias tentativas. Podemos, então, aplicar uma possível melhoria movendo essa mensagem para fora do loop e, dentro do loop, informando ao usuário quantas tentativas ele ainda tem, como no exemplo abaixo:

System.out.println("Adivinhe o número secreto de 0 a 100. Você tem 5 tentativas!");
while (tentativas < 5) {
    numeroInformado = leitura.nextInt();
    tentativas++;

    if (numeroSecreto == numeroInformado) {
        System.out.println("Parabéns você adivinhou o número secreto!");
        break;
    } else if (numeroSecreto < numeroInformado ) {
        System.out.println("O número informado é menor que o número secreto");
    } else {
        System.out.println("O número informado é maior que o número secreto");
    }

    if (tentativas < 5) {
        System.out.println("Você ainda tem " + (5 - tentativas) + " tentativas.");
    } else {
        System.out.println("Você não conseguiu acertar!");
    }
}

Espero ter ajudado!

Um forte abraço e bons estudos!