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:

  1. Que tal calcular e exibir as vitórias e as perdas de um jogador como uma porcentagem de todas as rodadas jogadas.
  2. Calcule e mostre a porcentagem de jogos empatados entre todas as jogadas.
Rolar para cima