SlideShare uma empresa Scribd logo
1 de 52
Baixar para ler offline
Lógica de programação




Profª Jocelma Rios
Abril/2012
O que pretendemos:

• Introduzir aos conceitos de lógica
  na perspectiva da filosofia
• Relacionar a lógica e a filosofia
  com a computação
• Exercitar   o    raciocínio lógico
  formal
Lógica
 Para a filosofia: área que trata das
 formas do pensamento em geral (dedução,
 indução, hipótese, inferência etc.) e das
 operações   intelectuais   que   visam   à
 determinação do que é verdadeiro ou não.

 Para a computação: organização e
 planejamento   das   instruções,
 assertivas etc. em um algoritmo,
 a    fim    de   viabilizar    a
 implantação de um programa.
                                Fonte: Houaiss
Lógica

• Podemos pensar a lógica como o
  estudo do raciocínio correto
• O raciocínio é o processo de obter
  conclusões a partir de suposições
  ou fatos
• O raciocínio correto é o raciocínio
  onde   as    conclusões   seguem-se
  necessária e inevitavelmente das
  suposições ou fatos
Lógica

 A lógica procura estudar as
 coisas da mente, e não as
 coisas 'reais'/'concretas'

 Por exemplo, quando dizemos:
 arco-íris bonito, sol
 distante, praia suave são
 classificações que damos às
 coisas, e não as coisas em
 si
         Veja também: www.9dades.com.br/ilusao-de-otica
Lógica

 • Na filosofia, auxilia na determinação de
   que certo raciocínio é válido ou não, já
   que pode haver diferentes interpretações
 • Na matemática, auxilia na demonstração de
   teoremas e inferência de resultados
   corretos que podam ser aplicados nas
   pesquisas
 • Na computação, auxilia na determinação se
   dado algoritmo é correto ou não
 • Na física, auxilia a obter conclusões de
   experimentos
Lógica
        A lógica é somente mais uma
            teoria do pensamento

 Aristóteles é considerado o criador da
 lógica, porem o nome “lógica” veio bem
 depois.
 No início ela não tinha um nome. Para
 Aristóteles, a lógica seria um modo a
 ser usado para as pessoas poderem
 raciocinar com segurança (evitando
 errar).
Lógica

     Observe um exemplo da lógica dedutiva de
     Aristóteles:

 ➔
     Todo planeta é quadrado.
 ➔
     A Terra é um planeta.
 ➔
     Logo, a Terra é quadrada.
Lógica

   Esta lógica não se preocupa com o fato de a
 Terra ser quadrada, mesmo que se saiba que ela
      é redonda. Pouco importa, ela aceita a
  informação que lhe foi dada. Mas exige que o
            raciocínio esteja correto.
 Preocupa-se com a forma: A = B, então, B = A.
   Ela não presta atenção ao conteúdo: A ou B
  podem ser planetas, burros, plantas, etc. Por
     isso, esta lógica é formal (de forma) e
              dedutiva (de dedução).
Lógica

  A nossa lógica formal dedutiva funciona
  assim: a partir de uma sequência de
  orações verdadeiras chegamos a uma
  conclusão verdadeira
  A lógica sempre utiliza uma linguagem
  exata (símbolos, sinais). Isso simplifica
  e facilita seu estudo.
Lógica

  Aristóteles também elaborou a argumentação
  lógica indutiva.

 • A baleia, o homem e o cãozinho são
   mamíferos.
 • A baleia, o homem e o cãozinho mamam.
 • Logo, os mamíferos mamam.


  Ou seja, de enunciados singulares chegamos
  a um universal.
Lógica
  Mais tarde, Bacon e outros aprofundaram
  esses ensinamentos e dividiram a lógica em
  três áreas:
1.Formal: a que estamos aqui tratando.
2.Transcendental: estuda as condições que dão
  base ao nosso conhecimento. Kant explicou que
  o intelecto tende a colocar todo em ordem,
  cada tijolinho no lugar. Aliás, cada pessoa já
  possui uma lógica natural ao interpretar e
  classificar o que ela vivencia.
3.Matemática: origina fórmulas de outras
  fórmulas, é puro raciocínio. São regras e mais
  regras inventadas, como jogos de cartas.
Lógica
  Hegel, no entanto, achava que a lógica
  referia-se ao pensamento e à realidade;
  disse que:
 • “todo o que é racional é real, e todo o que
   é real é racional”.
 • A lógica é uma ciência, uma arte, um jogo;
   todo se passa como em um tabuleiro de
   xadrez.
  Mas vejamos também um outro tipo de lógica,
  a que considera a verdade (o conteúdo). Ela
  considera o desconhecido, a dúvida, a
  opinião, a certeza.
Lógica
  É chamada de lógica material. Ela não aceita o
  fato se alguém diz que a Terra é quadrada.
  Temos alguns conceitos nesta lógica:
• “Ignorância” é a falta do conhecimento.
• “Dúvida” é a indecisão entre uma afirmação e uma
  negação.
• “Opinião” é uma opção que envolve a dúvida.
• “Certeza” é um firme apego à verdade.
  A verdade pode gerar muita discussão e
  barulho. Afinal, como podemos saber o que é
  mesmo a verdade? Os “céticos”, por exemplo,
  acham que não podemos afirmar nada; pois tudo
  é incerto.
Lógica

 • Já quem segue o dogmatismo considera que a
   razão humana pode conhecer a verdade. E há
   muitas outras posições sobre a verdade:
   positivistas, idealistas e outras.
 • O importante é saber que a verdade varia
   conforme os muitos sistemas filosóficos.
   Isso pode ser poético. Existem verdades e a
   lógica utiliza a que deseja utilizar. A
   lógica material defende a verdade na qual
   acredita de perigos como o “sofisma”.
Lógica
   “Sofisma” é um raciocínio errado com a
   aparência de verdadeiro, tem a intenção de
   conduzir ao erro; observe o raciocínio:
 • Maria Alice é bonita.
 • Maria Clara é bonita.
 • Logo, todas as Marias são bonitas.


   Você já imaginou o que seria se não existisse
   lógica nas coisas? Já imaginou se nada fizesse
   sentido? Hoje, a lógica é fundamental em nossa
   sociedade. Dizemos que ela está na
   informática, no ensino, na matemática, na
   medicina, etc.
Lógica

 • Logo, o resumo de tudo isto, é que podemos
   considerar como sendo válida a seguinte
   definição.
    “Ciência da argumentação, prova, reflexão
                  ou inferência”
   Ela lhe permitirá analisar um argumento ou
        raciocínio e deliberar sobre sua
   veracidade. A lógica não é um pressuposto
        para a argumentação, é claro; mas
   conhecendo-a, mesmo que superficialmente,
   torna-se mais fácil evidenciar argumentos
                    inválidos.
