Skip to content

Atividade

Números ímpares e pares

Intermediário | MakeCode, Python | Botões, Visor LED | Algoritmos, Divisão, Número e valor posicional, Seleção

Primeiro passo: o projeto

O que é?

Jogue um jogo de matemática com seu BBC micro:bit! Programe-o para escolher um número aleatório de 1 a 100. Você pode decidir se o número é ímpar ou par e, em seguida, usar seu micro:bit para testar se você está certo.

Estes dois vídeos mostram o que você fará e como desenvolver o código:

O que você aprenderá:

Você aprenderá como transformar um algoritmo matemático simples em código, como usar seleção em programas de computador e como dividir um número e usar seu resto.

Se você quiser que o aprendizado se concentre nas habilidades matemáticas em vez de na codificação, então o código pronto está disponível para download imediato. Clique em 'Abrir no MakeCode' ou baixe o arquivo hex abaixo.

Como funciona:

  • Este programa é baseado em um algoritmo para determinar se um número é ímpar ou par. O algoritmo diz: divida o número por dois e, se o resto for 0, o número é par. Caso contrário, o número é ímpar.
  • Quando você pressiona o botão A, o programa escolhe um número aleatório entre 1 e 100 e o exibe no display de LED do micro:bit. (O programa escolhe um número aleatório em vez do mesmo número a cada vez para tornar o jogo divertido de jogar mais de uma vez.)
  • Quando você pressiona o botão B, o programa divide o número por 2 e calcula seu resto. 
  • O programa então usa uma declaração ‘se… senão’. Se o resto for 0, a palavra ‘par’ aparece no display de LED do micro:bit. Caso contrário, ele mostra a palavra ‘ímpar’.
  • Quando coisas diferentes podem acontecer com base em diferentes condições em um programa de computador como este, isso é conhecido como seleção. Você encontrará termos-chave como seleção explicados em nossos cartazes de vocabulário e glossário.

Itens necessários:

  • Um micro:bit (ou simulador MakeCode);
  • Editor MakeCode ou Python;
  • Conjunto de baterias (opcional).

Segundo passo: é hora de programar

1from microbit import *
2import random
3
4# An error could appear if you press button B without pressing button A first.
5# If the variable ‘number’ has not been assigned.
6# To work around this, the value of 101 is assigned to the variable 'number' 
7# at the start of the program. When you press button B the program tests 
8# first to see if the value of ‘number’ is 101 - if it is, it shows a helpful message.
9
10number = 101
11
12while True:
13    if button_a.was_pressed():
14        number = random.randint(1, 100)
15        display.scroll(number)   
16    if button_b.was_pressed():
17        if number == 101:
18            display.scroll('no number chosen yet') 
19        elif number%2 == 0:
20            display.scroll('even')   
21        else:
22            display.scroll('odd') 

Terceiro passo: vamos deixar o código ainda melhor

  • Encontre uma maneira de mostrar o número aleatório escolhido mais de uma vez.
  • Se você pressionar o botão B antes de pressionar o botão A, nenhum número aleatório terá sido escolhido e o display de LED mostrará a palavra 'par'. Você pode adaptar o código para que isso não aconteça? Veja a versão em Python do programa para ter uma ideia de como fazer isso.
  • Adapte o programa para explorar outros fatores de números, por exemplo, se 3 é um fator de 100.