Introdução à lógica de programação: descubra os fundamentos essenciais

Formação Técnica e Profissional

Introdução à lógica de programação

Lógica de programação é o processo de pensar de forma estruturada e sequencial para resolver um problema ou executar uma tarefa, utilizando uma linguagem que um computador possa entender.

Em termos práticos, é a arte de planejar as instruções que um computador seguirá para alcançar um determinado resultado. Essa habilidade é fundamental para qualquer pessoa que deseje desenvolver softwares, aplicativos ou trabalhar na área de Tecnologia da Informação.

Dominar a lógica de programação não se limita apenas a escrever código; trata-se de desenvolver a capacidade de analisar situações, decompor problemas complexos em partes menores e criar soluções eficientes e organizadas.

Características da Lógica de Programação

As principais características da lógica de programação garantem que os programas sejam claros, eficientes e funcionais:

  • Sequencialidade: As instruções são executadas na ordem em que são apresentadas. Cada passo depende do anterior.
  • Clareza e Objetividade: A lógica deve ser fácil de entender e não deixar margens para ambiguidades. Cada instrução deve ter um propósito claro.
  • Eficiência: A solução deve ser a mais otimizada possível, consumindo o mínimo de recursos (tempo e memória) do computador.
  • Modularidade: A capacidade de dividir um problema grande em partes menores e independentes (módulos ou funções), facilitando o desenvolvimento e a manutenção.
  • Abstração: Focar nos aspectos essenciais de um problema, ignorando detalhes irrelevantes para a solução.

Estrutura da Lógica de Programação

A estrutura da lógica de programação é geralmente composta por três elementos fundamentais que, combinados, permitem a criação de algoritmos:

  • Sequência: Execução de comandos um após o outro, na ordem definida. É a base de qualquer programa.
    Exemplo:

    1. Receber um número.
    2. Receber outro número.
    3. Somar os dois números.
    4. Mostrar o resultado.

  • Seleção (ou Desvio Condicional): Permite que o programa tome decisões com base em condições. Ele escolhe um caminho de execução entre dois ou mais possíveis.
    Exemplo:

    Se (a nota for maior ou igual a 7), então (aprovar o aluno), senão (reprovar o aluno).

  • Repetição (ou Laço/Loop): Permite que um bloco de comandos seja executado várias vezes, seja por um número determinado de vezes ou enquanto uma condição for verdadeira.
    Exemplo:

    Repetir (enquanto houver alunos na lista): (ler o nome do aluno e registrar sua presença).

Tipos de Lógica de Programação

Embora a lógica de programação em si seja um conceito unificado, podemos pensar em abordagens ou “estilos” que guiam a sua aplicação:

Lógica Imperativa

Esta abordagem foca em descrever como fazer algo, fornecendo uma sequência de comandos que alteram o estado do programa. A lógica imperativa é subdividida em:

  • Procedural: Organiza os comandos em procedimentos (ou funções), que são blocos de código reutilizáveis que realizam tarefas específicas.
    Exemplo:

    Para calcular a área de um círculo, criamos um procedimento calcularAreaCirculo(raio) que contém a fórmula pi * raio * raio.

  • Orientada a Objetos (POO): Organiza o código em torno de “objetos”, que combinam dados (atributos) e comportamentos (métodos). É uma das abordagens mais utilizadas atualmente.
    Exemplo:

    Um objeto Carro pode ter atributos como cor, modelo e métodos como acelerar() e frear().

Lógica Declarativa

Ao contrário da imperativa, a lógica declarativa foca em descrever o que precisa ser feito, sem especificar o passo a passo exato de como executar. O sistema se encarrega de descobrir o melhor caminho.

  • Funcional: Trata a computação como a avaliação de funções matemáticas, evitando mudanças de estado e dados mutáveis.
    Exemplo:

    Uma função dobrar(numero) que retorna numero * 2 sem alterar o valor original de numero.

  • Lógica: Baseada na teoria da lógica formal, onde os programas consistem em um conjunto de fatos e regras, e o sistema deduz a resposta.
    Exemplo:

    Fato: “Todos os homens são mortais.” Regra: “Se X é homem, então X é mortal.” Pergunta: “Sócrates é mortal?” Resposta: Sim.