Lógica matemática
  • Disciplina relacionada a lógica e a
    matemática, consiste no estudo matemático da
    lógica e na aplicação deste estudo a outras
    áreas da matemática
  • Guarda estritas conexões com a ciência da
    computação
  • Foi também chamada de lógica simbólica.
  • Inclui a lógica clássica (de Aristóteles), mas
    com uma notação diferente, mais abstrata,
    tomada da álgebra
  • Teorias associadas: Teoria dos Conjuntos,
    Teoria dos Modelos, Teoria da Prova e Teoria
    da Recursão
Sequência lógica
 • Questões para raciocinar:

    – Qual o número que completa a sequência: 1, 3, 6, 10, ...
       • 13
       • 15
       • 12
       • 11
       • 18
    – Qual o número que completa a sequência: 1, 1, 2, 3, 5, ...
       •5
       •6
       •7
       •8
       •9
Lógica
• Há três suspeitos de um crime: o cozinheiro, a governanta e o
  mordomo. Sabe-se que o crime foi efetivamente cometido por
  um ou por mais de um deles, já que podem ter agido
  individualmente ou não. Sabe-se, ainda que:
      • se o cozinheiro é inocente, então a governanta é
        culpada;
      • ou o mordomo é culpado ou a governanta é culpada,
        mas não os dois;
      • o mordomo não é inocente
   – Logo:
      • a governanta e o mordomo são os culpados
      • o cozinheiro e o mordomo são os culpados
      • somente a governanta é culpada
      • somente o cozinheiro é inocente
      • somente o mordomo é culpado
Sequência lógica



   São passos executados até atingir
    um objetivo ou solução de um
              problema.
Instruções

   São um 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.
Algoritmos


   É formalmente uma sequência finita
    de passos que levam a execução de
                uma tarefa.
                   ou
  É um conjunto de passos lógicos, bem
   definidos, que descreve a solução de
              um problema.
Algoritmos – dicas de
construção
 1. Faça uma leitura de todo o problema até o
    final, a fim de formar a primeira impressão.
    A seguir, releia o problema e faça anotações
    sobre os pontos principais
 2.Verifique se o problema foi bem entendido,
    se preciso releia o problema quantas vezes
    for preciso para tentar entendê-lo
 3. Extraia do problema todas as suas saídas
 4.Extraia do problema todas as suas entradas
 5. Identifique qual é o processamento
    principal
Algoritmos – dicas de
construção
6. Verifique se será necessário algum valor
intermediário que auxilie a transformação das
entradas em saídas. Esta etapa pode parecer obscura
no início, mas com certeza no desenrolar do
algoritmo, estes valores aparecerão naturalmente.
7.Teste cada passo do algoritmo, com todos os seus
caminhos para verificar se o processamento está
gerando os resultados esperados.
8.Crie valores de teste para submeter ao algoritmo
9.Reveja o algoritmo, checando as boas normas de
criação.
Software


 São algoritmos escritos numa linguagem
     de computador (Pascal, C, Cobol,
      Fortran, Visual Basic, Java, PHP,
   dentre outras) e que são interpretados
    e executados por uma máquina, no
            caso um computador.
Fluxograma

 • Utilização de símbolos gráficos para
   representar algoritmos.
 • No fluxograma existem símbolos
   padronizados para início, entrada de
   dados, cálculos, saída de dados, fim
   etc.
 Comando   Decisão             Saída
                     Entrada
                                       Início/Fim
Fluxograma

             Início do algoritmo


             Entrada do número


             Cálculo do dobro do número


             Apresentação do resultado


             Fim do algoritmo
Constantes

 Constante é um determinado 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.

              3 =CONSTANTE
                Pi := 3,141516
Variáveis
 Variável é a representação simbólica dos elementos
 de um certo conjunto. Cada 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 a cada
                      instante.

                  Variável     Conteúdo
                     NOME := "JOSE"
                     IDADE := 50
Variáveis – tipos
 • Numéricas:
   – Específicas para armazenamento de números,
     que poderão ser utilizados para cálculos.
     Podem ser ainda classificadas como Inteiras
     (integer) ou Reais (real). As variáveis do tipo
     inteiro são para armazenamento de números
     inteiros e as reais são para o armazenamento
     de números que possuam casas decimais.
 • Caracteres:
   – Específicas para armazenamento de conjunto
     de caracteres que não contenham números
     (literais). Ex: nomes.
Variáveis – tipos
 • Alfanuméricas:
   – Específicas para dados que contenham letras
     e/ou números. Pode em determinados
     momentos conter somente dados numéricos
     ou somente literais. Se usado somente para
     armazenamento de números, não poderá ser
     utilizada para operações matemáticas.
 • Lógicas:
   – Armazenam somente dados lógicos que podem
     ser Verdadeiro ou Falso.
                       Falso
Variáveis – declaração
 • As variáveis só podem armazenar valores
   de um mesmo tipo, de maneira que
   também são classificadas como sendo
   numéricas, lógicas e literais.
Operadores

 Os operadores são meios pelo quais
  incrementamos, decrementamos,
  comparamos e avaliamos dados em um
  algoritmo.

 Temos três tipos de operadores:
   – Operadores Aritméticos
   – Operadores Relacionais
   – Operadores Lógicos
Operadores aritméticos
                            • Adição +
                           • Subtração -
                       • Multiplicação *
                          • Divisão /
OBS: A linguagem Pascal não possui um operador para
 potenciação; a mesma é calculada a partir de cálculos de produto
 ou através de uma função exponencial (ex) e função logarítmica
 (LN(X)).

Sintaxe:
 XY := EXP(Y*LN(X))
EX.
 X0.5 = EXP(0.5 * LN(X))
Operadores relacionais

 Descrição Símbolo
 • Igual a =
 • Diferente de <>
 • Maior que >
 • Menor que <
 • Maior ou igual a >=
 • Menor ou igual a <=
Operadores lógicos

 • E - AND
 • OU - OR
 • NÃO - NOT
Operações lógicas
                                              INÍCIO
                                               INÍCIO
 Exemplo: Tomada de decisão:
                                            Pegar aaBala
                                             Pegar Bala

 “Chupar uma bala”.              Sim
                                  Sim É de morango
                                                       Não
                                                        Não
 • Pegar a bala                         É de morango

 • A bala é de morango?
                           Não chupar aabala      Retirar oopapel
 • Se sim, não chupe a bala Não chupar bala        Retirar papel

 • Se não, continue o                             Chupar aaBala
                                                   Chupar Bala
   algoritmo
                                                Jogar papel no lixo
 • Retirar o papel                               Jogar papel no lixo

 • Chupar a bala
 • Jogar o papel no lixo                     FIM
                                              FIM
Engenharia de software
– algumas observações
   Boas Práticas de programação: escrever programas
  claros, mais compreensíveis, mais sustentáveis e
  mais fáceis de testar e depurar

  Uso de comentários: usar sempre que possível
  para ilustrar os passos ao longo do algoritmo

  Erros comuns de programação: problemas que
  devem ser observados para serem evitados

  Desempenho: programas de rápida execução e que
  ocupam pouco espaço de memória
