You are on page 1of 10

1.

Introdução à Lógica de Programação


Neste capítulo serão definidos alguns dos conceitos básicos necessários
que vão ajudar o leitor na compreensão dos mecanismos utilizados na escrita
de programas de computador.

1.1 O que é Lógica?


A palavra lógica está normalmente relacionada com o modo de pensar
de um indivíduo: racionalidade e coerência. Sendo ela frequentemente
associado à matemática, porém tem também sua aplicação em outras ciências.

Fig.1: Ilustração de Lógica


Fonte: Internet

”Podemos relacionar a lógica com a “correção do pensamento”, pois uma de


suas preocupações é determinar quais operações são válidas e quais não são,
fazendo análises das formas e leis do pensamento. Como filosofia, ela procura
saber por que pensamos assim e não de outro jeito. Com arte ou técnica, ela
nos ensina a usar corretamente as leis do pensamento.” Lógica de Programação –
André Luiz Villar Forbellone

“Poderíamos dizer que a lógica é a “arte de bem pensar”, que é a “ciência das
formas do pensamento”. Visto que a forma mais complexa do pensamento é o
raciocínio, a lógica estuda a “correção do raciocínio”. Podemos ainda dizer que
a lógica tem em vista a “ordem da razão”. Isto dá a entender que a nossa razão
pode funcionar desordenadamente. Por isso a lógica estuda e ensina a colocar
“ordem no pensamento”.” Lógica de Programação – André Luiz Villar Forbellone

Ex.:
a) Todo cachorro é um mamífero.
Todo mamífero é um animal.
Portanto, todo cachorro é um animal.

b) Japão é um país do continente asiático.


Todos os japoneses são de Japão.
Logo, todos os japoneses são asiáticos.

Os exemplos acima refere-se a lógica proposicional, que representam um


argumento composto por duas premissas e uma conclusão sendo estabelecido

1
uma relação que pode ser valido ou não, este é um dos objetivos da lógica,
estudar técnicas de formalização, dedução e análise com o intuito de verificar a
vaidade de argumentos. Devemos ressaltar que, apesar da aparente coerência
de um encadeamento lógico, este pode ser válido ou não em sua estrutura.
Neste sentido, a lógica também objetiva a criação de uma representação mais
formal, que se contrapõe à linguagem natural, que é suscetível a
argumentações informais.
A lógica é também utilizada no dia a dia, muitas vezes sem as pessoas se
perceberem de tão normal que ela é, no momento de uma argumentação em
uma conversa ou em uma justificação pela escrita. Quando quer se provar não
ter cometido nenhum erro.

1.2 O que é Lógica de Programação

Pessoas que querem trabalhar na área da informática como desenvolvedor


de programas e sistemas, precisam conhecer a respeito da lógica de
programação, pois ela ajudará a definir uma seqüência lógica de
desenvolvimento. Isto envolve pelas duas características importantes que um
programador deve possuir: ordem e clareza.

Lógica de programação
Técnica de encadear pensamentos para atingir um determinado objetivo.

Fig.2: Ilustração de Lógica de Programação


Fonte: Internet

1.3 O que é Seqüência Lógica


Para se executar qualquer atividade na vida é preciso desenvolver uma
mente que possa pensar em todas as etapas de trabalho necessárias e
planejar os passos para se alcançar a meta final, para se ter êxito. Este
processo de raciocinio pode ser descrito como uma seqüência de instruções,
que devem ser seguidas para se cumprir uma determinada tarefa.

Seqüência Lógica
Passos executados até atingir um objetivo ou solução de um problema.

2
Fig.3: Ilustração de Seqüência Lógica
Fonte: Internet
1.4 O que são Instruções
Buscando no dicionário temos a primeira definição de Instrução: “Conjunto
das formalidades e informações necessárias para elucidar uma causa e pô-la
em estado de ser julgada.” (Michaelis) Na área de informática temos: “palavra ou
expressão única que representa uma operação.” (Michaelis).
Vale aqui ressaltar que uma ordem isolada não permite realizar o processo
completo, é necessário um conjunto de instruções colocadas em ordem
seqüencial lógica. Por exemplo, se quisermos preparar uma omelete de
batatas, é necessário seguir uma seqüência de instruções: descascar as
batatas, quebrar e bater os ovos, esquentar o óleo, fritar as batatas, etc...
Claro que essas instruções têm que ser executadas em uma ordem
coerente – não se podem descascar as batatas depois de fritá-las. Por isto,
uma instrução tomada isoladamente não faz sentido; para atingirmos o
resultado desejado, é preciso colocar em prática o conjunto de todas as
instruções, na ordem correta.

