Guia do Instrutor: VisuAlg 3.0

Este guia foi elaborado para apoiar o professor na condução das aulas práticas no laboratório de informática, oferecendo estratégias de nivelamento para turmas com perfis heterogêneos, diagnóstico de erros frequentes de sintaxe e rubricas claras para correção das tarefas entregues no Microsoft Teams.

Sobre as “Atividades Bônus” deste guia
Cada capítulo já traz, na seção “🔥 Desafio de Fixação”, a atividade extra oficial do curso — a mesma que aparece resumida em desafios_de_fixacao.md e que o Questionário de 10 perguntas pode cobrar. As sugestões de "🎓 Atividade Bônus" listadas abaixo, capítulo a capítulo, são ideias adicionais e informais para o professor propor de improviso a alunos avançados que terminem tudo (Prática 1, Prática 2 e o Desafio oficial) antes do restante da turma — não substituem o Desafio oficial e não têm gabarito publicado nos materiais do aluno.


⏱️ Gestão do Tempo em Aula (Bloco de 50 minutos)

Para garantir que os alunos compreendam a teoria e tenham tempo suficiente de prática no computador:

graph LR
    A["1. Contexto & Analogia<br/>(10 - 15 min)<br/>Estudo de Caso FastLog"] --> B["2. Live Coding no Projetor<br/>(20 min)<br/>Digitação Guiada"]
    B --> C["3. Prática 2 & Desafio<br/>(15 - 20 min)<br/>Autonomia / Monitoria"]
    
    style A fill:#2980b9,stroke:#fff,stroke-width:2px,color:#fff
    style B fill:#217346,stroke:#fff,stroke-width:2px,color:#fff
    style C fill:#8e44ad,stroke:#fff,stroke-width:2px,color:#fff
  • 10 a 15 min: Apresente o problema do negócio (FastLog) na lousa ou projetor. Discuta a solução antes de abrir o VisuAlg.
  • 20 min: Abra o VisuAlg 3.0 no projetor e digite a Prática Obrigatória 1 em conjunto com a turma, explicando cada comando e executando com F9.
  • 15 a 20 min: Libere os alunos para resolverem a Prática Obrigatória 2 e o Desafio de Fixação de forma individual ou em duplas.

🚀 Orientações Pedagógicas por Capítulo

🟢 Módulo 1: Fundamentos da Computação e Tipagem Estática (Cap. 01 a 04)

Capítulo 01: Introdução, Algoritmos e Setup

  • Ponto de Atenção: Alunos iniciantes costumam apagar por engano as palavras reservadas algoritmo, inicio ou fimalgoritmo.
  • Dica Didática: Explique que o VisuAlg é como uma receita de bolo ou documento oficial: cada seção tem um lugar fixo. Ensine o atalho F9 (executar) e F8 (passo a passo).
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar um algoritmo que exiba o organograma simplificado da equipe de logística.

Capítulo 02: Memória, Declaração de Variáveis e Tipos

  • Ponto de Atenção: Tentar atribuir texto a variáveis do tipo inteiro ou esquecer de declarar a variável na seção var.
  • Dica Didática: Use a metáfora das gavetas etiquetadas: uma gaveta de números inteiros só aceita caixas inteiras; se tentar colocar texto, a gaveta trava.
  • 🎓 Atividade Bônus (além do Desafio oficial): Declarar variáveis para armazenar a placa, o peso em toneladas, a quantidade de eixos e o status de pagamento do pedágio.

Capítulo 03: Operadores Aritméticos e Atribuição (<-)

  • Ponto de Atenção: Usar o sinal de igual = para atribuição em vez da setinha <- (ou < - com espaço, que gera erro de sintaxe).
  • Dica Didática: Mostre que <- significa “calcule o lado direito e guarde na variável do lado esquerdo”. Apresente a divisão inteira \ e o operador de resto mod.
  • 🎓 Atividade Bônus (além do Desafio oficial): Calcular o troco de uma transação financeira em notas de R$ 50, R$ 20 e R$ 10 usando divisões inteiras e mod.

Capítulo 04: Entrada e Saída de Dados (leia, escreva, escreval)

  • Ponto de Atenção: Confusão entre escreva (mantém o cursor na mesma linha) e escreval (pula para a próxima linha).
  • Dica Didática: Ensine a formatação de casas decimais para números reais: valor:5:2 (reserva 5 espaços com 2 casas decimais).
  • 🎓 Atividade Bônus (além do Desafio oficial): Construir um gerador de comprovante fiscal com cabeçalho, corpo e rodapé perfeitamente alinhados.

🟡 Módulo 2: Controle de Fluxo e Decisão (Cap. 05 a 08)