Engenharia de software
– algumas observações
   Portabilidade: programas que podem ser
  executados em uma variedade de máquinas com
  pouca ou nenhuma alteração de código. A
  linguagem Java é o exemplo mais conhecido

  Prevenção de erros: Primeiramente, escrever
  programas livres de erros. Como isso não existe,
  usar técnicas de depuração e eliminação de erros

  Aparência e Comportamento: Uso de técnicas de
  projeto de interfaces com o usuário e facilidade
  de uso
Estrutura de decisão

  Os comandos de decisão ou desvio fazem
    parte das técnicas de programação que
    conduzem a estruturas de programas que
    não são totalmente sequenciais.
  As principais estruturas de decisão são:
  “Se Então”,
  “Se então Senão” e
    “Caso Selecione”
Condicional (If ... Then ... Else ...)

                           Início;
                           Definir variáveis;
               S           Ler N1;
     N1=N2
                   N1=N2   Ler N2;
       ?
                           Se N1=N2 Então
           N
                             Escrever (N1=N2)
               N
    N1>N2
                   N1<N2   Senão {ELSE}
      ?
                             Se N1>N2 Então
           S
                                Escrever (N1>N2)
    N1>N2                    Senão {ELSE}
                                Escrever (N2>N1);
                           Fim.
1


Declara Constantes:
Pi=3,14;                                     S
FreqN=60;                   Reat>100?
FreqAlt=70;                                      “Reatância
                                                 Alta”

Declara Variáveis:                N
Indut: Real;
Reat: Real;
                                             S
                            Reat=100?            “Reatância
Ler Indut                                        Padrão”

Reat:=2*Pi*FreqN*Indut           N
                         “Reatância Baixa”
“Reatância
Indutiva=“,reat

    1
Ler dois números e uma letra. Se a letra for a, adicionar, se for s, subtrair, se
     for m, multiplicar, se for d, dividir, senão, exibir “Operação inexistente”
    Início                                                 1
     Início                                                    1


                                                                           S       Resultado:=
Definir N1,N2,Resultado:Real;                                                  S                  Operação:
 Definir N1,N2,Resultado:Real;                          Letra=m?                    Resultado:=    Operação:
Definir Letra,Tecla: Char;                                                         N1*N2          Multiplicação
 Definir Letra,Tecla: Char;                              Letra=m?                   N1*N2          Multiplicação
                                                                   n
                                                                       n
 Ler N1;                                                                           Resultado:=     Operação:
  Ler N1;                                               Letra=d?                    Resultado:=     Operação:
                                                                                   N1/N2           Divisão
                                                         Letra=d?                   N1/N2           Divisão
  Ler N2;
   Ler N2;

                                                        Operação:
  Ler Letra;                                             Operação:
   Ler Letra;                                           Inexistente
                                                         Inexistente

                  S                      Operação:
                      S   Resultado:=     Operação:
  Letra=a?                 Resultado:=   Adiçao
   Letra=a?               N1+N2           Adiçao
                           N1+N2                        Fim
                                                         Fim
          n
              n
                  S                        Operação:
                      S   Resultado:=       Operação:
  Letra=s?                 Resultado:=     Subtração
                          N1-N2             Subtração
   Letra=s?                N1-N2
          n
              n
      1
          1
Exercícios
 1. Sabendo que A=3, B=7 e C=4, informe se as
 expressões abaixo são verdadeiras ou falsas.
 a) (A+C) > B
 b) B >= (A + 2)
 c) C = (B –A)
 d) (B + A) <= C
 e) (C+A) > B
 2. Construa um algoritmo que avalie cada uma das
    expressões acima, considerando que os valores de
    A, B e C são variáveis e são dados pelo usuário.
Exercícios
 3. Elabore um algoritmo que dada a idade de
 um nadador classifique-o em uma das
 seguintes categorias:

 Infantil A = 5 a 7 anos
 Infantil B = 8 a 11 anos
 Juvenil A = 12 a 13 anos
 Juvenil B = 14 a 17 anos
 Adultos = Maiores de 18 anos
Exercícios
 3. A média parcial (MP) de uma disciplina semestral no Ifba é
  calculada com base na média aritmética não ponderada de 3
  notas (Uni1, Uni2, Uni3). Caso o estudante alcance média parcial
  igual ou superior a 7,0, ele é aprovado sem precisar fazer prova
  final (PF). Caso ele alcance média parcial entre 3,0 e 6,9, ele
  precisará fazer prova final. Caso ele obtenha média inferior a
  3,0, ele é reprovado. Utilizando uma pseudo linguagem
  (português estruturado), construa um algoritmo que leia o
  nome do estudante, suas notas nas 3 unidades, calcule sua
  média parcial e informe a situação de aprovação. Para os casos
  de ser necessário fazer prova final, deve também mostrar a nota
  mínima que ele precisa na prova final. O cálculo para a nota
  mínima necessária na prova final é =(7*MP)/3. (2,0)
      MP < 3 → reprovado
3,0 <= MP < 7,0 → precisa fazer prova final
MP >= 7,0 → aprovado
Um pouco de humor
Um pouco de humor
 sempre cai bem...
  sempre cai bem...
Talvez se tivesse casado com uma programadora oodiálogo seria melhor…
 Talvez se tivesse casado com uma programadora diálogo seria melhor…
Referências
Disponível em:
 http://www.eumed.net/libros/2009a/499/LOGICA%20MATEMATICA.htm

Mais conteúdo relacionado

Mais procurados

Introdução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosIntrodução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosElaine Cecília Gatto
 
Aula 03 - Hardware e Software
Aula 03 - Hardware e SoftwareAula 03 - Hardware e Software
Aula 03 - Hardware e SoftwareSuzana Viana Mota
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à ProgramaçãoMario Sergio
 
Lógica de programação em ppt
Lógica de programação em pptLógica de programação em ppt
Lógica de programação em pptAndrei Bastos
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Mariana Camargo
 
Informática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsInformática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsJoeldson Costa Damasceno
 
Aula 01 - Ms PowerPoint
Aula 01 - Ms  PowerPointAula 01 - Ms  PowerPoint
Aula 01 - Ms PowerPointRoney Sousa
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Gercélia Ramos
 
Introdução ao Word
Introdução ao WordIntrodução ao Word
Introdução ao WordArtur Coelho
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugolGabriel Faustino
 
Aula 5 - Estruturas de seleção simples e composta - parte 1
Aula 5 - Estruturas de seleção simples e composta - parte 1Aula 5 - Estruturas de seleção simples e composta - parte 1
Aula 5 - Estruturas de seleção simples e composta - parte 1Pacc UAB
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Gercélia Ramos
 