Instruções
Conjunto de regras ou normas definidas para a realização ou emprego de algo. Em informática, é o que
indica a um computador uma ação elementar a executar.

Fig.4: Ilustração de Instrução


Fonte: Internet

1.4 O que é Algoritmo?


A busca de melhora no desempenho é conseguido pela implementação
de automação nos processos envolvidos nas atividades, assim uma tarefa
deixa de ser desempenhada pelo homem e passa a ser executada por
máquinas. Estes dispositivos podem ser de natureza mecânico, eletrônico ou
inclusive misto. Para que esse processo automatizado de uma tarefa tenha

3
sucesso é preciso que a máquina que vai atuar para este fim seja capaz de
desempenhar com eficiência, garantindo a repetibilidade de seu trabalho.
É necessário que os passos sejam especificados com clareza e exatidão
e serem realizados em cada uma das fases do processo a ser automatizado,
bem como a seqüência em que estas fases devem ser realizadas. A
especificação da seqüência ordenada de passos que deve ser seguida para a
realização de uma tarefa, garantindo a sua repetibilidade, dá-se o nome de
algoritmo.
Outras definição:
"Serve como modelo para programas, pois sua linguagem é intermediária à
linguagem humana e às linguagens de programação, sendo então, uma boa
ferramenta na validação da lógica de tarefas a serem automatizadas."

“Os algoritmos servem para representar a solução de qualquer problema, mas


no caso do Processamento de Dados, eles devem seguir as regras básicas de
programação para que sejam compatíveis com as linguagens de
programação.”

Fig.5: Exemplos de Algoritmos


Fonte: Internet

A palavra algoritmo (sistema particular de notação), à primeira vista,


parece-nos estranha. Embora possua designação desconhecida, fazemos uso
constantemente de algoritmos em nosso cotidiano: a maneira como uma
pessoa toma banho é um algoritmo. Outros algoritmos freqüentemente
encontrados são:

• instruções para montagem de um móvel;

• descrição de uma receita para preparo de um assado;

• preenchimento do formulário de declaração do imposto de renda;

• procedimento para dirigir um veículo;

• cálculo mensal das contas de água, luz e telefone; etc.

4
A seguir estão alguns dos vários os conceitos que se encontram citados
em literaturas especializadas sobre o Algoritmo:

“Um conjunto finito de regras que provê uma seqüência de operações para
resolver um tipo de problema específico” (KNUTH]
“Seqüência ordenada, e não ambígua, de passos que levam à solução de
um dado problema” (TREMBLAY)
“Processo de cálculo, ou de resolução de um grupo de problemas
semelhantes, em que se estipulam, com generalidade e sem restrições, as
regras formais para a obtenção do resultado ou da solução do problema”
(AURÉLIO)

1.4.1. Por que precisamos de algoritmos?


Algumas pessoas eminentes na área da Ciência da Computação,
citaram para mostrar a importância do uso de algoritmos:

“A noção de algoritmo é básica para toda a programação de computadores”.


(KNUTH - Professor da Universidade de Stanford, autor da coleção “The art of computer pro-
gramming”)

“O conceito central da programação e da ciência da computação é o


conceito de algoritmo”. (WIRTH - Professor da Universidade de Zurique, autor de diversos
livros na área e responsável pela criação de linguagens de programação como ALGOL, PASCAL e
MODULA-2)

O computador executa operações em uma seqüência, isto reforça a


necessidade de especificar uma seqüência de passos lógicos para que o ele
possa executar uma tarefa solicitada qualquer, a máquina tem por si só
vontade própria e inteligência, faz apenas o que é proposto. Utilizando as
várias ferramentas algorítmicas existentes no mercado, podem-se produzir
soluções para os problemas encontrados, sem se importar com o modelo de
computador e mesmo se preocupar com a linguagem de programação a ser
utilizado.

1.4.2. Características de um Algoritmo


Todo algoritmo deve apresentar algumas características básicas:

• ter um início;
• ter um fim;
• não dar margem à dupla interpretação (não ter duplo sentido);
• capacidade de receber dado(s) de entrada do mundo exterior;
• poder gerar informações de saída para o mundo externo ao do
ambiente do algoritmo;
• ser efetivo (todas as etapas especificadas no algoritmo devem ser
alcançáveis em um tempo finito).

