Lista de Desafios de Fixação e Gabaritos (20 Capítulos)

Estes desafios são a transcrição fiel do “🔥 Desafio de Fixação” de cada capítulo do curso, servindo como cola rápida de correção para o professor. O enunciado e o gabarito de cada item abaixo são exatamente os mesmos apresentados dentro do capítulo correspondente — use esta lista para conferência rápida, sem precisar abrir os 20 capítulos um a um.


🟢 Módulo 1: Primeiros Passos Visuais e Eventos (Cap 01 a 04)

Capítulo 01 - Buzina com Efeito Sonoro

  • Enunciado: Acesse a aba Sons do caminhão, procure pelo som "Car Horn" (ou grave o som de uma buzina). Programe o caminhão para, antes de falar, tocar o som da buzina até o fim usando o bloco 🎵 toque o som [Car Horn v] até o fim.
  • Gabarito em Blocos:
1
2
3
4
5
[Ator: Caminhao_Entrega]
quando clicar em 🏁
vá para x: (-150) y: (-80)
toque o som [Car Horn v] até o fim
diga [Caminhão FastLog pronto para carregar!] por (2) segundos

Capítulo 02 - Botão de Zeramento com Confirmação

  • Enunciado: Crie um ator Botao_Zerar. Ao ser clicado, ele deve emitir um aviso sonoro, resetar as duas variáveis para zero (mude [Estoque_Paletes] para (0) e mude [Faturamento_Dia] para (0)) e avisar no palco que o inventário foi fechado.
  • Gabarito em Blocos:
1
2
3
4
5
[Ator: Botao_Zerar]
quando este ator for clicado
mude [Estoque_Paletes v] para (0)
mude [Faturamento_Dia v] para (0)
diga [Inventário do dia fechado e zerado!] por (3) segundos

Capítulo 03 - Controle de Câmeras de Vigilância

  • Enunciado: Crie três cenários no palco: Camera_Portaria, Camera_Galpao e Camera_Patio. Crie três eventos de teclado: Tecla [1]: mude para o cenário [Camera_Portaria v]; Tecla [2]: mude para o cenário [Camera_Galpao v]; Tecla [3]: mude para o cenário [Camera_Patio v]. Teste a alternância do circuito fechado de TV (CFTV) da empresa!
  • Gabarito em Blocos:
1
2
3
4
5
6
7
8
9
[Palco]
quando a tecla [1 v] for pressionada
mude para o cenário [Camera_Portaria v]

quando a tecla [2 v] for pressionada
mude para o cenário [Camera_Galpao v]

quando a tecla [3 v] for pressionada
mude para o cenário [Camera_Patio v]

Capítulo 04 - Calculadora de Consumo de Diesel

  • Enunciado: Pergunte a distância da viagem em km e pergunte quantos litros de diesel o caminhão consumiu. Calcule a média de consumo em km/l com o operador verde / ((km) / (litros)) e exiba: [A média de consumo foi de X km/l].
  • Gabarito em Blocos:
1
2
3
4
5
6
7
8
[Ator: Painel_Bordo]
quando clicar em 🏁
pergunte [Digite a distância percorrida em km:] e espere
mude [Distancia_Km v] para (resposta)
pergunte [Digite o total de litros de diesel abastecidos:] e espere
mude [Litros_Diesel v] para (resposta)
mude [Media_KmL v] para ((Distancia_Km) / (Litros_Diesel))
diga (junte (junte [A média de consumo foi de ] (Media_KmL)) [ km/l]) por (4) segundos

🟡 Módulo 2: Tomada de Decisão e Lógica Booleana (Cap 05 a 08)

Capítulo 05 - Radar de Velocidade do Pátio

  • Enunciado: No pátio da FastLog, o limite máximo é de 20 km/h. Pergunte ao operador a velocidade registrada pelo radar do pátio. Se a velocidade for estritamente maior que 20, aplique uma multa de R$ 150,00 e diga: [MULTA: Velocidade acima do limite permitido no pátio!].
  • Gabarito em Blocos:
1
2
3
4
5
6
7
8
9
[Ator: Radar_Patio]
quando clicar em 🏁
pergunte [Velocidade capturada pelo radar (km/h):] e espere
mude [Velocidade v] para (resposta)
se <(Velocidade) > (20)> então
    toque o som [Siren v] até o fim
    diga (junte [MULTA POR EXCESSO: ] (Velocidade)) por (2) segundos
    diga [Veículo autuado em R$ 150,00 por violar velocidade máxima de 20 km/h!] por (3) segundos
fim

Capítulo 06 - Validador de Capacidade de Combustível

  • Enunciado: Pergunte o nível atual do tanque de diesel do caminhão em porcentagem (de 0 a 100). Se o tanque estiver com 30% ou mais, diga: [Nível de combustível seguro para viagem]. Senão, toque um alarme e diga: [REABASTECIMENTO OBRIGATÓRIO: Risco de pane seca na rodovia!].
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
[Ator: Sensor_Tanque]
quando clicar em 🏁
pergunte [Nível atual de diesel no tanque (%):] e espere
mude [Nivel_Diesel v] para (resposta)
se <(Nivel_Diesel) > (29)> então
    toque o som [Chime v]
    diga [Nível de combustível seguro para viagem.] por (3) segundos
senão
    toque o som [Alert v] até o fim
    diga [REABASTECIMENTO OBRIGATÓRIO: Risco de pane seca na rodovia!] por (3) segundos
fim

Capítulo 07 - Validação de Três Condições Aninhadas

  • Enunciado: Para uma carreta bitrem viajar à noite, são exigidos: (Descanso_Motorista = 'sim') E (Clima_Bom = 'sim') E (Pressao_Pneus = 'sim'). Encaixe dois blocos <[ ] e [ ]> (um dentro do outro) para avaliar as 3 regras simultaneamente!
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
[Ator: Torre_Controle]
quando clicar em 🏁
pergunte [Motorista descansado? (sim/nao):] e espere
mude [Descanso v] para (resposta)
pergunte [Condições climáticas boas? (sim/nao):] e espere
mude [Clima v] para (resposta)
pergunte [Pneus calibrados? (sim/nao):] e espere
mude [Pneus v] para (resposta)

se <<<(Descanso) = [sim]> e <(Clima) = [sim]>> e <(Pneus) = [sim]>> então
    diga [CONDIÇÃO PERFEITA: Viagem noturna autorizada com segurança máxima!] por (3) segundos
senão
    diga [BLOQUEIO NOTURNO: Pelo menos uma condição de segurança foi violada!] por (3) segundos
fim

Capítulo 08 - Classificador de Severidade de Avarias

  • Enunciado: Pergunte a nota de avaria da embalagem de 1 a 4: 1 Avaria Leve (Reparo de fita stretch); 2 Avaria Média (Troca da caixa de papelão); 3 Avaria Grave (Devolução imediata ao remetente); 4 Avaria Crítica (Acionamento de perito de seguro); qualquer outro valor deve exibir código não reconhecido.
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[Ator: Perito_Qualidade]
quando clicar em 🏁
pergunte [Nível de avaria (1 a 4):] e espere
mude [Grau_Avaria v] para (resposta)

se <(Grau_Avaria) = (1)> então
    diga [AVARIA LEVE: Reforço com fita stretch autorizado.] por (3) segundos
senão
    se <(Grau_Avaria) = (2)> então
        diga [AVARIA MÉDIA: Reembalar produto em nova caixa.] por (3) segundos
    senão
        se <(Grau_Avaria) = (3)> então
            diga [AVARIA GRAVE: Recusa de recebimento e devolução ao remetente!] por (3) segundos
        senão
            se <(Grau_Avaria) = (4)> então
                toque o som [Alert v]
                diga [AVARIA CRÍTICA: Acionamento imediato da seguradora de cargas!] por (3) segundos
            senão
                diga [Código de avaria não reconhecido pelo protocolo de qualidade.] por (3) segundos
            fim
        fim
    fim
fim