Conceitos BáSicos
Conceitos BáSicosConceitos BáSicos
Conceitos BáSicosNuno Antunes
 
Excel Básico - Introdução
Excel Básico - IntroduçãoExcel Básico - Introdução
Excel Básico - IntroduçãoCleber Ramos
 
Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016Cibele Kanegae
 
Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010Joeldson Costa Damasceno
 

Mais procurados (20)

Introdução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos BásicosIntrodução a Algoritmos: Conceitos Básicos
Introdução a Algoritmos: Conceitos Básicos
 
Aula 03 - Hardware e Software
Aula 03 - Hardware e SoftwareAula 03 - Hardware e Software
Aula 03 - Hardware e Software
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
 
Lógica de programação em ppt
Lógica de programação em pptLógica de programação em ppt
Lógica de programação em ppt
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Informática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional WindowsInformática Básica - Aula 05 - Sistema Operacional Windows
Informática Básica - Aula 05 - Sistema Operacional Windows
 
Aula 01 - Ms PowerPoint
Aula 01 - Ms  PowerPointAula 01 - Ms  PowerPoint
Aula 01 - Ms PowerPoint
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
 
Introdução ao Word
Introdução ao WordIntrodução ao Word
Introdução ao Word
 
Lista de exercícios em portugol
Lista de exercícios em portugolLista de exercícios em portugol
Lista de exercícios em portugol
 
Algoritmos: Variáveis e Constantes
Algoritmos: Variáveis e ConstantesAlgoritmos: Variáveis e Constantes
Algoritmos: Variáveis e Constantes
 
Aula 5 - Estruturas de seleção simples e composta - parte 1
Aula 5 - Estruturas de seleção simples e composta - parte 1Aula 5 - Estruturas de seleção simples e composta - parte 1
Aula 5 - Estruturas de seleção simples e composta - parte 1
 
Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)Descritiva Narrativa (Lógica de Programação)
Descritiva Narrativa (Lógica de Programação)
 
Algoritmo 04 - Estruturas de decisão
 Algoritmo 04 - Estruturas de decisão Algoritmo 04 - Estruturas de decisão
Algoritmo 04 - Estruturas de decisão
 
Conceitos BáSicos
Conceitos BáSicosConceitos BáSicos
Conceitos BáSicos
 
Excel Básico - Introdução
Excel Básico - IntroduçãoExcel Básico - Introdução
Excel Básico - Introdução
 
Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016Apostila Microsoft Office Excel 2016
Apostila Microsoft Office Excel 2016
 
Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010Informática Básica - Introdução ao Microsoft Word 2010
Informática Básica - Introdução ao Microsoft Word 2010
 

Destaque

Oficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvROficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvRCiro Matheus
 
Aulas 13 e 14 - Algoritmos
Aulas 13 e 14 - AlgoritmosAulas 13 e 14 - Algoritmos
Aulas 13 e 14 - AlgoritmosJocelma Rios
 
Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...
Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...
Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...Jocelma Rios
 
Apostila matematica e raciocinio logico concursos exercicios resolvidos jos...
Apostila matematica e raciocinio logico concursos exercicios resolvidos   jos...Apostila matematica e raciocinio logico concursos exercicios resolvidos   jos...
Apostila matematica e raciocinio logico concursos exercicios resolvidos jos...Cleberson Oliveira
 
Onde meto o meu nariz poema da alimentação dia da alimentação
Onde meto o meu nariz   poema da alimentação dia da alimentaçãoOnde meto o meu nariz   poema da alimentação dia da alimentação
Onde meto o meu nariz poema da alimentação dia da alimentaçãoMaria José Ramalho
 
Aulas 10 e 11 - Álgebra de Boole
Aulas 10 e 11 - Álgebra de BooleAulas 10 e 11 - Álgebra de Boole
Aulas 10 e 11 - Álgebra de BooleJocelma Rios
 
Atividade mat raciocínio lógico gabarito
Atividade mat raciocínio lógico gabaritoAtividade mat raciocínio lógico gabarito
Atividade mat raciocínio lógico gabaritoColégio Integral
 
Raciocínio Lógico Aplicado a Resolução de Problemas Matemáticos
Raciocínio Lógico Aplicado a Resolução de Problemas MatemáticosRaciocínio Lógico Aplicado a Resolução de Problemas Matemáticos
Raciocínio Lógico Aplicado a Resolução de Problemas MatemáticosAndré Constantino da Silva
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Gercélia Ramos
 
Apostila 2º ano -_aluno f(1)
Apostila 2º ano  -_aluno f(1)Apostila 2º ano  -_aluno f(1)
Apostila 2º ano -_aluno f(1)Suely Seuly
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
 
Aula03 conceito de fluxogramas e seqenciamento de açoes
Aula03   conceito de fluxogramas e seqenciamento de açoesAula03   conceito de fluxogramas e seqenciamento de açoes
Aula03 conceito de fluxogramas e seqenciamento de açoesGrupo Tiradentes
 
Apostila matematica com jogos e atividades
Apostila matematica com jogos e atividadesApostila matematica com jogos e atividades
Apostila matematica com jogos e atividadesMarcelo Santos
 
Texto para avaliar leitura 3º ano
Texto para avaliar leitura 3º anoTexto para avaliar leitura 3º ano
Texto para avaliar leitura 3º anoSilvânia Silveira
 
Apostila matemática em pdf
Apostila  matemática em pdfApostila  matemática em pdf
Apostila matemática em pdfIsa ...
 

Destaque (17)

Aula 12 - Lógica
Aula 12 - LógicaAula 12 - Lógica
Aula 12 - Lógica
 
Viva 3 Idade
Viva 3 IdadeViva 3 Idade
Viva 3 Idade
 
Oficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvROficina de Lógica de Programação - Uso do Scratch e do GvR
Oficina de Lógica de Programação - Uso do Scratch e do GvR
 
Aulas 13 e 14 - Algoritmos
Aulas 13 e 14 - AlgoritmosAulas 13 e 14 - Algoritmos
Aulas 13 e 14 - Algoritmos
 
Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...
Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...
Fortec2015 comunidades de práticas baseadas na web um estudo de caso no progr...
 
Apostila matematica e raciocinio logico concursos exercicios resolvidos jos...
Apostila matematica e raciocinio logico concursos exercicios resolvidos   jos...Apostila matematica e raciocinio logico concursos exercicios resolvidos   jos...
Apostila matematica e raciocinio logico concursos exercicios resolvidos jos...
 
Onde meto o meu nariz poema da alimentação dia da alimentação
Onde meto o meu nariz   poema da alimentação dia da alimentaçãoOnde meto o meu nariz   poema da alimentação dia da alimentação
Onde meto o meu nariz poema da alimentação dia da alimentação
 
Aulas 10 e 11 - Álgebra de Boole
Aulas 10 e 11 - Álgebra de BooleAulas 10 e 11 - Álgebra de Boole
Aulas 10 e 11 - Álgebra de Boole
 
