Partilhar via


Etapa 2: Criar um problema de Aleatório Addition

O teste deve problemas de matemática. Se o teste se repetir os mesmos problemas, ele é não difícil, para que você deseja incluir Aleatório números. Você Adicionar um método chamado **StartTheQuiz()**que preenche os problemas e inicia o timer de contagem regressiva. Nesta etapa, você pode adicionar um problema de adição aleatório. São os problemas de matemática e timer de contagem regressiva Adicionado em etapas posteriores neste tutorial.

Tutorial 2, você Criado em SoundPlayers vários para um Game do Labirinto. Faça o mesmo para o teste de matemática, exceto em vez do SoundPlayerclasse, Usar o Randomclasse.

Para criar um problema de adição Aleatório

  1. Criar um Randomobjeto por meio de um newDemonstrativo, como a seguir.

    Public Class Form1
    
        ' Create a Random object to generate random numbers.
        Dim randomizer As New Random
    
    public partial class Form1 : Form
    {
        // Create a Random object to generate random numbers.
        Random randomizer = new Random();
    

    Você agora tem Adicionado um Randomobjeto para seu formulário e chamou randomizer .

    ObservaçãoObservação

    O tutorial do Labirinto, você criou dois componentes de SoundPlayer usando o newDeclaração. Isso faz algo semelhante. A única diferença é que, ao contrário de um SoundPlayer, Randomnão é um componente, e não é um controle, portanto, não pode ser chamado por esses nomes. Ele é conhecido como um objeto. Você provavelmente já ouviu falar do objeto palavra antes e saiba mais sobre o que significa no Próximo alguns tutoriais. Por ora, Todas o que precisa saber é que, ao seu programa usa newé chamada de Declaração para criar botões, rótulos, painéis, OpenFileDialogs, ColorDialogs, SoundPlayers, Randoms e até mesmo formulários, o item que foi Criado em em um objeto. Mostrar mais recente de tutoriais é Mais Sobre esses objetos de trabalho.

  2. Agora quando você Iniciar seu formulário, ele cria um Nova Randomobjeto e atribui-lhe o nome randomizer . Como com SoundPlayers, se você entrar em um método e comece a digitar randomizer e, em seguida, ponto (.), uma janela de IntelliSense abre mostrando todo o Randommétodos do objeto que você possa Chamada. Você usa o **Next()**método, sistema autônomo segue.

    Método Next

    Método Next

    Quando você liga o random.Next(50), você obtém um número aleatório que é Menos do que 50 (de 0 a 49).

  3. Em breve, você criará um método para Seleção as respostas, portanto, seu programa precisa se lembrar de quais números ele escolheu para os problemas. Adicionar um número inteiro (conhecido sistema autônomo um inteiro no c# ou o número inteiro no Visual Basic) chamado Adicionar end1 e um inteiro (Integer) chamado Adicionar end2 para o formulário (exatamente sistema autônomo você Adicionar ed Randomobjeto chamado randomizer ), da seguinte maneira.

    ' Create a Random object to generate random numbers.
    Dim randomizer As New Random
    
    ' These Integers will store the numbers
    ' for the addition problem.
    Dim addend1 As Integer
    Dim addend2 As Integer
    
    // Create a Random object to generate random numbers.
    Random randomizer = new Random();
    
    // These ints will store the numbers
    // for the addition problem.
    int addend1;
    int addend2;
    
    ObservaçãoObservação

    Um Número Número inteiro (Número inteiro) é usado para armazenar um valor de número positivo ou negativo. Ele pode armazenar qualquer número De -2147483648 a 2147483647. Ele Apenas pode armazenar números inteiros e decimais não.

  4. Em seguida, Adicionar um método chamado **StartTheQuiz()**que usa o de Randomobjeto **Next()**método escolher dois números e colocar os números nas Rótulos. Ele irá, eventualmente, Preenchimento Todas problemas e, em seguida, iniciar o cronômetro, para adicionar um comentário. O código deve se parecer com o seguinte:

    ''' <summary>
    ''' Start the quiz by filling in all of the problems
    ''' and starting the timer.
    ''' </summary>
    ''' <remarks></remarks>
    Public Sub StartTheQuiz()
        ' Fill in the addition problem.
        addend1 = randomizer.Next(51)
        addend2 = randomizer.Next(51)
    
        plusLeftLabel.Text = addend1.ToString
        plusRightLabel.Text = addend2.ToString
    
        sum.Value = 0
    End Sub
    
    /// <summary>
    /// Start the quiz by filling in all of the problems
    /// and starting the timer.
    /// </summary>
    public void StartTheQuiz()
    {
        // Fill in the addition problem.
        addend1 = randomizer.Next(51);
        addend2 = randomizer.Next(51);
    
        plusLeftLabel.Text = addend1.ToString();
        plusRightLabel.Text = addend2.ToString();
    
        sum.Value = 0;
    }
    
    ObservaçãoObservação

    Observação que você chamou o randomizer.Next(51). O Razão pelo qual 51 e não 50) é usado é para que os dois números Adicionar até uma resposta é de 0 a 100. Se você Aprovado 50 para o Next()método, ele escolhe um número entre 0 e 49, portanto, a melhor resposta possível De 98 e não De 100. Depois que as duas primeiras instruções no método Executar, cada uma as dois ints (números inteiros), addend1 e addend2, Isenção um número aleatório entre 0 e 50.

    Vejamos mais detalhadamente essas instruções.

    plusLeftLabel.Text = addend1.ToString
    plusRightLabel.Text = addend2.ToString
    
    plusLeftLabel.Text = addend1.ToString();
    plusRightLabel.Text = addend2.ToString();
    

    As declarações de definem o propriedades de de texto de dois, além de rótulos, de plusLeftLabel e plusRightLabel , para que os rótulos Exibir os dois números aleatórios. Você precisará usar o int (Número inteiro) **ToString()**método para convertê-la em texto (em programação, de cadeia de caracteres significa que o texto), porque os controles de Rótulo exibem Apenas texto e não números.

  5. Você quer botão Iniciar para iniciar o teste, então, Ir para o Designer de Formulários do Janelas e Clicar duplo no botão para adicionar um manipulador de evento Clicar de . Em seguida, adicione as Dois instruções a seguintes.

    Private Sub startButton_Click() Handles startButton.Click
        startButton.Enabled = False
        StartTheQuiz()
    End Sub
    
    private void startButton_Click(object sender, EventArgs e)
    {
        startButton.Enabled = false;
        StartTheQuiz();
    }
    

    Você sabe o que faz a segunda Declaração: Ele chama o Nova **StartTheQuiz()**método. Primeiro Declaração define o startButton controle propriedade do habilitado de Falso. Que desativa o botão para que o usuário não é possível clicar nele. Dessa forma, o usuário Apenas pode clicar no botão de Iniciar uma vez. Depois disso, o botão aparece esmaecido e Indisponível e o usuário deve Concluir o teste para que as execuções de Hora para fora (ou fechar o programa).

  6. Agora, salvar e execute o programa. Clicar no botão de Iniciar. Um problema de adição aleatório deve aparecer sistema autônomo mostrado na figura a seguir.

    Problema de adição aleatória

    Problema de adição aleatória

Para continuar ou revisar