Caixa de Ferramentas para Professores - O Propósito desta Leitura
Este Laboratório STEM concentra-se na programação do robô para responder às condições que detecta. Esta primeira leitura pretende introduzir a ideia de condicionais, condições booleanas (VERDADEIRAS ou FALSAS) e o benefício de incluir essas estruturas de programação dentro de um projeto. Os alunos devem começar a reconhecer que incluir programação condicional melhora a forma como o robô responde ao seu ambiente.
Enquanto observa um robô, pode parecer que está a tomar decisões sobre o seu próprio comportamento, mas dentro da programação, está a verificar as condições e a agir de forma adequada. Os alunos podem considerar como as condições influenciam suas próprias decisões informadas.
Decisão a ser tomada: Devo levar um guarda-chuva? Condição
atual: É provável que chova (VERDADEIRO).
Decisão: Leve um guarda-chuva.
Tomada de decisão
Em seu nível mais básico, os programas são escritos para realizar sequências simples de comportamento. Por exemplo, você pode querer que o seu robô dirija para a frente e também faça algumas curvas para chegar a um destino. Mas e se quiser que o seu robot espere pelo momento certo para começar a conduzir e completar o seu percurso? Isso exigiria programação com declarações condicionais. Você usaria uma declaração condicional para definir qual é o "momento certo para começar" dentro do seu projeto. Talvez o "momento certo" seja depois que um botão é pressionado ou quando um sensor detecta um nível específico e, em seguida, começa a dirigir. Quando você observa o comportamento do robô, parecerá que ele está decidindo quando começar a dirigir, mas é porque você define a condição para quando a condução deve começar. Declarações
condicionais são declarações de programação poderosas que usam uma condição booleana (VERDADEIRA ou FALSA). Usando o mesmo cenário de exemplo acima, você pode programar seu robô para verificar repetidamente se a tela do cérebro está pressionada e avançar quando estiver. A declaração condicional nesse projeto pode ler algo semelhante a: "Se a tela detectar que está pressionada (TRUE), execute a sequência de condução". Esta declaração não menciona nenhum comportamento se a condição for FALSA (a tela não é pressionada) para que o robô não tome nenhuma ação quando for FALSO. Declarações condicionais permitem que você desenvolva projetos em que o robô se comporte de maneira diferente, dependendo do que ele sente. Para mais informações sobre a Lógica Booleana, clique aqui.
No exemplo a seguir, se a tela do Cérebro for pressionada (TRUE), o robô avançará. Se a tela do Cérebro não for pressionada (FALSO), o robô parará de dirigir. Isso mostra o robô apenas avançando quando a tela do Cérebro é pressionada, caso contrário, o robô para.
// Begin project code
int main() {
// Inicialização da configuração do robô. NÃO REMOVA!
vexcodeInit();
while (true) {
if (Brain.Screen.pressing()) {
Drivetrain.drive(forward);
}
else {
Drivetrain.stop();
}
}
}
Dicas para Professores - Usando o Preenchimento Automático
O preenchimento automático é um recurso do VEXcode V5 que prevê o restante do comando que você está digitando. Como os alunos estão trabalhando no VEXcode V5, incentive-os a usar o recurso de preenchimento automático para ajudar com a sintaxe. Você pode notar uma função de preenchimento automático ao começar a digitar a instrução. Use as teclas "Para cima" e "Para baixo" para selecionar o nome desejado e, em seguida, pressione "Tab" ou (Enter/Return) no teclado para fazer a seleção. Para obter mais informações sobre esse recurso, confira os artigos em C++.
Estenda a sua aprendizagem
Para expandir esta atividade, peça aos seus alunos que formem equipas e criem um esboço de um labirinto para outra equipa concluir. O labirinto deve exigir um mínimo de três a cinco declarações condicionais. Por exemplo, continue para a frente até que haja uma parede. Em seguida, vire à esquerda. Os alunos devem escrever uma solução para o labirinto em forma de fluxograma. Os alunos devem então trocar labirintos com outra equipe que deve, por sua vez, criar uma solução para o labirinto em forma de fluxograma. As duas equipas devem então comparar as respostas para ver o quão próximas elas correspondem.
Para relacionar esta atividade a jogos online ou para dispositivos móveis, peça aos seus alunos que descrevam o objetivo do seu jogo/aplicativo favorito. Em seguida, peça aos alunos que criem um fluxograma que descreva as dez primeiras decisões sim/não ou verdadeiro/falso que eles seguem em seu jogo.