Professor Márcio Leite
LÓGICA DE
PROGRAMAÇÃO
1
Apresentação
2
◻ Quem sou eu?
◻ Quem são vocês?
◻ O que esperam da matéria?
Metodologia
3
◻ Aulas Expositivas
◻ Aulas práticas em laboratório
Critérios de Avaliação
4
◻ Composição da Nota
 Provas
 Listas de exercícios
 Trabalho Final
Disciplina
5
◻ Algoritmos
� Lógica de Programação
� Características
� Estruturas
Objetivo Geral
6
◻ Capacitar o aluno a analisar problemas,
especificar e desenvolver a lógica
necessária para as soluções
Ferramentas
7
◻ Papel
◻ Caneta
◻ Celular
◻ Computador
VISÃO GERAL SOBRE
PROGRAMAÇÃO DE
COMPUTADORES
8
◻ Qualquer pessoa pode aprender a programar um
computador. Programação não exige um alto QI ou
um dom natural em matemática avançada
◻ Programação exige vontade de aprender e paciência
para nunca desistir
◻ Programação é uma habilidade. Como escalar
montanhas, dançar ou atirar: algumas pessoas são
naturalmente melhores que outras, mas qualquer
pessoa pode melhorar se praticar com regularidade
◻ Não tenha medo de falhar: a falha nada mais é do
que parte do aprendizado
◻ Programar pode ser divertido
INTRODUÇÃO
9
◻ Conceito
� Do grego logiké, que significa “arte de raciocinar”.
� Aristóteles, filósofo grego (384-322 a.C.), foi o fundador da
lógica.
� Lógica é o ramo da filosofia que cuida das regras do bem pensar
ou do pensar correto
◻ Portanto, lógica é um instrumento do pensar.
� Podemos dizer que a lógica é a arte de pensar corretamente.
� A lógica ensina a colocar Ordem no Pensamento.
INTRODUÇÃO
10
◻ Exemplos de Lógica
� Quando chove, não é preciso regar as plantas do
jardim.
Hoje Choveu.
Logo, hoje não é preciso regar o jardim.
� O Brasil fica na América do Sul.
A América do Sul fica no continente americano.
Logo, os brasileiros são americanos.
INTRODUÇÃO
11
◻ Lógica de Programação
� Técnica de encadear pensamentos para atingir um
determinado objetivo.
� Necessária para desenvolver programas e sistemas,
pois permite definir a sequência lógica para a solução
de um problema.
INTRODUÇÃO
12
◻ Quais ações você faz para retirar dinheiro do
banco??
INTRODUÇÃO
13
◻ Ações
� Retirar o cartão
� Informar a opção de saque
� Sair do banco
� Inserir o cartão
� Aguardar um caixa livre
� Entrar na fila
� Entrar no banco
� Informar o valor a ser retirado
� Aguardar processamento
� Retirar dinheiro
� Digitar a senha
Executando
essas ações
nesta ordem
conseguiremos
sacar dinheiro?
INTRODUÇÃO
14
◻ Possível Solução
� 1. Entrar no banco
� 2. Entrar na fila
� 3. Aguardar um caixa livre
� 4. Inserir o cartão
� 5. Informar a opção de saque
� 6. Informar o valor a ser retirado
� 7. Digitar a senha
� 8. Aguardar processamento
� 9. Retirar dinheiro
� 10. Retirar o cartão
� 11. Sair do banco
INTRODUÇÃO
15
◻ Sequência Lógica
� Sequencia Lógica é um conjunto de instruções
executadas (sequencialmente) até atingir um objetivo
ou solução de um problema.
� Estes pensamentos podem ser descritos como uma
sequência de instruções, que devem ser seguidas
para se cumprir uma determinada tarefa
INTRODUÇÃO
Lógica de Programação – Professor : Lucas Lima
16
◻ Instruções
� Na linguagem comum:
■ “um conjunto de regras ou normas definidas para a
realização de algo”.
� Na linguagem do computador:
■ é a informação que indica a um computador uma
operação elementar a executar
■ Ex.: “somar”, “subtrair”, “comparar se é maior”, etc
� Uma ordem isolada não permite realizar o processo completo,
para isso é necessário um conjunto de instruções colocadas em
ordem sequencial lógica.
INTRODUÇÃO
17
◻ Em computação
� instrução é a informação que indica a um
computador uma ação a ser executada
IMPRIMA
COMPARE
SOME
ProfessôôÔÔ!!! Para que eu quero aprender isso?
INTRODUÇÃO
19
INTRODUÇÃO
20
◻ Algoritmos
� É uma sequência de instruções organizadas de
forma lógica e estruturada (sem desvios),
expressas em linguagem natural (Português
estruturado), que tem por finalidade resolver um
problema ou descrever uma tarefa.
� Um algoritmo poderia ser comparado a uma
receita
Proposições
21
◻ Uma das aplicações da lógica é a
representação simbólica de raciocínios. Desse
modo, podemos dizer que as afirmações que
realizamos diariamente são transformadas em
símbolos para demonstrar fatos ou transmitir
informações.
◻ Uma proposição representa uma afirmação
(ou sentença), que pode assumir o valor
lógico verdadeiro ou o valor falso.
Valores lógicos
22
◻
Valores lógicos
23
◻ Há sentenças que não possuem valor lógico,
e, por isso, não são consideradas
proposições. Por exemplo:
◻ Como está você?
◻ Ela é muito talentosa.
◻ Existe vida em outros planetas.
Valores lógicos
24
◻ Proposições.
◻ Os cachorros possuem quatro patas. V
◻ Os gatos adoram leite. V
Proposições Compostas.
25
◻ É importante notar que o valor lógico de uma
proposição composta depende dos valores
lógicos das proposições simples que a
compõem.
Proposições Compostas.
26
◻ Na lógica matemática, cada conectivo é
representado por um símbolo, conforme é
apresentado na Tabela.
Conectivos
27
Conectivos
28
Tabela verdade “E”
29
◻ Exemplo:
◻ Os cachorros possuem quatro patas e os
gatos são mamíferos.
◻ Verdadeiro.
◻ Os cachorros miam e os gatos são mamíferos.
◻ Falso.
Tabela verdade “OU”
30
◻ Exemplo:
Os cachorros possuem quatro patas ou os
gatos adoram leite.
Verdadeiro.
Os cachorros tem duas patas e os gatos
também.
Falso.
Tabela verdade “Condicional”
31
◻ Exemplo:
Se os cachorros possuem quatro patas, então
os gatos adoram leite.
Verdadeiro.
Tabela verdade “Bi
Condicional”
32
◻ Exemplo:
◻ p = João ganhará presentes no Natal.
◻ q = João é um bom menino.
◻ João ganhará presentes no Natal, se e
somente se for um bom menino
Verdadeiro.
Exercícios.
33
◻ Tabela-verdade da proposição (a ∨ b) → a.
◻ Tabela-verdade da proposição (p ∨ ∼p).
◻ Tabela-verdade da proposição (p ∧ ∼p).
◻ Tabela-verdade da proposição (p → ∼p).
◻ Tabela-verdade da proposição (p ∧ q) v p
◻ Tabela-verdade da proposição (p ∧ q) v q
INTRODUÇÃO
34
◻ Características de um algoritmo
� Finito: um algoritmo tem de terminar ao fim de
um número finito de passos.
� Definido: cada passo do algoritmo tem de ser
definido com precisão.
� Entrada: um algoritmo pode ter zero ou mais
entradas.
� Saídas: um algoritmo tem uma ou mais saídas.
INTRODUÇÃO
35
◻ Eficiência (fazer certo) e Eficácia (coisa certa)
� Todo algoritmo pode ser eficiente mas nem todos
são eficazes, nem por isso deixam de resolver o
problema.
� Várias caminhos diferentes podem ser utilizados
para resolver o problema, nem sempre são os
melhores caminhos, mas resolvem.
INTRODUÇÃO
36
◻ Definição de Programa
� Algoritmo escrito em uma linguagem de
computador (linguagem de programação - C,
Pascal, COBOL, Fortran, Basic, Java, etc.)
� O código do programa é interpretado e
executado pelo computador.
INTRODUÇÃO
Lógica de Programação – Professor : Lucas Lima
37
◻ Montagem do algoritmo
� Qual o problema?
� Quais as restrições do problema?
� Quais são as entradas?
� Quais as saídas?
� ENTRADA: São os dados de entrada do algoritmo
� PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado
final
� SAÍDA: São os dados já processados
INTRODUÇÃO
38
◼ Teste de Mesa
▪ Após desenvolver um algoritmo ele deverá sempre
ser testado. Este teste é chamado de TESTE DE
MESA, que significa, seguir as instruções do
algoritmo de maneira precisa para verificar se o
procedimento utilizado está correto ou não.
INTRODUÇÃO
Lógica de Programação – Professor : Lucas Lima
39
◻ Exemplo de Algoritmos
� Algoritmo para troca de pneu
1. Verifica qual pneu está furado
2. Posiciona o macaco para levantar o carro
3. Pega o estepe
4. Solta os parafusos
5. Substitui o pneu furado
6. Recoloca os parafusos
7. Desce o carro
8. Guarda o macaco e o pneu furado
INTRODUÇÃO
40
◻ Regras para criar um algoritmo
� Usar somente um verbo por frase
� Imaginar que você está desenvolvendo um
algoritmo para pessoas que não trabalham com
informática
� Usar frases curtas e simples
� Ser objetivo
� Procurar usar palavras que não tenham sentido
dúbio
Dúvidas?
41
INTRODUÇÃO
42
Vamos Praticar??
EXERCÍCIOS
43
◻ 1. Monte uma sequencia para fazer uma
macarronada com molho de tomate.
◻ 2.Crie uma sequência lógica para tomar
banho.
◻ 3.Faça uma sequencia para trocar uma
lâmpada.
Não vamos ficar parados!
44
Importante: abordar o máximo de detalhes em um
algoritmo.
Não esquecer: como será interpretado o que foi
escrito?
DICAS
45

