Plano de Curso: Lógica de Programação com Portugol Studio
Público-alvo: Estudantes dos Cursos Técnicos em Administração, Logística, Desenvolvimento de Sistemas e iniciantes em Engenharia de Software.
Carga Horária: 20 Capítulos (40 a 60 horas-aula).
Metodologia: Aprendizagem Baseada em Problemas (PBL) com estudos de caso corporativos da transportadora fictícia FastLog, contextualização prática e desenvolvimento de software estruturado no ambiente Portugol Studio.
🎯 Visão Geral e Competências Desenvolvidas
O Portugol Studio foi projetado para aproximar o estudante da sintaxe moderna das linguagens de mercado (C, Java, C#, PHP e JavaScript), utilizando chaves { }, operadores relacionais modernos (==, !=) e indexação de vetores baseada em zero (0..N-1).
Ao final do curso, o aluno será capaz de:
- Declarar e manipular variáveis e constantes com tipagem estática (
inteiro,real,cadeia,caracter,logico). - Implementar fluxos de decisão simples, encadeados e de múltipla escolha (
se-senao,escolha-caso). - Construir laços de repetição determinísticos e condicionais (
enquanto,faca-enquanto,para). - Armazenar e pesquisar conjuntos de dados estruturados em vetores e matrizes bidimensionais com indexação base 0.
- Modularizar programas complexos utilizando funções com e sem retorno (
funcao vaziovsfuncao tipo), com passagem de parâmetros por valor. - Desenvolver um sistema completo de gestão logística integrando todas as camadas de software em modo console.
📚 Estrutura Programática Detalhada
Módulo 1: Fundamentos da Computação e Entrada/Saída
Capítulo 01: Introdução à Lógica, Algoritmos e Setup do Portugol Studio
- Teoria: O que é lógica de programação e pensamento computacional? O que são algoritmos? A estrutura formal do Portugol Studio (
programa { funcao inicio() { } }). O interpretador Portugol Studio e atalhos de execução (Shift + F6). - Prática (Atividade 01): Construção do primeiro programa funcional, saída de mensagens formatadas com caracteres de escape (
\ne\t) e crachá digital da empresa FastLog.
Capítulo 02: Memória, Declaração de Variáveis e Tipos de Dados
- Teoria: Como a memória RAM armazena dados. Os cinco tipos de dados fundamentais:
inteiro,real,cadeia(strings),caracter(char isolado) elogico(verdadeiro/falso). Regras de nomenclatura de identificadores (CamelCase e snake_case). - Prática (Atividade 02): Mapeamento de variáveis para cadastro de veículos da frota e cálculo manual de tributos.
Capítulo 03: Operadores Matemáticos, Expressões e Atribuição (=)
- Teoria: O operador de atribuição (
=). Operadores aritméticos: soma (+), subtração (-), multiplicação (*), divisão (/) e módulo/resto (%). Operadores unários de incremento e decremento (++,--,+=). Ordem de precedência matemática. - Prática (Atividade 03): Calculadora de consumo médio de combustível (KM/L) e simulador de custos de frete por tonelada.
Capítulo 04: Interação com o Usuário (Comandos leia e escreva)
- Teoria: Comandos de entrada
leia()e saídaescreva(). Concatenação de variáveis e textos com vírgulas. Formatação de casas decimais com a bibliotecaMatematica.arredondar(). - Prática (Atividade 04): Construção de um formulário de cadastro de cargas e emissor automático de recibos de expedição.
Módulo 2: Controle de Fluxo e Estruturas de Decisão
Capítulo 05: Condicionais Simples (se)
- Teoria: Lógica condicional e desvios de rota. A estrutura
se (condicao) { ... }. Operadores relacionais modernos (==,!=,>,<,>=,<=). - Prática (Atividade 05): Sistema de alerta de excesso de peso e bloqueio de balança rodoviária.
Capítulo 06: Condicionais Compostas e Encadeadas (se / senao)
- Teoria: A bifurcação completa
se ... senao(If / Else). Aninhamento de condições para tomada de decisões com múltiplos caminhos (se ... senao se ... senao). - Prática (Atividade 06): Classificador de risco de transporte e apólice de seguro de cargas valiosas.
Capítulo 07: Operadores Lógicos e Portas Booleanas (e, ou, nao)
- Teoria: Álgebra Booleana e tabelas-verdade. A conjunção
e(AND), a disjunçãoou(OR) e a negaçãonao(NOT). - Prática (Atividade 07): Triagem de fornecedores qualificados para obtenção do Selo Ouro baseado em prazo e taxa de avarias.
Capítulo 08: Seleção Múltipla (escolha-caso-pare)
- Teoria: A estrutura
escolha (variavel) { caso 1: ... pare caso contrario: ... }(Switch/Case). A importância mandatória do comandopare(break). - Prática (Atividade 08): Menu interativo da URA do SAC da transportadora e tarifador de frete por modal de transporte.
Módulo 3: Estruturas de Repetição e Automação
Capítulo 09: Laço Pré-Testado enquanto (While Loop)
- Teoria: Estruturas de repetição condicionais com teste no início (
enquanto (condicao) { ... }). Variáveis contadoras (cont++) e acumuladoras (soma += valor). Parada por valor sentinela. - Prática (Atividade 09): Leitor de volumes descarregados com parada por sentinela (valor zero).
Capítulo 10: Laço Pós-Testado faca-enquanto (Do-While Loop)
- Teoria: Estrutura de repetição com teste no final (
faca { ... } enquanto (condicao)). Condição de permanência no Portugol (continua rodando ENQUANTO for verdadeiro). Ideal para menus de navegação. - Prática (Atividade 10): Validação de senha de operador com limite de tentativas e menu principal interativo.
Capítulo 11: Laço Determinístico para (For Loop)
- Teoria: A estrutura de contagem fixa
para (inicializacao; condicao; incremento) { ... }. Contagem progressiva (i++) e regressiva (i--). - Prática (Atividade 11): Gerador automático de tabela progressiva de fretes e cronômetro de contagem regressiva de embarque.
Capítulo 12: Laços de Repetição Aninhados e Varredura
- Teoria: Laços dentro de laços (
paradentro depara). Complexidade de tempo quadrática ($O(N^2)$). Varredura de coordenadas bidimensionais. - Prática (Atividade 12): Mapeamento de posições de prateleiras em um galpão logístico (Andares $\times$ Prateleiras).
Módulo 4: Estruturas de Dados Homogêneas (Vetores e Matrizes)
Capítulo 13: Vetores I: Arrays Unidimensionais (Indexação Base Zero)
- Teoria: O que são vetores (Arrays 1D). Declaração
tipo nome[N]. A regra de ouro da indexação base 0 (0atéN-1). Acesso por índicevetor[i]. - Prática (Atividade 13): Registro de ocupação de vagas de caminhões no pátio e cálculo de faturamento trimestral.
Capítulo 14: Vetores II: Algoritmos de Pesquisa e Filtros
- Teoria: Algoritmo de Busca Linear (Linear Search). Encontrando o Maior e Menor elemento. Acumulação e cálculo de médias estatísticas em vetores.
- Prática (Atividade 14): Localizador de SKUs no estoque e auditoria do motorista com maior quilometragem rodada.
Capítulo 15: Matrizes I: Arrays Bidimensionais (Tabelas em Memória)
- Teoria: O que são matrizes (Arrays 2D). Declaração
tipo nome[Linhas][Colunas]. Coordenadas cartesianasmatriz[l][c]. Preenchimento com laços aninhados. - Prática (Atividade 15): Grade de ocupação de posições em galpão logístico (3×3) e controle de estoque por filial.
Capítulo 16: Matrizes II: Processamento e Cálculos Complexos
- Teoria: Somatório de linhas, somatório de colunas, cálculo da Diagonal Principal (
l == c) e matriz transposta. - Prática (Atividade 16): Matriz de custos de fretes cruzados entre 4 capitais brasileiras (Origem $\times$ Destino) e consolidação de faturamento semestral.
Módulo 5: Modularização, Funções e Projeto Integrador
Capítulo 17: Funções I: Procedimentos sem Retorno (funcao vazio)
- Teoria: O que é modularização? Princípio DRY (Don’t Repeat Yourself). A estrutura
funcao vazio Nome(parametros) { ... }. Variáveis Locais vs Variáveis Globais. Passagem de parâmetros por valor. - Prática (Atividade 17): Criação de sub-rotinas para cabeçalho visual, molduras de interface e rotina de cálculo de ICMS.
Capítulo 18: Funções II: Funções com Parâmetros e Retorno Tipado
- Teoria: Funções com retorno tipado (
funcao tipo Nome(params) { retorne x }) e passagem de parâmetros por valor, incluindo parâmetros do tipocadeia. - Prática (Atividade 18): Biblioteca modular de funções de frete: cálculo de pedágio, seguro de carga e conversor de moedas.
Capítulo 19: Engenharia de Software e Decomposição Algorítmica
- Teoria: Como projetar sistemas antes de codificar. Refatoração de código, tratamento de entradas inválidas e criação de menus de navegação robustos.
- Prática (Atividade 19): Construção de um módulo de controle de estoque com operações de inserção, busca e listagem em memória.
Capítulo 20: Projeto Integrador Final - FastLog TMS Enterprise
- Teoria: Arquitetura de Software em Camadas (Interface, Processamento e Dados). Consolidação de variáveis, loops, matrizes, procedimentos e funções em um único sistema executável.
- Prática (Atividade 20): Desenvolvimento, teste e apresentação do sistema completo de gestão de frota e estoque da FastLog, com menu interativo, relatórios estatísticos e pesquisa dinâmica.