No dia-a-dia é comum utilizarmos a expressão "é lógico" quando nos deparamos com algo óbvio, algo que é claro. No entanto, a palavra lógica pode ter um outro significado. Se recorrermos ao dicionário teremos os seguintes significados (dicionário Michaelis):
1. Modo de raciocinar tal como de fato se exerce: Lógica natural.
2. Estudo que tem por objeto determinar quais as operações que são válidas e quais as que não o são: Lógica formal, que trata dos conceitos, juízos e raciocínios, independentemente de seu conteúdo.
Ou seja, trata-se de uma forma de raciocinar, segundo os conceitos, juízos e raciocínios. Logo, podemos concluir que a Lógica de programação trata-se de uma forma de raciocinar baseado em premissas e afirmações válidas.
Mais precisamente, podemos dizer que a lógica de programação é utilizada para resolver problemas computacionais, seguindo as regras dos paradigmas de programação.
Por exemplo, caso as seguinte premissas sejam verdadeiras:
André é maior que Estela.
Estela é maior que Pedro.
Pelo raciocínio lógico posso afirmar que André é maior que Pedro (Pedro < Estela < André).
A lógica de programação trata ainda de ordenar o pensamento, ou seja, são passos a serem seguidos para se solucionar um problema computacional.
Esse problema pode ser a execução de um cálculo matemático, a análise de um dado, a gravação de uma informação em um banco de dados, etc... Infinitas são a possibilidades do que a lógica de programação pode solucionar.
Numa gaveta, em um quarto escuro existem 6 pares de meias vermelhas, sendo que tem-se 2, 5 vezes desse valor de meias brancas. A quantidade de meias brancas dividida por 3 resulta no total de meias na cor azul, e a quantidade de meias amarelas é 2 vezes a quantidade de meias azuis. Sabendo-se que o quarto está totalmente escuro, e que não há como identificar as meias pela cor, indique a mínima de pés de meia que deve ser retirada da gaveta de uma única vez para garantir que ao menos um par de meias da mesma cor será sorteado.
Em informática, o raciocínio lógico nos permite ordenarmos o pensamento para resolvermos problemas computacionais, ou seja, a lógica de programação trata de indicar os passos a serem seguidos para que um problema seja resolvido.
Para tal existem uma gama de ferramentas que auxiliam o programador a estruturar sua lógica de programação, sendo que a ferramenta inicial é o ALGORITMO.
Um algoritmo é uma sequência de passos lógicos, ordenados e enumerados que visam atingir um objetivo pré-definido.
Como o Google Maps sabe como ir de São Paulo para a Bahia pelo menor caminho possível?
Ele utiliza de algoritmos de localização de rotas.
(O algoritmo acima se chama Dijkstra's algorithm)
Eles usam Algoritmos de compressão para áudios e vídeos.
Obviamente que os algoritmos apresentados são bastantes complexos e não muito comuns na nossa vida cotidiana, Porém, no nosso dia-a-dia, Nós utilizamos algoritmos simples. Não acredita?
Então veja. por exemplo, um algoritmo que você faz ao atravessar a rua:
Inicio
Olhar para direita
Olhar para a esquerda
Se estiver vindo carro
Não atravesse
Senão
Atravesse
fim
Caso os passos sejam invertidos, por exemplo, se eu primeiro tentar atravessar a rua e depois olhar para direita, O meu objetivo não vai ser atingido com sucesso (A única coisa que provavelmente será atingida será você).
Então, quando se trata de um algoritmo computacional, nós devemos identificar o problema (objetivo), descobrir as informações e enumerar as ações a serem seguidas para se chegar ao objetivo.
criar um algoritmo que faça a leitura de dois valores e apresente o produto dos mesmos
Informações: Os dois números tem que ser multiplicados.
Ações: Efetuar a multiplicação e apresentar o resultado.
O algoritmo ficaria assim:
1 - Leia o primeiro valor (valor1)
2 - Leia o segundo valor (valor2)
3 - Efetuar o produto (resultado <- valor1 * valor2)
4 - Apresentar a soma (resultado)