Atividade mat raciocínio lógico gabarito
Atividade mat raciocínio lógico gabaritoAtividade mat raciocínio lógico gabarito
Atividade mat raciocínio lógico gabarito
 
Raciocínio Lógico Aplicado a Resolução de Problemas Matemáticos
Raciocínio Lógico Aplicado a Resolução de Problemas MatemáticosRaciocínio Lógico Aplicado a Resolução de Problemas Matemáticos
Raciocínio Lógico Aplicado a Resolução de Problemas Matemáticos
 
Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)Fluxograma (Lógica de Programação)
Fluxograma (Lógica de Programação)
 
Apostila 2º ano -_aluno f(1)
Apostila 2º ano  -_aluno f(1)Apostila 2º ano  -_aluno f(1)
Apostila 2º ano -_aluno f(1)
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Aula03 conceito de fluxogramas e seqenciamento de açoes
Aula03   conceito de fluxogramas e seqenciamento de açoesAula03   conceito de fluxogramas e seqenciamento de açoes
Aula03 conceito de fluxogramas e seqenciamento de açoes
 
Apostila matematica com jogos e atividades
Apostila matematica com jogos e atividadesApostila matematica com jogos e atividades
Apostila matematica com jogos e atividades
 
Texto para avaliar leitura 3º ano
Texto para avaliar leitura 3º anoTexto para avaliar leitura 3º ano
Texto para avaliar leitura 3º ano
 
Apostila matemática em pdf
Apostila  matemática em pdfApostila  matemática em pdf
Apostila matemática em pdf
 

Semelhante a Lógica de programação conceitos

Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de ProgramaçãoAndré Agostinho
 
2. Introdução a Logica Matematica.pdf
2. Introdução a Logica Matematica.pdf2. Introdução a Logica Matematica.pdf
2. Introdução a Logica Matematica.pdfRubenManhia
 
Introdução a logica senac
Introdução a logica   senacIntrodução a logica   senac
Introdução a logica senacGabriel Araujo
 
Introdução a Logica de gggProgramação.pptx
Introdução a Logica de gggProgramação.pptxIntrodução a Logica de gggProgramação.pptx
Introdução a Logica de gggProgramação.pptxitaloalves49
 
aula01-1 social test resolution2024 logic progamer.pptx
aula01-1 social test resolution2024 logic progamer.pptxaula01-1 social test resolution2024 logic progamer.pptx
aula01-1 social test resolution2024 logic progamer.pptxitaloalves49
 
Algoritmo Logica de programação básico
Algoritmo Logica de programação básicoAlgoritmo Logica de programação básico
Algoritmo Logica de programação básicoFelipe Figueiredo
 
Algoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introduçãoAlgoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introduçãoMauro Pereira
 
Logica Algoritmo 01 Introducao A Logica
Logica Algoritmo 01 Introducao A LogicaLogica Algoritmo 01 Introducao A Logica
Logica Algoritmo 01 Introducao A LogicaRegis Magalhães
 
01 - Introdução a lógica de programação - v1.4
01 - Introdução a lógica de programação - v1.401 - Introdução a lógica de programação - v1.4
01 - Introdução a lógica de programação - v1.4César Augusto Pessôa
 
01 - Introdução ao fundamentos de lógica
01 - Introdução ao fundamentos de lógica01 - Introdução ao fundamentos de lógica
01 - Introdução ao fundamentos de lógicapedrinabrasil071
 
Introdução ao Pensamento Matemático
Introdução ao Pensamento MatemáticoIntrodução ao Pensamento Matemático
Introdução ao Pensamento MatemáticoCarlos Campani
 
Aula 00 abertura matemática discreta ii alunos
Aula 00   abertura matemática discreta ii alunosAula 00   abertura matemática discreta ii alunos
Aula 00 abertura matemática discreta ii alunosLucas Soares
 
Lógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendaçãoLógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendaçãoIsvaldo Souza
 

Semelhante a Lógica de programação conceitos (20)

Introdução à Lógica de Programação
Introdução à Lógica de ProgramaçãoIntrodução à Lógica de Programação
Introdução à Lógica de Programação
 
2. Introdução a Logica Matematica.pdf
2. Introdução a Logica Matematica.pdf2. Introdução a Logica Matematica.pdf
2. Introdução a Logica Matematica.pdf
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Introdução a logica senac
Introdução a logica   senacIntrodução a logica   senac
Introdução a logica senac
 
Introdução a Logica de gggProgramação.pptx
Introdução a Logica de gggProgramação.pptxIntrodução a Logica de gggProgramação.pptx
Introdução a Logica de gggProgramação.pptx
 
aula01-1 social test resolution2024 logic progamer.pptx
aula01-1 social test resolution2024 logic progamer.pptxaula01-1 social test resolution2024 logic progamer.pptx
aula01-1 social test resolution2024 logic progamer.pptx
 
Aulas 29 04
Aulas 29 04Aulas 29 04
Aulas 29 04
 
01-Lógica de Programação .pptx
01-Lógica de Programação .pptx01-Lógica de Programação .pptx
01-Lógica de Programação .pptx
 
Algoritmo Logica de programação básico
Algoritmo Logica de programação básicoAlgoritmo Logica de programação básico
Algoritmo Logica de programação básico
 
Trabalho Lógica fuzzy fabrizio-etemb
Trabalho Lógica fuzzy  fabrizio-etembTrabalho Lógica fuzzy  fabrizio-etemb
Trabalho Lógica fuzzy fabrizio-etemb
 
Algoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introduçãoAlgoritmos e lp parte 1-introdução
Algoritmos e lp parte 1-introdução
 
Logica Algoritmo 01 Introducao A Logica
Logica Algoritmo 01 Introducao A LogicaLogica Algoritmo 01 Introducao A Logica
Logica Algoritmo 01 Introducao A Logica
 
01 - Introdução a lógica de programação - v1.4
01 - Introdução a lógica de programação - v1.401 - Introdução a lógica de programação - v1.4
01 - Introdução a lógica de programação - v1.4
 
01 - Introdução ao fundamentos de lógica
01 - Introdução ao fundamentos de lógica01 - Introdução ao fundamentos de lógica
01 - Introdução ao fundamentos de lógica
 
Introdução ao Pensamento Matemático
Introdução ao Pensamento MatemáticoIntrodução ao Pensamento Matemático
Introdução ao Pensamento Matemático
 
Aula1
Aula1Aula1
Aula1
 
Introdução
IntroduçãoIntrodução
Introdução
 
Aula 00 abertura matemática discreta ii alunos
Aula 00   abertura matemática discreta ii alunosAula 00   abertura matemática discreta ii alunos
Aula 00 abertura matemática discreta ii alunos
 
Lógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendaçãoLógica clássica e suas aplicações em sistema de recomendação
Lógica clássica e suas aplicações em sistema de recomendação
 
