Exercício - Complete o desafio de adicionar métodos para tornar o jogo jogável

Concluído

Os desafios de código ao longo desses módulos reforçam o que você aprendeu e ajudam você a ganhar alguma confiança antes de continuar.

O foco deste desafio é criar métodos corretos com os parâmetros e tipos de retorno adequados.

Desafio de mini-jogo de dados

Seu desafio é projetar um mini-jogo. O jogo deve selecionar um número alvo que seja um número aleatório entre um e cinco (inclusive). O jogador deve lançar um dado de seis lados. Para ganhar, o jogador deve rolar um número maior do que o número alvo. No final de cada rodada, o jogador deve ser perguntado se gostaria de jogar novamente, e o jogo deve continuar ou terminar de acordo.

Neste desafio, você recebe um código inicial. Você deve determinar quais métodos criar, seus parâmetros e seus tipos de retorno.

Desafio de código: adicionar métodos para tornar o jogo jogável

No código com o qual você começa, há dois métodos indisponíveis referenciados:

  • ShouldPlay: Este método deve recuperar a entrada do usuário e determinar se o usuário deseja jogar novamente
  • WinOrLose: Este método deve determinar se o jogador ganhou ou perdeu

Há também duas variáveis não inicializadas:

  • target: O número de alvo aleatório entre 1 e 5
  • roll: O resultado de um rolo aleatório de seis lados

Seu desafio é criar os ShouldPlay métodos e WinOrLose e criar métodos que definam target e roll para valores aleatórios no intervalo correto. Quando todos os métodos estiverem completos, o jogo deve ser executado com sucesso.

  1. Verifique se você tem um arquivo de Program.cs vazio aberto no Visual Studio Code.

    Se necessário, abra o Visual Studio Code e conclua as seguintes etapas para preparar um arquivo de Program.cs no Editor:

    1. No menu Arquivo, selecione Abrir pasta.

    2. Use a caixa de diálogo Abrir pasta para navegar até a pasta CsharpProjects e abri-la.

    3. No painel Visual Studio Code EXPLORER, selecione Program.cs.

    4. No menu Seleção de código do Visual Studio, selecione Selecionar tudo e pressione a tecla Delete.

  2. Copie e cole o código a seguir no painel Editor.

    Random random = new Random();
    
    Console.WriteLine("Would you like to play? (Y/N)");
    if (ShouldPlay()) 
    {
        PlayGame();
    }
    
    void PlayGame() 
    {
        var play = true;
    
        while (play) 
        {
            var target;
            var roll;
    
            Console.WriteLine($"Roll a number greater than {target} to win!");
            Console.WriteLine($"You rolled a {roll}");
            Console.WriteLine(WinOrLose());
            Console.WriteLine("\nPlay again? (Y/N)");
    
            play = ShouldPlay();
        }
    }
    
  3. Atualize o código para usar métodos para fazer o jogo correr de acordo com as especificações do desafio.

    Use o que você aprendeu sobre valores e parâmetros de retorno para concluir a atualização.

  4. Verificar se o jogo está a funcionar

    Seu código deve produzir uma saída semelhante à seguinte:

    Would you like to play? (Y/N)
    Y
    Roll a number greater than 1 to win!
    You rolled a 2
    You win!
    
    Play again? (Y/N)
    Y
    Roll a number greater than 4 to win!
    You rolled a 6
    You win!
    
    Play again? (Y/N)
    Y
    Roll a number greater than 1 to win!
    You rolled a 1
    You lose!
    
    Play again? (Y/N)
    N
    

Se tiver dificuldades e precisar de ver a solução ou se terminar com êxito, continue para ver uma solução deste desafio.