Diversão com Operações Lógicas - Parte 2
Operadores de comparação
Condicionais
Comparação
Booleano
No tópico anterior exploramos os blocos SE … ENTÃO … SENÃO. Se quiser testar mais de uma condição antes de realizar uma ação, você poderá aninhar vários blocos SE … ENTÃO … SENÃO, uns dentro de outros, com o objetivo de efetuar os testes necessários.
A figura ao lado ilustra um exemplos de condicionais aninhadas. Neste exemplo, caso o botão esteja pressionado irá mostrar a carinha “triste”, SENÃO, irá verificar se o botão B está pressionado. Caso o botão B esteja pressionado, irá mostrar a carinha “confuso”, SENÃO irá mostrar a carinha “feliz”.
Portanto, a carinha “feliz” sempre será mostrada enquanto nenhum botão (A ou B) sejam pressionados.
Operadores de Comparação
Nós tomamos decisões todos os dias, e cada decisão faz com que você realize determinadas ações. Por exemplo, você pode decidir que “se o sorvete custar menos de R$ 5,00, irei comprá-lo”. Então você pergunta o preço do sorvete e decide se quer ou não comprá-lo. No makecode, também é possível tomar decisões, ao usar operadores de comparação, os valores de duas variáveis ou expressões podem ser comparados para determinar se um é maior, menor ou igual ao outro. Os operadores de comparação também podem ser chamados de operadores relacionais, pois testam a relação entre dois valores. Na figura temos os operadores suportados pelo makecode (igual, diferente, menor, menor ou igual, maior, maior ou igual)
Observe que os blocos tem um formato hexagonal. Isso significa que o resultado da avaliação de um destes blocos corresponde a um valor booleano, que poderá ser verdadeiro ou falso. Por esse motivo, estas expressões também são chamadas de expressões booleanas.
Vamos analisar o Exemplo 1 : Contador, nele usamos esta comparação para definir uma ação.
- Ao iniciar é definido que a variável contar inicia-se com valor zero;
- Sempre será executado a seguinte ação;
- SE o valor de contar for menor ou igual a 9, irá MOSTRAR o valor armazenado na variável contar, em seguida será adicionado 1 ao valor da variável contar.
- SENÃO será definido o valor 0 para a variável contar.
O que há de diferente no Exemplo 2 : Regressivo?
Aproveite o que foi programado no Exemplo 1 e faça as modificações para testar e avaliar o Exemplo 2.
Exemplo 1: Contador
Exemplo 2: Regressivo
Game: Senhor do Tempo
Preparamos um jogo para você aprimorar e reforçar o uso de operadores em conjunto com outros conteúdos que já estudamos nas lições passadas, e principalmente para você se divertir. O objetivo deste jogo é testar sua capacidade de concentração.
1. ao inciar, definir três variáveis, tempo alvo (valor aleatório), tempo percorrido e se foi acionado o iniciar o jogo.
2. mostrar as instruções básicos de uso;
3. sempre adicionar 1 ao tempo, caso a variável iniciar seja verdadeira;
4. o tempo percorrido não será apresentado, o jogador deverá avaliar o momento certo para parar o cronometro mentalmente;
5. ao pressionar o botão A, será atribuído o valor 0 para a variável tempo, definido iniciar como verdadeiro e irá limpar a tela do display de LED´s;
6. ao pressionar o botão B, será definido a variável iniciar como falso, fazendo que não mais adicione 1 à variável tempo que está no bloco sempre.
7. se o tempo decorrido até pressionar o botão B for igual ao tempo alvo, mostrar o coração;
8. senão, mostrar o pato no display, em seguida mostrar o tempo do cronômetro e novamente mostrar as instruções.
Game: Senhor do Tempo v2
Fizemos algumas mudanças nesta nova versão, adicionando vários novos blocos, para demonstrar o grande potencial que o makecode nos oferece para colocar em prática tudo o que imaginarmos, ou quase tudo, hehehe.
1. adicionado o bloco unir, da categoria avançada Texto, o objetivo é permitir unir em uma frase mais de uma string, porém, a variável alvo é um número, então precisamos de um segundo bloco da mesma categoria para converter alvo em texto (convert … to text). Usamos este mesmo recurso em outros locais do programa;
2. adicionado o bloco no botão A+B pressionado para reiniciar todos os valores zerados e novamente apresentar as instruções, basicamente nós copiamos todos os blocos que estão dentro de no iniciar para reproduzir o efeito de resetar o jogo.
Faça suas modificações, teste, experimente… seja curioso e divirta-se!!!
A seguir você tem a programação do projeto feito aqui no HacKids Labs, aproveite para analisar, usar, modificar…
Aproveitamos a caixa fofinha que fizemos para a lição anterior e gravamos o programa, e também fizemos um vídeo para você dar uma olhadinha no resultado. Enquanto você assiste, nós vamos jogar um pouco 😉