1.4.3. Formas de representação de um Algoritmo


As representações mais comuns dos passos de um algoritmo serão
mostradas a seguir:

5
1.4.3.1 Descrição narrativa
Nesta forma o algoritmo é descrito passo a passo todas as tarefas a
serem executados na língua mãe, no nosso caso em português.

Exemplo: Receita de Bolo:


1- Providenciar manteiga, ovos, 2 Kg de massa, etc.
2- Misturar os ingredientes
3- Despejar a mistura na fôrma de bolo
4- Levar a fôrma ao forno
5- Esperar 20 minutos
6- Retirar a fôrma do forno
7- Deixar esfriar
8- Provar

Pontos fortes:
• escrito na língua mãe, facilitando o entendimento;
• cada passo utiliza um verbo indicando a ação;
• uso de termos corriqueiros;

Pontos fracos:
• imprecisão;
• pouco confiável, a imprecisão acarreta a desconfiança;
• extenso, normalmente escreve-se muito para dizer pouca coisa.

Fig.6: Ilustração de Algoritmo com Descrição Narrativa


Fonte: Internet

1.4.3.2 Fluxograma
Uma das maneiras de representar os algoritmos é através de símbolos gráficos
mostrando a seqüência de execução, esta representação é chamado de
fluxograma. Existem símbolos padronizados para início, entrada de dados,
cálculos, saída de dados, fim e outras funções.

6
Um algoritmo é uma seqüência ordenada e finita de passos que
representam o modo de execução de uma tarefa. Como uma receita, descrição
de um procedimento e a definição uma seqüência de instruções a que
obedecidas atingi-se a meta desejada. Estes procedimentos não podem ser
redundantes nem subjetivas na sua definição, devem ser claras e precisas.

Fig.7: Ilustração de Diagrama de Bloco


Fonte: Internet

Temos alguns algoritmos já memorizados em nossa mente que as


executamos automaticamente, as das operações básicas de matemática:
adição, multiplicação, divisão e subtração de números reais decimais. Também
se podem citar os manuais de instalações de equipamentos eletrônicos, como
um computador, que explicam passo-a-passo como interligar as partes que o
compõe, gabinete, monitor, teclado, mouse, a impressora e a conexão à rede
elétrica e a Internet. As coisas mais simples da vida também podem ser
descritas por seqüências lógicas.

Por exemplo:

• “Chutar um pênalti”:

7
.
Fig.8: Cobrança de Pênalti
Fonte: Internet

1) Pegar a bola;
2) Colocar na marca do Pênalti;
3) Dar alguns passos para trás da bola;
4) Correr em direção a bola
5) Chutar a bola em direção ao gol e longe do goleiro
6) Sair para o abraço;

• “Calcular a média aritmética de duas notas”:

Fig.9: Aritmética
Fonte: Internet

1) Escreva o primeiro número no registro B1


2) Escreva o segundo número no retângulo B2
3) Soma o número B1 com número B2
4) Divide o resultado da soma por 2
5) Verifica se o a média é maior ou igual a 7
6) Se sim o aluno está aprovado
7) Se não o aluno está reprovado

8
Fig.10: Exemplo de Diagrama de Bloco
Fonte: Internet

1.5 O que são Programas de Computadores?

Os programas de computadores são compostos de comandos para


execução de uma atividade, algoritmos, escritos em uma linguagem de
programação como: Pascal, C, Cobol, Java, Visual Basic e outras que podem
ser interpretadas e ou executadas por um computador ou uma outra máquina
programável. Um programa segue rigorosamente a estrutura definida por um
algoritmo, por isto a importância de se fazer uma boa análise do problema e
traduzi-la em uma seqüência lógica de execução.

Fig.:11 Programas de Computador


Fonte: Internet

Programa de Computador
uma coleção de instruções que descrevem uma tarefa a ser realizada por um computador. O termo pode ser
uma referência ao código fonte, escrito em alguma linguagem de programação, ou ao arquivo que contém a
forma executável deste código fonte. (Fonte: Wikipédia)

9
1.6 Exercícios de Fixação

1) Crie uma seqüência lógica para tomar banho.

2) Faça um algoritmo para somar dois números e multiplicar o resultado


pelo primeiro número.

3) Descreva a seqüência lógica para trocar um pneu de um carro.

4) Faça um algoritmo para trocar uma lâmpada.

10

You might also like