Placar eletrônico - Parte 2
Marcador de Pontuação | Pedra-Papel-Tesoura
Vamos iniciar a construção de nosso programa a partir do pseudocódigo elaborado.
Com o Makecode aberto, clique em Novo projeto, em seguida clique em Create.
Relembrando nosso pseudocódigo, queremos ter certeza de iniciar um programa com uma tela limpa, ou seja, sem nenhum LED´s ligado.
Podemos obter este resultado clicando na categoria da caixa de ferramentas Básico e, em … more , escolha o bloco limpar tela
já iniciamos nosso projeto e adicionamos o bloco para limpar a tela ao iniciar, o próxima passo é criar as variáveis necessárias:
- JogadorAVenceu
- JogadorBVenceu
- EmpateAB
No MakeCode, clique em Variáveis… em seguir Fazer uma variável…
Na nova janela apresentada, digite o nome de sua primeira variável, em seguida clique em OK.
Repita os passos para criar as outras variáveis. O vídeo abaixo mostra todos os passos de criação das três variáveis.
- JogadorAVenceu
- JogadorBVenceu
- EmpateAB
Inicializando o valor das variáveis
É importante dar às suas variáveis um valor inicial. O valor inicial é o valor que a variável manterá todas as vezes que o programa for iniciado. Para o nosso programa, atribuiremos a cada variável o valor 0 (zero) no início do programa. Ainda no grupo Variáveis… arraste o bloco definir nomedavariavel para 0
Atualizando o valor das variáveis
O objetivo de nosso programa é permitir o acompanhamento da quantidade de vezes que cada jogador vence e o número de vezes que empatam. Podemos usar os botões A e B para fazer isso.
Relembrando o pseudocódigo:
- Pressionar o botão A além de registrar uma vitória, mostre a letra A no display para garantir que foi registrado corretamente;
- Pressionar o botão B além de registrar uma vitória, mostre a letra B no display para garantir que foi registrado corretamente;
- Pressionar o botão A+B além de registrar um empate, mostre a letra E no display para garantir que foi registrado corretamente.
Já inicializamos essas variáveis e agora precisamos criar o código para atualizar os valores a cada rodada do jogo.
Passos: cada vez que o pressionar o Botão A irá registrar uma vitória para o Jogador A, adicionando 1 ao valor atual da variável JogadorAVenceu, após adicionar o valor, mostrar a letra A indicando que foi registrado corretamente a vitória.
- no menu Entrada, arraste o bloco “no botão A pressionado” para a área de programação
- no menu Variáveis, arraste o bloco ‘alterar JogadorAVenceu por 1‘ para a área de programação, escolha a variável apropriada no menu suspenso do bloco alterar;
- adicione o bloco mostrar leds para apresentar a resposta visual ao jogador reconhecendo que o jogador pressionou um botão;
- adicione o bloco limpar tela.
Repita os passos anteriores para adicionar os blocos “no botão B pressionado“, “no botão A+B pressionado“, “mostrar leds” “alterar nomevariavel por 1” e “limpar tela“. Por fim, ajuste os blocos para atender ao pseucódigo.
Observe que adicionamos um bloco “limpar tela” depois de mostrar “A“, “B” ou “E“.
O que aconteceria se não limpássemos a tela? Use o simulador, experimente, faça testes…
Reta final – Mostrando os valores finais das variáveis
Para finalizar nosso programa, podemos adicionar alguns blocos ao programa de forma que o micro:bit exiba os valores finais de nossas variáveis.
Como já usamos os botões A e B e as combinação entre eles (A+B), podemos usar o bloco manipulador de eventos “em agitar” para acionar esse evento.
Para mostrar o resultado dos jogadores podemos usar o bloco “mostrar string”. Podemos usar o bloco “mostrar número” para apresentar o valor da pontuação, e o “mostrar leds” para mostrar o jogador, o bloco “pausa(ms)” nos ajudará a apresentar um controle de tempo para uma apresentação clara. Abaixo está o resultado do programa completo.
Seja curioso…
Aqui no HacKids Labs temos este lema… a partir do que foi feito até agora é possível construir mais funcionalidades, por exemplo:
Quantas rodadas já jogamos de pedra-papel-tesoura? Para obter este resultado, bastaria somar a quantidade de vitórias do jogador A, mais as vitórias do jogador B e também os empates.
Podemos usar o bloco de Adição localizado no grupo Matemática. Embora existam 4 blocos, um para cada operação, você pode acessar qualquer uma das quatro operações a partir de qualquer um dos quatro blocos, como pode ser visto na imagem ao lado.
Observe que adicionamos alguns blocos dentro da ação “em agitar“, bloco “mostrar string” e logo abaixo, o bloco “mostrar número” e dentro dele o bloco de “adição“.
Como estamos adicionando três variáveis, precisamos de um segundo bloco matemático.
Adicione este segundo bloco dentro do espaço, como mostrado na figura.
Como resultado teremos a possibilidade de adição de três variáveis.
Substitua os valores padrão (zero) pelos nomes das variáveis que queremos somar. Primeiro, adicionamos os valores para JogarAVenceu, JogarBVenceu, em seguida, adicionamos EmpateAB.
Teste no simulador, salve, e envie o programa novamente para o micro:bit.
Lembre-se de que o micro: bit é um dispositivo que processa a entrada e a exibe como saída de alguma forma. Armazenando valores em variáveis, podemos executar operações matemáticas com estes dados e fornecer informações úteis.
Abaixo, deixamos pronto o código para você analisar e fazer as modificações que desejar e um vídeo com tudo funcionando.
Que outras operações matemáticas poderiam fornecer informações valiosas a partir dos valores armazenados nessas variáveis?
Exemplos:
- Que tal calcular e exibir as vitórias e as perdas de um jogador como uma porcentagem de todas as rodadas jogadas.
- Calcule e mostre a porcentagem de jogos empatados entre todas as jogadas.