Diferença entre Algoritmo e Programa

Aspecto Algoritmo Programa
Definição Sequência lógica de passos para resolver um problema Implementação de um algoritmo em uma linguagem de programação
Natureza Abstrata, conceitual, independente de linguagem Concreto, escrito em código, executável
Forma Linguagem natural, fluxogramas, pseudocódigo Linguagem de programação (Python, Java, C++, etc.)
Execução Não executável diretamente pelo computador Executável pelo computador

Exemplo de Lógica de Programação: Calculando a Média de Duas Notas

Para compreender melhor, vamos aplicar a lógica de programação para criar um algoritmo que calcula a média de duas notas.

Algoritmo em Pseudocódigo:

INÍCIO
    DECLARAR nota1, nota2, media COMO REAL

    ESCREVER "Por favor, digite a primeira nota:"
    LER nota1

    ESCREVER "Por favor, digite a segunda nota:"
    LER nota2

    media = (nota1 + nota2) / 2

    ESCREVER "A média das notas é: ", media
FIM

Neste exemplo:

  • Sequência: As instruções são executadas na ordem: declaração de variáveis, solicitação da primeira nota, leitura, solicitação da segunda nota, leitura, cálculo da média e exibição do resultado.
  • Variáveis: nota1, nota2 e media são espaços na memória para armazenar os valores.
  • Entrada/Saída: ESCREVER exibe mensagens para o usuário, e LER captura o que o usuário digita.
  • Processamento: A linha media = (nota1 + nota2) / 2 é onde ocorre o cálculo, a lógica principal para resolver o problema.

Este simples algoritmo demonstra como a lógica de programação nos guia para estruturar a solução de um problema de forma clara e compreensível para um computador.

Exercícios com Gabarito

1. (ENEM 2022) Um estudante quer resolver um problema de matemática que envolve a soma de dois números. Para isso, ele utiliza um computador. O processo de pensar passo a passo e descrever as ações que o computador deve realizar para somar os números é um exemplo de:

  • a) Desenvolvimento de hardware
  • b) Criação de interface gráfica
  • c) Lógica de programação
  • d) Análise de sistemas
  • e) Gerenciamento de banco de dados

Resposta: Alternativa c: Lógica de programação. O problema descreve a essência da lógica de programação: definir a sequência de passos para resolver uma tarefa computacional.

2. (CURSO TÉCNICO TI) Qual das estruturas de controle abaixo permite que um bloco de código seja executado repetidamente enquanto uma determinada condição for verdadeira?

  • a) Sequência
  • b) Seleção (If-Else)
  • c) Laço de Repetição (Loop)
  • d) Declaração de Variável
  • e) Entrada de Dados

Resposta: Alternativa c: Laço de Repetição (Loop). Esta estrutura é especificamente projetada para executar blocos de código múltiplas vezes com base em uma condição.

3. (ENEM 2021) Ao criar um website, um programador precisa garantir que, se o usuário digitar a senha incorreta, uma mensagem de erro seja exibida. Caso contrário, o acesso é permitido. Essa decisão baseada em uma condição é um exemplo do uso de qual estrutura lógica?

  • a) Loop infinito
  • b) Lógica sequencial pura
  • c) Estrutura de repetição
  • d) Estrutura de seleção condicional
  • e) Concatenação de strings

Resposta: Alternativa d: Estrutura de seleção condicional. A necessidade de escolher entre dois caminhos (exibir erro ou permitir acesso) com base em uma condição (senha correta/incorreta) define uma estrutura de seleção condicional (como if-else).

Super desconto só aqui em Centro de Estudos Online