Introdução à Lógica de Programação
- #Lógica de Programação
Compreender a lógica de programação é fundamental para quem deseja iniciar na área de desenvolvimento de software. Basicamente, isso significa compreender que, para cada tarefa, há um conjunto de regras e instruções a serem seguidas na busca de sua conclusão. Este artigo visa discutir um pouco sobre alguns conceitos utilizados em lógica de programação, como sequência lógica, fluxograma, algoritmos, pseudocódigo e outros.
//Exemplo de pseudocódigo
Algoritmo <nome do algoritmo>
const
<identificador> = <valor>;
var
<identificador>: <tipo>;
inıcio
<bloco de comandos ou instruções>;
fim
Sequência Lógica
O primeiro conceito abordado é o de sequência lógica, que quer dizer que uma tarefa é executada passo a passo até atingir o objetivo final.
//Exemplo de sequência lógica. Objetivo final: pegar a caneta dentro da gaveta.
A gaveta está fechada.
A caneta está dentro da gaveta.
⇒ Precisamos abrir a gaveta primeiro para depois pegar a
caneta.
Instruções e Algoritmos
Os próximos tópicos que gostaria de abordar são instruções e algoritmos. Instruções podem ser definidas como "um conjunto de regras ou normas definidas para a realização ou emprego de algo", ou seja, informações que indicam uma ação a ser executada. Já um Algoritmo é dito "uma sequência finita de passos que levam a execução de uma tarefa". É costume dizer que algoritmos são como receitas, uma sequência de instruções que visam uma meta específica. Como exemplo de algoritmos podemos citar uma receita de bolo:
// Defina os ingredientes
farinha = 2 xícaras
açúcar = 1 xícara
ovos = 2
leite = 1 xícara
fermento em pó = 1 colher de sopa
manteiga derretida = 1/2 xícara
essência de baunilha = 1 colher de chá
// Misture os ingredientes secos
misture(farinha, açúcar, fermento em pó)
// Adicione os ingredientes molhados
misture(ovos, leite, manteiga derretida, essência de baunilha)
// Combine os ingredientes secos e molhados
misture(ingredientes secos, ingredientes molhados)
// Pré-aqueça o forno
preaqueça(180 graus Celsius)
// Unte uma forma
unteForma()
// Despeje a massa na forma
despejeMassaNaForma()
// Asse no forno pré-aquecido por 30-40 minutos, ou até que o bolo esteja dourado e firme.
// Deixe o bolo esfriar antes de servir.
Apesar de não ser o melhor exemplo, é possível perceber algumas características fundamentais dos algoritmos, que são:
- As frases estão no imperativo (são comandos para executar as ações).
- Existe uma ordem para executar as ações (primeiro o passo 1, depois o 2, e assim em diante).
- Algumas ações devem esperar outras terminarem (como desenformar o bolo depois que ele estiver assado).
- Algumas ações podem ter a ordem invertida, outras não (exemplo: untar a forma depois de levar o bolo ao forno pode causar falhas no produto final).
Em resumo, um algoritmo é composto por três etapas:
- Entrada de dados: Identifica-se os dados que serão processados pelo algoritmo (um input do usuário, por exemplo);
- Processamento: Procedimentos para se chegar ao resultado final;
- Saída: Dados gerados pelo processamento.
Um algoritmo é dito correto se, para cada entrada, ele corresponde a saída esperada. Um algoritmo incorreto pode não parar quando se espera ou então retornar um dado equivocado.
Execução Sequencial e Condicional
Como dito anteriormente, a execução de um algoritmo segue passos em sequência. Porém, existem algumas situações onde a execução ou não de um bloco de comandos dependerá de uma condição ser verdadeira ou falsa.
//Trocar a lâmpada
Início:
Acionar o interruptor()
SE a lâmpada acendeu:
Fim.
SENÃO
Trocar a lâmpada()
Pegue uma lâmpada nova
Pegue uma escada
Suba na escada.
Tire a lâmpada queimada.
Coloque a lâmpada nova.
Lique o interruptor
Fim.
Pseudocódigo
Os algoritmos são descritos como pseudocódigos. Este nome é uma alusão à posterior implementação em uma linguagem de programação, um intermediário entre a linguagem falada e a linguagem de programação.
Fluxograma ou Diagrama de Blocos
O diagrama de blocos é uma forma padronizada de representar os passos lógicos de um determinado processamento. Com ele podemos definir uma sequência de símbolos, com significado bem definido, facilitando a visualização dos passos de um processamento.
Constantes e Variáveis
Variáveis e constantes são os elementos básicos de um programa. Uma variável é um espaço reservado na memória do computador para armazenar um tipo de dado determinado. Variáveis devem receber nomes para poderem ser referenciadas e modificadas quando necessário. Um programa deve conter declarações que especificam de que tipo são as variáveis que ele utilizará e as vezes um valor inicial. Elas podem ser de tipo inteiro, real, caractere, etc.
Uma Constante possui valor fixo que não se modifica ao longo do tempo, durante a execução de um programa. Conforme o seu tipo, a constante é classificada como sendo numérica, lógica e literal.
Já uma Variável corresponde a uma posição de memória cujo conteúdo pode ser alterado ao longo do tempo durante a execução de um programa. Embora uma variável possa assumir diferentes valores, ela só pode armazenar um valor por vez.
Conclusão
Este artigo é apenas uma pequena introdução a alguns dos conceitos da lógica de programação. Ainda existem vários outros a serem exploradas, como os operadores e seus tipos; estruturas de decisão, condição e repetição; fluxo de arquivos e etc. Porém, vê-se que estudar estes conceitos e compreendê-los é de fundamental importância para o programador iniciante.