🟠 Módulo 3: Repetição, Automação e Movimentação (Cap 09 a 12)

Capítulo 09 - Animação com Efeito de Giro da Esteira

  • Enunciado: Adicione um ator simulando os roletes da esteira. Faça os roletes girarem continuamente dentro de um bloco sempre usando o bloco 🔵 gire para a direita (15) graus com espere (0.05) segundos para criar a ilusão de rolamento contínuo.
  • Gabarito em Blocos:
1
2
3
4
5
6
[Ator: Roletes_Esteira]
quando clicar em 🏁
sempre
    gire para a direita (15) graus
    espere (0.05) segundos
fim

Capítulo 10 - Bloqueio por 3 Erros Consecutivos

  • Enunciado: Aprimore o validador de senha: se o operador errar 3 vezes, encerre o laço com uma trava de segurança e diga: [TERMINAL BLOQUEADO: Contate a chefia de segurança patrimonial!] usando o comando 🟠 pare [este script].
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
[Ator: Terminal_Seguranca]
quando clicar em 🏁
mude [Tentativas v] para (0)
repita até que <<(resposta) = [1234]> ou <(Tentativas) = (3)>>
    pergunte [Digite a senha do terminal:] e espere
    se <não <(resposta) = [1234]>> então
        adicione (1) a [Tentativas v]
        diga (junte [Erro #] (Tentativas)) por (1.5) segundos
    fim
fim

se <(Tentativas) = (3)> então
    mude o efeito [cor v] para (0) // Vermelho
    toque o som [Alert v] até o fim
    diga [TERMINAL BLOQUEADO: Contate a chefia de segurança patrimonial!] por (4) segundos
    pare [este script v]
senão
    diga [ACESSO LIBERADO: Bem-vindo ao sistema de pátio.] por (3) segundos
fim

Capítulo 11 - Lote Dinâmico com Pergunta

  • Enunciado: Pergunte ao operador: [Quantos volumes serão embarcados nesta remessa?]. Pegue a resposta e encaixe diretamente dentro do campo numérico do bloco repita (resposta) vezes! Teste digitando 3, depois teste digitando 10!
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
[Ator: Guindaste]
quando clicar em 🏁
pergunte [Quantos volumes serão embarcados nesta remessa?] e espere
mude [Total_Desejado v] para (resposta)
mude [Contador v] para (1)

repita (Total_Desejado) vezes
    diga (junte (junte [Embarcando item ] (Contador)) (junte [ de ] (Total_Desejado))) por (1.2) segundos
    toque o som [Collect v]
    adicione (1) a [Contador v]
    espere (0.3) segundos
fim
toque o som [Tada v]
diga [Todos os volumes do pedido foram embarcados com sucesso!] por (3) segundos

Capítulo 12 - Scanner de Galpão 4×4 com Alerta de Vazio

  • Enunciado: Crie uma matriz $4 \times 4$ (16 gavetas). Se o peso sorteado na gaveta for menor que 15 kg, emita um balão avisando: [GAVETA QUASE VAZIA - Reabastecer].
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
[Ator: Scanner_Avancado]
quando clicar em 🏁
mude [Y_Coord v] para (90)
repita (4) vezes
    mude [X_Coord v] para (-150)
    repita (4) vezes
        vá para x: (X_Coord) y: (Y_Coord)
        mude [Peso_Sorteado v] para (número aleatório entre (5) e (50))
        se <(Peso_Sorteado) < (15)> então
            toque o som [Buzz v]
            diga [GAVETA QUASE VAZIA - Reabastecer] por (0.5) segundos
        senão
            toque o som [Pop v]
        fim
        adicione (100) a [X_Coord v]
    fim
    adicione (-60) a [Y_Coord v]
fim
diga [Varredura 4x4 concluída com sucesso!] por (3) segundos

🔴 Módulo 4: Estruturas de Dados e Espaço Cartesiano (Cap 13 a 16)

Capítulo 13 - Inserção de Carga Prioritária no Topo

  • Enunciado: Crie o ator Botao_Emergencia_Carga. Ao ser clicado, pergunte a placa da carga de medicamentos e use o bloco insira [resposta] em (1) de [Fila_Chegada v] para furar a fila e colocar a placa na primeira posição!
  • Gabarito em Blocos:
1
2
3
4
5
6
[Ator: Botao_Emergencia_Carga]
quando este ator for clicado
pergunte [Digite a placa da CARGA PRIORITÁRIA:] e espere
insira (resposta) em (1) de [Fila_Chegada v]
toque o som [Alert v]
diga [PRIORIDADE CONCEDIDA: Veículo inserido na posição #1 da fila!] por (3) segundos

Capítulo 14 - Interrupção Imediata da Busca (Early Exit)

  • Enunciado: No exemplo guiado, o laço continua varrendo até o final mesmo depois de já ter achado a peça na posição 1. Modifique a lógica usando repita até que <<(Indice) > (tamanho de [Catalogo_Pecas])> ou <(Localizado) = [sim]>> para que a busca encerre no exato instante em que o item for encontrado, economizando processamento!
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
[Ator: Atendente_Pecas]
quando clicar em 🏁
pergunte [Digite o código da peça procurada:] e espere
mude [Item_Buscado v] para (resposta)
mude [Indice v] para (1)
mude [Localizado v] para [nao]

repita até que <<(Indice) > (tamanho de [Catalogo_Pecas v])> ou <(Localizado) = [sim]>>
    se <(item (Indice) de [Catalogo_Pecas v]) = (Item_Buscado)> então
        toque o som [Bell v]
        diga (junte [Encontrado com sucesso na gaveta #] (Indice)) por (3) segundos
        mude [Localizado v] para [sim]
    senão
        adicione (1) a [Indice v]
    fim
fim

se <(Localizado) = [nao]> então
    diga [Peça não encontrada no catálogo!] por (3) segundos
fim

Capítulo 15 - Identificador Automático de Quadrante

  • Enunciado: No script do caminhão, crie uma condicional que avalie onde ele está no palco: se posição x > 0 E posição y > 0, diga "Setor Nordeste (Exportação)"; se posição x < 0 E posição y > 0, diga "Setor Noroeste (Armazém)"; se posição x < 0 E posição y < 0, diga "Setor Sudoeste (Portaria)"; se posição x > 0 E posição y < 0, diga "Setor Sudeste (Pátio Espera)".
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
[Ator: Caminhao]
quando clicar em 🏁
sempre
    se <<(posição x) > (0)> e <(posição y) > (0)>> então
        diga [Setor Nordeste (Exportação)]
    senão
        se <<(posição x) < (0)> e <(posição y) > (0)>> então
            diga [Setor Noroeste (Armazém)]
        senão
            se <<(posição x) < (0)> e <(posição y) < (0)>> então
                diga [Setor Sudoeste (Portaria)]
            senão
                se <<(posição x) > (0)> e <(posição y) < (0)>> então
                    diga [Setor Sudeste (Pátio Espera)]
                fim
            fim
        fim
    fim
    espere (0.2) segundos
fim

Capítulo 16 - Percurso em Circuito Fechado (Patrulha)

  • Enunciado: Faça uma viatura de segurança do pátio patrulhar continuamente os 4 cantos do pátio dentro de um laço sempre, utilizando 4 blocos de deslize sucessivos.
  • Gabarito em Blocos:
1
2
3
4
5
6
7
8
9
[Ator: Viatura_Segurança]
quando clicar em 🏁
fixe o estilo de rotação para [não gire v]
sempre
    deslize por (2.5) segs até x: (-180) y: (-120)
    deslize por (2.5) segs até x: (-180) y: (120)
    deslize por (2.5) segs até x: (180) y: (120)
    deslize por (2.5) segs até x: (180) y: (-120)
fim

🔵 Módulo 5: Modularização, Comunicação e Projeto Integrador (Cap 17 a 20)

Capítulo 17 - Bloco Desenhar Caixa com Caneta

  • Enunciado: Ative a extensão Caneta (Pen) no canto inferior esquerdo do Scratch. Crie um bloco customizado [Desenhar_Vaga (tamanho)] que use blocos de caneta para desenhar um retângulo de vaga de estacionamento no chão do pátio com o tamanho passado como parâmetro!
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
[Ator: Trator_Pintor]
defina [Desenhar_Vaga (tamanho)]
baixe a caneta
repita (2) vezes
    mova (tamanho) passos
    gire para a direita (90) graus
    mova ((tamanho) / (2)) passos
    gire para a direita (90) graus
fim
levante a caneta

quando clicar em 🏁
apague tudo
fixe a cor da caneta para [#ffff00] // Amarelo Faixa
vá para x: (-100) y: (0)
Desenhar_Vaga (80)

Capítulo 18 - Troca de Telas (Menu Principal ➔ Pátio)

  • Enunciado: Crie um ator de tela inicial com o botão "INICIAR SIMULAÇÃO". Ao ser clicado, ele transmite "COMEÇAR_TURNO". O cenário troca de tela, o botão se esconde com 🟣 esconda e todos os caminhões e cancelas só aparecem com 🟣 mostre quando receberem essa mensagem!
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
[Ator: Botao_Iniciar]
quando clicar em 🏁
mostre
vá para x: (0) y: (0)

quando este ator for clicado
esconda
mude para o cenário [Patio_Cargas v]
transmita [COMEÇAR_TURNO v]

[Ator: Caminhao]
quando clicar em 🏁
esconda

quando eu receber [COMEÇAR_TURNO v]
mostre
diga [Simulação de pátio iniciada!] por (2) segundos

Capítulo 19 - Tela de Fim de Jogo (Game Over Screen)

  • Enunciado: Crie um ator de tela cheia com duas fantasias: Tela_Vitoria e Tela_Derrota. Programe esse ator para ficar escondido no início (quando clicar em 🏁esconda). Quando receber VITORIA, ele surge no centro com a tela verde. Quando receber GAME_OVER, ele surge com a tela vermelha e encerra todos os scripts com 🟠 pare [tudo].
  • Gabarito em Blocos:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
[Ator: Tela_Final]
quando clicar em 🏁
esconda

quando eu receber [VITORIA v]
mude para a fantasia [Tela_Vitoria v]
vá para x: (0) y: (0)
vá para a camada [frente v]
mostre
toque o som [Win v]
pare [tudo v]

quando eu receber [GAME_OVER v]
mude para a fantasia [Tela_Derrota v]
vá para x: (0) y: (0)
vá para a camada [frente v]
mostre
toque o som [Lose v]
pare [tudo v]

Capítulo 20 - FastLog Yard Master Enterprise

  • Nota: O Capítulo 20 é o Projeto Integrador Final e não tem um “Desafio de Fixação” tradicional — o próprio capítulo já explica isso logo na abertura. Em seu lugar, o capítulo traz 🧠 Arquitetura do Projeto, 📖 Código-Fonte Completo e os 🎯 Roteiros Customizados por Área de Formação, que cumprem o papel de aprofundamento final do curso.

  • Gabarito: Não há gabarito de desafio separado — o próprio capítulo já traz o código-fonte completo do FastLog Yard Master Enterprise. Use os três roteiros reais do capítulo para avaliar o aprofundamento do aluno conforme seu perfil:

    • 💻 Roteiro TI (Sistemas, Arquitetura e Clean Code): encapsular os cálculos de pesagem em Meus Blocos, criar um botão de reset total e documentar o projeto com notas nos scripts.
    • 💼 Roteiro ADM (Gestão de Processos e KPIs): calcular a taxa de movimentação (R$ 15,00 por palete descarregado), criar a variável Faturamento_Total_Dia e emitir relatório no palco.
    • 🚛 Roteiro LOG (Operações de Pátio e Supply Chain): cronometrar o tempo de ciclo (Lead Time), alertar gargalo operacional (Demurrage) acima de 15 segundos e gerenciar a fila de caminhões aguardando doca.

    O roteiro completo com todos os atores e scripts detalhados está disponível no Capítulo 20.