1657721305010.pdf
1657721305010.pdf1657721305010.pdf
1657721305010.pdf
 

Mais de Jocelma Rios

Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...
Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...
Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...Jocelma Rios
 
Aulas 8 e 9 - Sistemas de Numeração
Aulas 8 e 9 - Sistemas de NumeraçãoAulas 8 e 9 - Sistemas de Numeração
Aulas 8 e 9 - Sistemas de NumeraçãoJocelma Rios
 
Aulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e TelecomunicaçõesAulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e TelecomunicaçõesJocelma Rios
 
Aula 5b - História do Windows
Aula 5b - História do WindowsAula 5b - História do Windows
Aula 5b - História do WindowsJocelma Rios
 
Aula 5a - Sistemas Operacionais
Aula 5a - Sistemas OperacionaisAula 5a - Sistemas Operacionais
Aula 5a - Sistemas OperacionaisJocelma Rios
 
Aula 4 - Sistemas de Informação
Aula 4 - Sistemas de InformaçãoAula 4 - Sistemas de Informação
Aula 4 - Sistemas de InformaçãoJocelma Rios
 
Aulas 1 e 2 - Hardware
Aulas 1 e 2 - HardwareAulas 1 e 2 - Hardware
Aulas 1 e 2 - HardwareJocelma Rios
 
Noções básicas de computação hardware
Noções básicas de computação   hardwareNoções básicas de computação   hardware
Noções básicas de computação hardwareJocelma Rios
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascalJocelma Rios
 
Sistemas de numeração
Sistemas de numeraçãoSistemas de numeração
Sistemas de numeraçãoJocelma Rios
 
Estudo de caso do windows
Estudo de caso do windowsEstudo de caso do windows
Estudo de caso do windowsJocelma Rios
 

Mais de Jocelma Rios (12)

Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...
Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...
Fortec2014 mesa redonda dinâmicas de comunidades de práticas baseadas na web_...
 
Aulas 8 e 9 - Sistemas de Numeração
Aulas 8 e 9 - Sistemas de NumeraçãoAulas 8 e 9 - Sistemas de Numeração
Aulas 8 e 9 - Sistemas de Numeração
 
Aulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e TelecomunicaçõesAulas 6 e 7 - Redes e Telecomunicações
Aulas 6 e 7 - Redes e Telecomunicações
 
Aula 5b - História do Windows
Aula 5b - História do WindowsAula 5b - História do Windows
Aula 5b - História do Windows
 
Aula 5a - Sistemas Operacionais
Aula 5a - Sistemas OperacionaisAula 5a - Sistemas Operacionais
Aula 5a - Sistemas Operacionais
 
Aula 4 - Sistemas de Informação
Aula 4 - Sistemas de InformaçãoAula 4 - Sistemas de Informação
Aula 4 - Sistemas de Informação
 
Aula 3 - Software
Aula 3 - SoftwareAula 3 - Software
Aula 3 - Software
 
Aulas 1 e 2 - Hardware
Aulas 1 e 2 - HardwareAulas 1 e 2 - Hardware
Aulas 1 e 2 - Hardware
 
Noções básicas de computação hardware
Noções básicas de computação   hardwareNoções básicas de computação   hardware
Noções básicas de computação hardware
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Sistemas de numeração
Sistemas de numeraçãoSistemas de numeração
Sistemas de numeração
 
Estudo de caso do windows
Estudo de caso do windowsEstudo de caso do windows
Estudo de caso do windows
 