Capítulo 05: Condicionais Simples (se-entao-fimse)

  • Ponto de Atenção: Esquecer de fechar o bloco com fimse ou esquecer a palavra entao.
  • Dica Didática: Mostre que o desvio condicional é como uma bifurcação na estrada: o carro só pega o desvio se a placa indicar que o caminho está livre.
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar um alerta se a velocidade do caminhão ultrapassar 80 km/h.

Capítulo 06: Condicionais Compostas (se-entao-senao-fimse)

  • Ponto de Atenção: Colocar condição após a palavra senao (ex: senao (x < 10) é erro; deve ser senao se).
  • Dica Didática: Enfatize que o senao é a saída de emergência: ele é executado automaticamente se o teste de cima for Falso.
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar um calculador de bônus salarial baseado em metas atingidas com 3 faixas de premiação.

Capítulo 07: Operadores Lógicos Booleanos (e, ou, nao)

  • Ponto de Atenção: Uso incorreto de parênteses em testes lógicos compostos: se (peso > 500) e (urgente = "SIM") entao.
  • Dica Didática: Desenhe a Tabela-Verdade na lousa e faça exemplos práticos do cotidiano (portas de segurança de bancos).
  • 🎓 Atividade Bônus (além do Desafio oficial): Validar se um motorista tem CNH categoria “E” E exame toxicológico em dia para liberar a viagem.

Capítulo 08: Seleção Múltipla (escolha-caso)

  • Ponto de Atenção: Tentar usar operadores de comparação como caso > 10 (o escolha do VisuAlg avalia apenas valores pontuais e exatos — avaliação de faixas/intervalos é recurso avançado, não coberto no capítulo).
  • Dica Didática: Mostre que o escolha é perfeito para menus numéricos (1. Cadastrar, 2. Consultar, 3. Sair).
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar um menu de conversão de unidades logísticas (Quilogramas, Libras, Toneladas).

🟠 Módulo 3: Laços de Repetição e Iterações (Cap. 09 a 12)

Capítulo 09: Laço Pré-Testado enquanto-faca

  • Ponto de Atenção: Esquecer de incrementar a variável de controle dentro do loop, gerando o temido Loop Infinito.
  • Dica Didática: Mostre o botão “Parar” do VisuAlg e enfatize: “Todo laço precisa de um passo que o aproxime do fim!”.
  • 🎓 Atividade Bônus (além do Desafio oficial): Somar números digitados pelo operador até que ele digite o número -999 (parada por sentinela).

Capítulo 10: Laço Pós-Testado repita-ate

  • Ponto de Atenção: Inversão da condição de parada: no enquanto (x < 10) o loop roda enquanto for verdade; no repita ... ate (x >= 10) o loop roda até que se torne verdade!
  • Dica Didática: Explique que o repita-ate sempre roda pelo menos uma vez, sendo a melhor escolha para menus interativos.
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar um sistema de validação de senha com limite de 3 tentativas antes do bloqueio.

Capítulo 11: Laço Determinístico para-de-ate-passo-faca

  • Ponto de Atenção: Tentar alterar o valor da variável de controle manualmente dentro do bloco para (má prática que desestabiliza o laço).
  • Dica Didática: Use o passo -1 para demonstrar contagens regressivas de lançamento de foguetes ou despacho de cargas.
  • 🎓 Atividade Bônus (além do Desafio oficial): Gerar a tabuada de preços de frete para viagens de 10 em 10 km (usando passo 10).

Capítulo 12: Laços Aninhados e Varredura

  • Ponto de Atenção: Usar a mesma variável contadora para os dois laços (ex: usar i no laço externo e no interno).
  • Dica Didática: Use as variáveis canônicas i (para linhas/externo) e j (para colunas/interno).
  • 🎓 Atividade Bônus (além do Desafio oficial): Desenhar um tabuleiro de xadrez ou grade de galpão na tela usando caracteres [ ] e [X].

🔴 Módulo 4: Coleções e Estruturas Homogêneas (Cap. 13 a 16)

Capítulo 13: Vetores Unidimensionais (Listas)

  • Ponto de Atenção: No VisuAlg, a indexação de vetores começa em 1 (e não em 0 como em C/Python). Tentar acessar vetor[0] ou além do limite gera erro de estouro de memória.
  • Dica Didática: Visualize o vetor como uma estante com gavetas numeradas de 1 a N.
  • 🎓 Atividade Bônus (além do Desafio oficial): Ler 10 temperaturas de uma câmara fria e calcular a temperatura média.

Capítulo 14: Pesquisa e Manipulação em Vetores

  • Ponto de Atenção: Exibir a mensagem “Item não encontrado” dentro do laço de busca para cada elemento comparado.
  • Dica Didática: Ensine a técnica da Flag Booleana (encontrado <- FALSO). O aviso de não encontrado só é disparado no final, após inspecionar todas as posições.
  • 🎓 Atividade Bônus (além do Desafio oficial): Encontrar o maior e o menor valor de uma lista e exibir a posição exata onde eles estão armazenados.