Aula 01 - Apresentação - Introdução a Lógica.pptx

  • 1.
  • 2.
    Apresentação 2 ◻ Quem soueu? ◻ Quem são vocês? ◻ O que esperam da matéria?
  • 3.
    Metodologia 3 ◻ Aulas Expositivas ◻Aulas práticas em laboratório
  • 4.
    Critérios de Avaliação 4 ◻Composição da Nota  Provas  Listas de exercícios  Trabalho Final
  • 5.
    Disciplina 5 ◻ Algoritmos � Lógicade Programação � Características � Estruturas
  • 6.
    Objetivo Geral 6 ◻ Capacitaro aluno a analisar problemas, especificar e desenvolver a lógica necessária para as soluções
  • 7.
  • 8.
    VISÃO GERAL SOBRE PROGRAMAÇÃODE COMPUTADORES 8 ◻ Qualquer pessoa pode aprender a programar um computador. Programação não exige um alto QI ou um dom natural em matemática avançada ◻ Programação exige vontade de aprender e paciência para nunca desistir ◻ Programação é uma habilidade. Como escalar montanhas, dançar ou atirar: algumas pessoas são naturalmente melhores que outras, mas qualquer pessoa pode melhorar se praticar com regularidade ◻ Não tenha medo de falhar: a falha nada mais é do que parte do aprendizado ◻ Programar pode ser divertido
  • 9.
    INTRODUÇÃO 9 ◻ Conceito � Dogrego logiké, que significa “arte de raciocinar”. � Aristóteles, filósofo grego (384-322 a.C.), foi o fundador da lógica. � Lógica é o ramo da filosofia que cuida das regras do bem pensar ou do pensar correto ◻ Portanto, lógica é um instrumento do pensar. � Podemos dizer que a lógica é a arte de pensar corretamente. � A lógica ensina a colocar Ordem no Pensamento.
  • 10.
    INTRODUÇÃO 10 ◻ Exemplos deLógica � Quando chove, não é preciso regar as plantas do jardim. Hoje Choveu. Logo, hoje não é preciso regar o jardim. � O Brasil fica na América do Sul. A América do Sul fica no continente americano. Logo, os brasileiros são americanos.
  • 11.
    INTRODUÇÃO 11 ◻ Lógica deProgramação � Técnica de encadear pensamentos para atingir um determinado objetivo. � Necessária para desenvolver programas e sistemas, pois permite definir a sequência lógica para a solução de um problema.
  • 12.
    INTRODUÇÃO 12 ◻ Quais açõesvocê faz para retirar dinheiro do banco??
  • 13.
    INTRODUÇÃO 13 ◻ Ações � Retiraro cartão � Informar a opção de saque � Sair do banco � Inserir o cartão � Aguardar um caixa livre � Entrar na fila � Entrar no banco � Informar o valor a ser retirado � Aguardar processamento � Retirar dinheiro � Digitar a senha Executando essas ações nesta ordem conseguiremos sacar dinheiro?
  • 14.
    INTRODUÇÃO 14 ◻ Possível Solução �1. Entrar no banco � 2. Entrar na fila � 3. Aguardar um caixa livre � 4. Inserir o cartão � 5. Informar a opção de saque � 6. Informar o valor a ser retirado � 7. Digitar a senha � 8. Aguardar processamento � 9. Retirar dinheiro � 10. Retirar o cartão � 11. Sair do banco
  • 15.
    INTRODUÇÃO 15 ◻ Sequência Lógica �Sequencia Lógica é um conjunto de instruções executadas (sequencialmente) até atingir um objetivo ou solução de um problema. � Estes pensamentos podem ser descritos como uma sequência de instruções, que devem ser seguidas para se cumprir uma determinada tarefa
  • 16.
    INTRODUÇÃO Lógica de Programação– Professor : Lucas Lima 16 ◻ Instruções � Na linguagem comum: ■ “um conjunto de regras ou normas definidas para a realização de algo”. � Na linguagem do computador: ■ é a informação que indica a um computador uma operação elementar a executar ■ Ex.: “somar”, “subtrair”, “comparar se é maior”, etc � Uma ordem isolada não permite realizar o processo completo, para isso é necessário um conjunto de instruções colocadas em ordem sequencial lógica.
  • 17.
    INTRODUÇÃO 17 ◻ Em computação �instrução é a informação que indica a um computador uma ação a ser executada IMPRIMA COMPARE SOME
  • 18.
    ProfessôôÔÔ!!! Para queeu quero aprender isso?
  • 19.
  • 20.
    INTRODUÇÃO 20 ◻ Algoritmos � Éuma sequência de instruções organizadas de forma lógica e estruturada (sem desvios), expressas em linguagem natural (Português estruturado), que tem por finalidade resolver um problema ou descrever uma tarefa. � Um algoritmo poderia ser comparado a uma receita
  • 21.
    Proposições 21 ◻ Uma dasaplicações da lógica é a representação simbólica de raciocínios. Desse modo, podemos dizer que as afirmações que realizamos diariamente são transformadas em símbolos para demonstrar fatos ou transmitir informações. ◻ Uma proposição representa uma afirmação (ou sentença), que pode assumir o valor lógico verdadeiro ou o valor falso.
  • 22.
  • 23.
    Valores lógicos 23 ◻ Hásentenças que não possuem valor lógico, e, por isso, não são consideradas proposições. Por exemplo: ◻ Como está você? ◻ Ela é muito talentosa. ◻ Existe vida em outros planetas.
  • 24.
    Valores lógicos 24 ◻ Proposições. ◻Os cachorros possuem quatro patas. V ◻ Os gatos adoram leite. V
  • 25.
    Proposições Compostas. 25 ◻ Éimportante notar que o valor lógico de uma proposição composta depende dos valores lógicos das proposições simples que a compõem.
  • 26.
    Proposições Compostas. 26 ◻ Nalógica matemática, cada conectivo é representado por um símbolo, conforme é apresentado na Tabela.
  • 27.
  • 28.
  • 29.
    Tabela verdade “E” 29 ◻Exemplo: ◻ Os cachorros possuem quatro patas e os gatos são mamíferos. ◻ Verdadeiro. ◻ Os cachorros miam e os gatos são mamíferos. ◻ Falso.
  • 30.
    Tabela verdade “OU” 30 ◻Exemplo: Os cachorros possuem quatro patas ou os gatos adoram leite. Verdadeiro. Os cachorros tem duas patas e os gatos também. Falso.
  • 31.
    Tabela verdade “Condicional” 31 ◻Exemplo: Se os cachorros possuem quatro patas, então os gatos adoram leite. Verdadeiro.
  • 32.
    Tabela verdade “Bi Condicional” 32 ◻Exemplo: ◻ p = João ganhará presentes no Natal. ◻ q = João é um bom menino. ◻ João ganhará presentes no Natal, se e somente se for um bom menino Verdadeiro.
  • 33.
    Exercícios. 33 ◻ Tabela-verdade daproposição (a ∨ b) → a. ◻ Tabela-verdade da proposição (p ∨ ∼p). ◻ Tabela-verdade da proposição (p ∧ ∼p). ◻ Tabela-verdade da proposição (p → ∼p). ◻ Tabela-verdade da proposição (p ∧ q) v p ◻ Tabela-verdade da proposição (p ∧ q) v q
  • 34.
    INTRODUÇÃO 34 ◻ Características deum algoritmo � Finito: um algoritmo tem de terminar ao fim de um número finito de passos. � Definido: cada passo do algoritmo tem de ser definido com precisão. � Entrada: um algoritmo pode ter zero ou mais entradas. � Saídas: um algoritmo tem uma ou mais saídas.
  • 35.
    INTRODUÇÃO 35 ◻ Eficiência (fazercerto) e Eficácia (coisa certa) � Todo algoritmo pode ser eficiente mas nem todos são eficazes, nem por isso deixam de resolver o problema. � Várias caminhos diferentes podem ser utilizados para resolver o problema, nem sempre são os melhores caminhos, mas resolvem.
  • 36.
    INTRODUÇÃO 36 ◻ Definição dePrograma � Algoritmo escrito em uma linguagem de computador (linguagem de programação - C, Pascal, COBOL, Fortran, Basic, Java, etc.) � O código do programa é interpretado e executado pelo computador.
  • 37.
    INTRODUÇÃO Lógica de Programação– Professor : Lucas Lima 37 ◻ Montagem do algoritmo � Qual o problema? � Quais as restrições do problema? � Quais são as entradas? � Quais as saídas? � ENTRADA: São os dados de entrada do algoritmo � PROCESSAMENTO: São os procedimentos utilizados para chegar ao resultado final � SAÍDA: São os dados já processados
  • 38.
    INTRODUÇÃO 38 ◼ Teste deMesa ▪ Após desenvolver um algoritmo ele deverá sempre ser testado. Este teste é chamado de TESTE DE MESA, que significa, seguir as instruções do algoritmo de maneira precisa para verificar se o procedimento utilizado está correto ou não.
  • 39.
    INTRODUÇÃO Lógica de Programação– Professor : Lucas Lima 39 ◻ Exemplo de Algoritmos � Algoritmo para troca de pneu 1. Verifica qual pneu está furado 2. Posiciona o macaco para levantar o carro 3. Pega o estepe 4. Solta os parafusos 5. Substitui o pneu furado 6. Recoloca os parafusos 7. Desce o carro 8. Guarda o macaco e o pneu furado
  • 40.
    INTRODUÇÃO 40 ◻ Regras paracriar um algoritmo � Usar somente um verbo por frase � Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática � Usar frases curtas e simples � Ser objetivo � Procurar usar palavras que não tenham sentido dúbio
  • 41.
  • 42.
  • 43.
    EXERCÍCIOS 43 ◻ 1. Monteuma sequencia para fazer uma macarronada com molho de tomate. ◻ 2.Crie uma sequência lógica para tomar banho. ◻ 3.Faça uma sequencia para trocar uma lâmpada.
  • 44.
    Não vamos ficarparados! 44
  • 45.
    Importante: abordar omáximo de detalhes em um algoritmo. Não esquecer: como será interpretado o que foi escrito? DICAS 45