Lógica de programação conceitos

  • 1. Lógica de programação Profª Jocelma Rios Abril/2012
  • 2. O que pretendemos: • Introduzir aos conceitos de lógica na perspectiva da filosofia • Relacionar a lógica e a filosofia com a computação • Exercitar o raciocínio lógico formal
  • 3. Lógica Para a filosofia: área que trata das formas do pensamento em geral (dedução, indução, hipótese, inferência etc.) e das operações intelectuais que visam à determinação do que é verdadeiro ou não. Para a computação: organização e planejamento das instruções, assertivas etc. em um algoritmo, a fim de viabilizar a implantação de um programa. Fonte: Houaiss
  • 4. Lógica • Podemos pensar a lógica como o estudo do raciocínio correto • O raciocínio é o processo de obter conclusões a partir de suposições ou fatos • O raciocínio correto é o raciocínio onde as conclusões seguem-se necessária e inevitavelmente das suposições ou fatos
  • 5. Lógica A lógica procura estudar as coisas da mente, e não as coisas 'reais'/'concretas' Por exemplo, quando dizemos: arco-íris bonito, sol distante, praia suave são classificações que damos às coisas, e não as coisas em si Veja também: www.9dades.com.br/ilusao-de-otica
  • 6. Lógica • Na filosofia, auxilia na determinação de que certo raciocínio é válido ou não, já que pode haver diferentes interpretações • Na matemática, auxilia na demonstração de teoremas e inferência de resultados corretos que podam ser aplicados nas pesquisas • Na computação, auxilia na determinação se dado algoritmo é correto ou não • Na física, auxilia a obter conclusões de experimentos
  • 7. Lógica A lógica é somente mais uma teoria do pensamento Aristóteles é considerado o criador da lógica, porem o nome “lógica” veio bem depois. No início ela não tinha um nome. Para Aristóteles, a lógica seria um modo a ser usado para as pessoas poderem raciocinar com segurança (evitando errar).
  • 8. Lógica Observe um exemplo da lógica dedutiva de Aristóteles: ➔ Todo planeta é quadrado. ➔ A Terra é um planeta. ➔ Logo, a Terra é quadrada.
  • 9. Lógica Esta lógica não se preocupa com o fato de a Terra ser quadrada, mesmo que se saiba que ela é redonda. Pouco importa, ela aceita a informação que lhe foi dada. Mas exige que o raciocínio esteja correto. Preocupa-se com a forma: A = B, então, B = A. Ela não presta atenção ao conteúdo: A ou B podem ser planetas, burros, plantas, etc. Por isso, esta lógica é formal (de forma) e dedutiva (de dedução).
  • 10. Lógica A nossa lógica formal dedutiva funciona assim: a partir de uma sequência de orações verdadeiras chegamos a uma conclusão verdadeira A lógica sempre utiliza uma linguagem exata (símbolos, sinais). Isso simplifica e facilita seu estudo.
  • 11. Lógica Aristóteles também elaborou a argumentação lógica indutiva. • A baleia, o homem e o cãozinho são mamíferos. • A baleia, o homem e o cãozinho mamam. • Logo, os mamíferos mamam. Ou seja, de enunciados singulares chegamos a um universal.
  • 12. Lógica Mais tarde, Bacon e outros aprofundaram esses ensinamentos e dividiram a lógica em três áreas: 1.Formal: a que estamos aqui tratando. 2.Transcendental: estuda as condições que dão base ao nosso conhecimento. Kant explicou que o intelecto tende a colocar todo em ordem, cada tijolinho no lugar. Aliás, cada pessoa já possui uma lógica natural ao interpretar e classificar o que ela vivencia. 3.Matemática: origina fórmulas de outras fórmulas, é puro raciocínio. São regras e mais regras inventadas, como jogos de cartas.
  • 13. Lógica Hegel, no entanto, achava que a lógica referia-se ao pensamento e à realidade; disse que: • “todo o que é racional é real, e todo o que é real é racional”. • A lógica é uma ciência, uma arte, um jogo; todo se passa como em um tabuleiro de xadrez. Mas vejamos também um outro tipo de lógica, a que considera a verdade (o conteúdo). Ela considera o desconhecido, a dúvida, a opinião, a certeza.
  • 14. Lógica É chamada de lógica material. Ela não aceita o fato se alguém diz que a Terra é quadrada. Temos alguns conceitos nesta lógica: • “Ignorância” é a falta do conhecimento. • “Dúvida” é a indecisão entre uma afirmação e uma negação. • “Opinião” é uma opção que envolve a dúvida. • “Certeza” é um firme apego à verdade. A verdade pode gerar muita discussão e barulho. Afinal, como podemos saber o que é mesmo a verdade? Os “céticos”, por exemplo, acham que não podemos afirmar nada; pois tudo é incerto.
  • 15. Lógica • Já quem segue o dogmatismo considera que a razão humana pode conhecer a verdade. E há muitas outras posições sobre a verdade: positivistas, idealistas e outras. • O importante é saber que a verdade varia conforme os muitos sistemas filosóficos. Isso pode ser poético. Existem verdades e a lógica utiliza a que deseja utilizar. A lógica material defende a verdade na qual acredita de perigos como o “sofisma”.
  • 16. Lógica “Sofisma” é um raciocínio errado com a aparência de verdadeiro, tem a intenção de conduzir ao erro; observe o raciocínio: • Maria Alice é bonita. • Maria Clara é bonita. • Logo, todas as Marias são bonitas. Você já imaginou o que seria se não existisse lógica nas coisas? Já imaginou se nada fizesse sentido? Hoje, a lógica é fundamental em nossa sociedade. Dizemos que ela está na informática, no ensino, na matemática, na medicina, etc.
  • 17. Lógica • Logo, o resumo de tudo isto, é que podemos considerar como sendo válida a seguinte definição. “Ciência da argumentação, prova, reflexão ou inferência” Ela lhe permitirá analisar um argumento ou raciocínio e deliberar sobre sua veracidade. A lógica não é um pressuposto para a argumentação, é claro; mas conhecendo-a, mesmo que superficialmente, torna-se mais fácil evidenciar argumentos inválidos.
  • 18. Lógica matemática • Disciplina relacionada a lógica e a matemática, consiste no estudo matemático da lógica e na aplicação deste estudo a outras áreas da matemática • Guarda estritas conexões com a ciência da computação • Foi também chamada de lógica simbólica. • Inclui a lógica clássica (de Aristóteles), mas com uma notação diferente, mais abstrata, tomada da álgebra • Teorias associadas: Teoria dos Conjuntos, Teoria dos Modelos, Teoria da Prova e Teoria da Recursão
  • 19. Sequência lógica • Questões para raciocinar: – Qual o número que completa a sequência: 1, 3, 6, 10, ... • 13 • 15 • 12 • 11 • 18 – Qual o número que completa a sequência: 1, 1, 2, 3, 5, ... •5 •6 •7 •8 •9
  • 20. Lógica • Há três suspeitos de um crime: o cozinheiro, a governanta e o mordomo. Sabe-se que o crime foi efetivamente cometido por um ou por mais de um deles, já que podem ter agido individualmente ou não. Sabe-se, ainda que: • se o cozinheiro é inocente, então a governanta é culpada; • ou o mordomo é culpado ou a governanta é culpada, mas não os dois; • o mordomo não é inocente – Logo: • a governanta e o mordomo são os culpados • o cozinheiro e o mordomo são os culpados • somente a governanta é culpada • somente o cozinheiro é inocente • somente o mordomo é culpado
  • 21. Sequência lógica São passos executados até atingir um objetivo ou solução de um problema.
  • 22. Instruções São um 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.
  • 23. Algoritmos É formalmente uma sequência finita de passos que levam a execução de uma tarefa. ou É um conjunto de passos lógicos, bem definidos, que descreve a solução de um problema.
  • 24. Algoritmos – dicas de construção 1. Faça uma leitura de todo o problema até o final, a fim de formar a primeira impressão. A seguir, releia o problema e faça anotações sobre os pontos principais 2.Verifique se o problema foi bem entendido, se preciso releia o problema quantas vezes for preciso para tentar entendê-lo 3. Extraia do problema todas as suas saídas 4.Extraia do problema todas as suas entradas 5. Identifique qual é o processamento principal
  • 25. Algoritmos – dicas de construção 6. Verifique se será necessário algum valor intermediário que auxilie a transformação das entradas em saídas. Esta etapa pode parecer obscura no início, mas com certeza no desenrolar do algoritmo, estes valores aparecerão naturalmente. 7.Teste cada passo do algoritmo, com todos os seus caminhos para verificar se o processamento está gerando os resultados esperados. 8.Crie valores de teste para submeter ao algoritmo 9.Reveja o algoritmo, checando as boas normas de criação.
  • 26. Software São algoritmos escritos numa linguagem de computador (Pascal, C, Cobol, Fortran, Visual Basic, Java, PHP, dentre outras) e que são interpretados e executados por uma máquina, no caso um computador.
  • 27. Fluxograma • Utilização de símbolos gráficos para representar algoritmos. • No fluxograma existem símbolos padronizados para início, entrada de dados, cálculos, saída de dados, fim etc. Comando Decisão Saída Entrada Início/Fim
  • 28. Fluxograma Início do algoritmo Entrada do número Cálculo do dobro do número Apresentação do resultado Fim do algoritmo
  • 29. Constantes Constante é um determinado 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. 3 =CONSTANTE Pi := 3,141516
  • 30. Variáveis Variável é a representação simbólica dos elementos de um certo conjunto. Cada 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 a cada instante. Variável Conteúdo NOME := "JOSE" IDADE := 50
  • 31. Variáveis – tipos • Numéricas: – Específicas para armazenamento de números, que poderão ser utilizados para cálculos. Podem ser ainda classificadas como Inteiras (integer) ou Reais (real). As variáveis do tipo inteiro são para armazenamento de números inteiros e as reais são para o armazenamento de números que possuam casas decimais. • Caracteres: – Específicas para armazenamento de conjunto de caracteres que não contenham números (literais). Ex: nomes.
  • 32. Variáveis – tipos • Alfanuméricas: – Específicas para dados que contenham letras e/ou números. Pode em determinados momentos conter somente dados numéricos ou somente literais. Se usado somente para armazenamento de números, não poderá ser utilizada para operações matemáticas. • Lógicas: – Armazenam somente dados lógicos que podem ser Verdadeiro ou Falso. Falso
  • 33. Variáveis – declaração • As variáveis só podem armazenar valores de um mesmo tipo, de maneira que também são classificadas como sendo numéricas, lógicas e literais.
  • 34. Operadores Os operadores são meios pelo quais incrementamos, decrementamos, comparamos e avaliamos dados em um algoritmo. Temos três tipos de operadores: – Operadores Aritméticos – Operadores Relacionais – Operadores Lógicos
  • 35. Operadores aritméticos • Adição + • Subtração - • Multiplicação * • Divisão / OBS: A linguagem Pascal não possui um operador para potenciação; a mesma é calculada a partir de cálculos de produto ou através de uma função exponencial (ex) e função logarítmica (LN(X)). Sintaxe:  XY := EXP(Y*LN(X)) EX.  X0.5 = EXP(0.5 * LN(X))
  • 36. Operadores relacionais Descrição Símbolo • Igual a = • Diferente de <> • Maior que > • Menor que < • Maior ou igual a >= • Menor ou igual a <=
  • 37. Operadores lógicos • E - AND • OU - OR • NÃO - NOT
  • 38. Operações lógicas INÍCIO INÍCIO Exemplo: Tomada de decisão: Pegar aaBala Pegar Bala “Chupar uma bala”. Sim Sim É de morango Não Não • Pegar a bala É de morango • A bala é de morango? Não chupar aabala Retirar oopapel • Se sim, não chupe a bala Não chupar bala Retirar papel • Se não, continue o Chupar aaBala Chupar Bala algoritmo Jogar papel no lixo • Retirar o papel Jogar papel no lixo • Chupar a bala • Jogar o papel no lixo FIM FIM
  • 39. Engenharia de software – algumas observações Boas Práticas de programação: escrever programas claros, mais compreensíveis, mais sustentáveis e mais fáceis de testar e depurar Uso de comentários: usar sempre que possível para ilustrar os passos ao longo do algoritmo Erros comuns de programação: problemas que devem ser observados para serem evitados Desempenho: programas de rápida execução e que ocupam pouco espaço de memória
  • 40. Engenharia de software – algumas observações Portabilidade: programas que podem ser executados em uma variedade de máquinas com pouca ou nenhuma alteração de código. A linguagem Java é o exemplo mais conhecido Prevenção de erros: Primeiramente, escrever programas livres de erros. Como isso não existe, usar técnicas de depuração e eliminação de erros Aparência e Comportamento: Uso de técnicas de projeto de interfaces com o usuário e facilidade de uso
  • 41. Estrutura de decisão Os comandos de decisão ou desvio fazem parte das técnicas de programação que conduzem a estruturas de programas que não são totalmente sequenciais. As principais estruturas de decisão são: “Se Então”, “Se então Senão” e “Caso Selecione”
  • 42. Condicional (If ... Then ... Else ...) Início; Definir variáveis; S Ler N1; N1=N2 N1=N2 Ler N2; ? Se N1=N2 Então N Escrever (N1=N2) N N1>N2 N1<N2 Senão {ELSE} ? Se N1>N2 Então S Escrever (N1>N2) N1>N2 Senão {ELSE} Escrever (N2>N1); Fim.
  • 43. 1 Declara Constantes: Pi=3,14; S FreqN=60; Reat>100? FreqAlt=70; “Reatância Alta” Declara Variáveis: N Indut: Real; Reat: Real; S Reat=100? “Reatância Ler Indut Padrão” Reat:=2*Pi*FreqN*Indut N “Reatância Baixa” “Reatância Indutiva=“,reat 1
  • 44. Ler dois números e uma letra. Se a letra for a, adicionar, se for s, subtrair, se for m, multiplicar, se for d, dividir, senão, exibir “Operação inexistente” Início 1 Início 1 S Resultado:= Definir N1,N2,Resultado:Real; S Operação: Definir N1,N2,Resultado:Real; Letra=m? Resultado:= Operação: Definir Letra,Tecla: Char; N1*N2 Multiplicação Definir Letra,Tecla: Char; Letra=m? N1*N2 Multiplicação n n Ler N1; Resultado:= Operação: Ler N1; Letra=d? Resultado:= Operação: N1/N2 Divisão Letra=d? N1/N2 Divisão Ler N2; Ler N2; Operação: Ler Letra; Operação: Ler Letra; Inexistente Inexistente S Operação: S Resultado:= Operação: Letra=a? Resultado:= Adiçao Letra=a? N1+N2 Adiçao N1+N2 Fim Fim n n S Operação: S Resultado:= Operação: Letra=s? Resultado:= Subtração N1-N2 Subtração Letra=s? N1-N2 n n 1 1
  • 45. Exercícios 1. Sabendo que A=3, B=7 e C=4, informe se as expressões abaixo são verdadeiras ou falsas. a) (A+C) > B b) B >= (A + 2) c) C = (B –A) d) (B + A) <= C e) (C+A) > B 2. Construa um algoritmo que avalie cada uma das expressões acima, considerando que os valores de A, B e C são variáveis e são dados pelo usuário.
  • 46. Exercícios 3. Elabore um algoritmo que dada a idade de um nadador classifique-o em uma das seguintes categorias: Infantil A = 5 a 7 anos Infantil B = 8 a 11 anos Juvenil A = 12 a 13 anos Juvenil B = 14 a 17 anos Adultos = Maiores de 18 anos
  • 47. Exercícios 3. A média parcial (MP) de uma disciplina semestral no Ifba é calculada com base na média aritmética não ponderada de 3 notas (Uni1, Uni2, Uni3). Caso o estudante alcance média parcial igual ou superior a 7,0, ele é aprovado sem precisar fazer prova final (PF). Caso ele alcance média parcial entre 3,0 e 6,9, ele precisará fazer prova final. Caso ele obtenha média inferior a 3,0, ele é reprovado. Utilizando uma pseudo linguagem (português estruturado), construa um algoritmo que leia o nome do estudante, suas notas nas 3 unidades, calcule sua média parcial e informe a situação de aprovação. Para os casos de ser necessário fazer prova final, deve também mostrar a nota mínima que ele precisa na prova final. O cálculo para a nota mínima necessária na prova final é =(7*MP)/3. (2,0) MP < 3 → reprovado 3,0 <= MP < 7,0 → precisa fazer prova final MP >= 7,0 → aprovado
  • 48. Um pouco de humor Um pouco de humor sempre cai bem... sempre cai bem...
  • 49. Talvez se tivesse casado com uma programadora oodiálogo seria melhor… Talvez se tivesse casado com uma programadora diálogo seria melhor…
  • 50.
  • 51.