Capítulo 15: Matrizes Bidimensionais (Tabelas)

  • Ponto de Atenção: Inverter as coordenadas matriz[coluna, linha] em vez do padrão matriz[linha, coluna].
  • Dica Didática: Lembre a ordem clássica: Linha primeiro, Coluna depois (Dica mnemônica: “Linha e Coluna = LC”).
  • 🎓 Atividade Bônus (além do Desafio oficial): Preencher uma matriz identidade de ordem 4 (1 na diagonal principal e 0 nas demais posições).

Capítulo 16: Operações Avançadas em Matrizes

  • Ponto de Atenção: Confusão nos acumuladores separados para total por linha e total por coluna.
  • Dica Didática: Mostre como zerar o acumulador de linha logo antes de iniciar o laço interno j.
  • 🎓 Atividade Bônus (além do Desafio oficial): Calcular o faturamento total e o faturamento específico de cada uma das 3 filiais da empresa em uma matriz 3×4.

🔵 Módulo 5: Modularização e Projeto Final (Cap. 17 a 20)

Capítulo 17: Procedimentos e Escopo

  • Ponto de Atenção: Tentar declarar um procedimento dentro do bloco inicio do algoritmo principal (deve ser declarado antes!).
  • Dica Didática: Mostre que procedimentos tornam o código principal limpo e legível como um livro de tópicos.
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar um procedimento que receba um texto e o exiba centralizado dentro de uma moldura de asteriscos *.

Capítulo 18: Funções com Retorno Tipado

  • Ponto de Atenção: Esquecer de definir o tipo de retorno no cabeçalho da função (funcao CalcularTotal() : real) ou esquecer o comando retorne.
  • Dica Didática: Diferença-chave: Procedimento executa uma ordem; Função faz a conta e te entrega o resultado na mão.
  • 🎓 Atividade Bônus (além do Desafio oficial): Criar uma função booleana ValidarPlaca(placa: caractere): logico que retorne verdadeiro se o tamanho for igual a 7.

Capítulo 19: Engenharia de Software e Decomposição

  • Ponto de Atenção: Código “espaguete” com funções gigantes fazendo muitas coisas ao mesmo tempo.
  • Dica Didática: Ensine o princípio da Responsabilidade Única: cada procedimento ou função deve fazer apenas uma coisa e fazê-la com excelência.
  • 🎓 Atividade Bônus (além do Desafio oficial): Modularizar um algoritmo de ordenação de dados simplificado.

Capítulo 20: Projeto Integrador Final (FastLog TMS)

  • Ponto de Atenção: Falta de integração entre os módulos de cadastro e os relatórios.
  • Dica Didática: Acompanhe a entrega dos alunos com foco na estrutura e na clareza da interface de console.
  • 🎓 Atividade Bônus (além do Desafio oficial): Implementar mecanismo de exclusão lógica ou alteração de registros no sistema.

📋 Rubrica de Avaliação de Algoritmos (Microsoft Teams)

Critério de AvaliaçãoExcelente (100%)Satisfatório (70%)Insuficiente (30%)
1. Correção Lógica e ExecuçãoO algoritmo compila sem erros (F9) e resolve o problema para todos os casos de teste.O algoritmo compila, mas falha em casos extremos (ex: divisão por zero ou limites).O código apresenta erros de sintaxe e não compila no VisuAlg.
2. Tipagem e Seção varVariáveis com nomes significativos (pesoCarga, precoUnitario) e tipos primitivos corretos.Variáveis funcionais, mas com nomes genéricos (x, a1, aux) ou tipos inadequados.Variáveis não declaradas na seção var ou incompatibilidade de tipos.
3. Indentação e OrganizaçãoCódigo perfeitamente identado, com comentários explicativos e estrutura modular limpa.Código funcional, mas com identação irregular dificultando a leitura dos blocos.Código desorganizado em linha única sem identação de laços ou condicionais.
4. Validação e Experiência (UX)Mensagens de saída claras, menus formatados e tratamento de entradas inválidas.Mensagens de saída básicas sem formatação de casas decimais.Telas poluídas sem instruções ao usuário sobre o que digitar.
5. Autonomia e Desafio de FixaçãoConcluiu o Desafio de Fixação com raciocínio lógico autônomo e criativo.Tentou realizar o desafio com pequenos desvios de lógica.Não realizou a atividade de fixação.

💡 Dica de Ouro: A Técnica de Feynman e Peer Instruction

Quando um estudante concluir a atividade com facilidade, nomeie-o como Monitor de Bancada. Ensinar um colega consolida o raciocínio do aluno avançado e mantém a turma inteira sincronizada e produtiva.