A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Lógica de Programação Introdução. Neste capítulo Introdução à Lógica de Programação Algoritmizando a Lógica Conceitos e Exemplos de Algoritmos Noções.

Apresentações semelhantes


Apresentação em tema: "Lógica de Programação Introdução. Neste capítulo Introdução à Lógica de Programação Algoritmizando a Lógica Conceitos e Exemplos de Algoritmos Noções."— Transcrição da apresentação:

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

2 Neste capítulo Introdução à Lógica de Programação Algoritmizando a Lógica Conceitos e Exemplos de Algoritmos Noções de Fluxo de Controle Introdução

3 Lógica de Programação Lógica: A palavra lógica vem do grego Logos e significa razão, pensamento. O pai da lógica é o filósofo Aristóteles, ele chamou sua lógica de “silogismo”, que significa ligação. Ele deu esse nome porque a lógica trata da ligação formal dos juízos feito pelo pensamento. Seus textos sobre lógica foram escritos em sua obra “Primeiros Analíticos”. O silogismo é uma forma de análise que procura decompor em partes os argumentos e as proposições de um argumento e seus termos. Mais tarde o conjunto de seus escritos silogísticos foi chamado de Organon, palavra grega que significa “instrumento”. A lógica, portanto, é um instrumento para se pensar corretamente. Ciência que estuda as formas do pensamento, Correção do pensamento ou correção do raciocínio, Arte do bem pensar, Ordem no pensamento.

4 Lógica de Programação Sempre que pensamos a lógica nos acompanha Um bebê sabe que precisa chorar para receber atenção Um casal com 3 filhos notou que um vaso estava quebrado, enquanto 2 das crianças estavam na escola. Quem é o culpado? A gaveta está fechada. A caneta está dentro da gaveta. Precisamos primeiro abrir a gaveta para depois pegar a caneta. O pensamento (e a lógica) pode ser expresso através da palavra falada ou da palavra escrita Um mesmo pensamento pode ser expresso em inúmeros idiomas, tanto oralmente quanto por escrito Vamos estudar uma forma única de representação

5 Exercício Em um torneio de atletismo, Barnabé, Gumercindo e Teodoro participaram das provas de 100 metros rasos, salto em distância e arremesso de dardo. Cada um deles conseguiu um primeiro lugar, um segundo lugar e um terceiro. Descubra o que cada um conquistou, sabendo que: Gumercindo venceu Barnabé no salto em distância; Teodoro chegou atrás de Gumercindo no arremesso de dardo; Barnabé não chegou em primeiro nos 100 metros rasos.

6 ALGORITMO É o pensamento descrito como uma seqüência de passos que visam atingir um objetivo Algoritmos no dia-a-dia : Receita de bolo, orientação para se chegar em algum endereço Qual sua importância na programação? Representar o raciocínio, independentemente de detalhes computacionais, que podem ser acrescentados mais tarde Focalizar primeiro na resolução algorítmica do problema, possibilitando depois codificá-la em qualquer linguagem

7 Importância dos Algoritmos Problema Solução como programa de computador Solução em forma de algoritmo Passo difícil Fase de resolução do problema

8 Descrição Narrativa Um método direto, simplesmente especificar seus passos verbalmente. Porém a linguagem natural é prolixa, imprecisa, pouco confiável. Por isso não é adequada.

9 NomeSímboloDescrição Fluxo Indica o sentido do fluxo de operações Terminal Indica início, fim ou ponto de parada de um programa Entradax,y Indica operação de entrada de dados para os locais chamados de x e y na memória Saídax,y Indica operação de saída ou de impressão dos valores x e y Decisão Indica a possibilidade de desvio para mais de um ponto do programa Cálculox=y+z Indica operação aritmética Conector Indica conexão entre dois pontos de um algoritmo que estejam na mesma página Conector Indica conexão entre dois pontos de um algoritmo que estejam em página diferentes Diagrama de bloco Início n1,n2,n3 M=(n1,n2,n3)/3 M>=60? Você foi aprovado Você foi reprovado Fim N S Início do algoritmo O valor de cada nota é armazenado nas variáveis n1,n2 e n3 O valor da média é calculado e armazenado na variável M É verificado se o valor de M é maior ou igual a 60. Se sim(S), é exibida a mensagem Você foi aprovado. Caso Contrário (N), é exibida a mensagem Você foi reprovado Fim do algoritmo

10 Pseudo Linguagem Consiste em representar textualmente os passos envolvidos na resolução do problema. Para evitar ambigüidade, utiliza-se de um conjunto de regras que visam restringir e estruturar o uso do português na representação dos algoritmos. Aproxima-se muito do código fonte de linguagens de programação reais.

11 Exemplo de um Algoritmo Início caracter: nome; escreva(“Digite o seu nome”); leia(nome); escreva(“O seu nome é”,nome); fim. // Início do algoritmo // Declaração das variáveis // Mensagem para o usuário // Leitura do nome // Exibe a mensagem e o nome digitado // Fim do algoritmo

12 Tipos de Dados Existem quatro tipos de dados utilizados na construção de algoritmos. Inteiro: informação numérica que pertença ao conjunto dos números inteiros Exemplo: 8, -5, 10, 0, 1, etc. Real: Informação numérica que pertença ao conjunto dos números reais Exemplo: 0.15, -5.14, 10. 2, 2E23, etc. Caracter: Informação composta por um caracter, ou conjunto de caracteres Exemplo: “Ciência da Computação”, “A”, “US$”, etc Lógico: Informação que possa assumir apenas duas situações. Exemplo: V ou F

13 Identificadores Um identificador é o nome dado às informações de caráter variável. Existem algumas regras de formação de identificadores que devem ser obedecidas. 1.Devem começar com um caracter alfabético 2.Podem ser seguidos por mais caracteres alfabéticos ou numéricos 3.Não devem ser usados caracteres especiais ou símbolos de operadores aritméticas 4.Não podem ser palavras reservadas. Identificadores válido: ano, idade, U2, nota1, nota_2 Identificadores inválidos: C&A, 4x, nota 1, nota 2, a/b, a#b, A+B

14 Declaração de variáveis No ambiente computacional, as informações variáveis são guardadas em dispositivos eletrônicos denominados memória. Para diferenciar cada uma destas variáveis utilizamos os identificadores. Exemplo: Inteiro: x; real: salario; logico: resposta; caracter: endereco;

15 Comandos Básicos Declaração de Variáveis Ex. caracter: nome; inteiro: x,idade,soma; real: y,salario; logico: val1; Comandos de entrada de dados Ex. leia (nome); leia (x,idade); leia (y,salario); Comando de saída de dados Ex. escreva(“Hello Word!”); escreva(nome); escreva(“Seu nome e”,nome); escreva(“Seu salario e: ”,salario); Comandos de atribuição Ex. soma  y * salario; val1  1 > 4+3;

16 Exemplo de um Algoritmo Início inteiro: val1, val2, soma; escreva(“Digite o 1 números a ser somado”); leia(val1); escreva(“Digite o 2 números a ser somado”); leia(val2); soma  (val1+val2); escreva(“O valor total é:”,soma); fim. // Início do algoritmo // Declaração das variáveis // Mensagem para o usuário // Leitura da variáveis val1 // Mensagem para o usuário // Leitura da variáveis val2 // Calculo da soma // Mensagem com valor da soma // Fim do algoritmo

17 Operadores Operador aritmético FunçãoExemplos +soma2+3; x+y; z+2 -Subtração4-6; g-k; u-4 *Multiplicação8*6; x*y; 2*x /Divisão2/7; x/z; z/2 pot(x,y)Potenciação (x y )pot(2,4); pot(z,3) rad(x)Radiciaçãorad(4); rad(x) modResto da divisão13 mod 2(resulta em 1) divQuociente da divisão9 div 4(resulta em 2)

18 Hierarquia Parênteses mais internos potrad */divmod + - Para operações de mesma prioridade, resolvemos os operadores da esquerda para a direita. A prioridade pode ser alterada com o uso de parêntese

19 Operadores Operador relacional FunçãoExemplos =Igualx=y; x=z >Maior que3>2; x>y <Menor quex<y; 2<x >=Maior ou igual a8>=7; x>=z; z>=2 <=Menor ou igual a5<=6; x<=6 <>Diferente de4<>3; x<>z

20 Operadores Operador lógicoFunção nãoNegação eConjunção ouDisjunção não e ou O resultado obtido de uma expressão envolvendo operadores relacionais e/ou lógicos relação é sempre um valor lógico. As expressões lógicas devem ser solucionadas respeitando a seguinte procedência

21 Prioridade As expressões envolvendo os operadores aritméticos, relacionais e lógicos, devem ser solucionadas respeitando a seguinte ordem de prioridade. 1.Parênteses mais internos 2.Operadores aritméticos 3.Operadores relacionais 4.Operadores lógicos

22 Estrutura de seleção se (expressão logica) entao acao fimse; Início inteiro: val1; escreva(“Digite um número”); leia(val1); se (val1<100) entao escreva(“O numero digitado e menor que 100”); fimse; fim.

23 Estrutura de seleção se (expressão logica) entao acao 1; senao acao 2; fimse; Início inteiro: val1; escreva(“Digite um número”); leia(val1); se (val1<100) entao inicio escreva(“Atencao”); escreva(“ O numero digitado e menor que 100 ”); fim; senao inicio escreva(“Atencao”); escreva(“ O numero digitado e igual ou maior que 100 ”); fim; fimse; fim.

24 Estrutura de seleção – Exercício, exemplo I Início inteiro: idade; caracter: nome; escreva(“Digite seu nome:”); leia(nome); escreva(“Informe sua idade:”); leia(idade); se (idade<13) entao escreva(nome,“Você é uma criança”); senao se (idade > 12 e idade<20) entao escreva(nome,“Você é um adolescente”); senao escreva(nome,“Você é um adulto”); fimse; fim. Errado se (12<idade<20)

25 Estrutura de seleção – Exercício, exemplo II Início inteiro: idade; caracter: nome; escreva(“Digite seu nome:”); leia(nome); escreva(“Informe sua idade:”); leia(idade); se (idade<13) entao escreva(nome,“Você é uma criança”); senao se (idade > 12 e idade<20) entao escreva(nome,“Você é um adolescente”); senao se (idade>19) entao escreva(nome,“Você é um adulto”); fimse; fim. Errado se (12<idade<20)

26 Estrutura de seleção – Exercício, exemplo III Início inteiro: idade; caracter: nome; escreva(“Digite seu nome:”); leia(nome); escreva(“Informe sua idade:”); leia(idade); se (idade<13) entao escreva(nome,“Você é uma criança”); fimse; se ( idade >12 e idade<20 ) entao escreva(nome,“Você é um adolescente”); fimse; se (idade>19) entao escreva(nome,“Você é um adulto”); fimse; fim. Errado se (12<idade<20)

27 Estrutura de seleção de múltipla escolha escolha(x) caso v1: acao1; caso vn: acaon; caso contrario: acaopadrao; fim escolha

28 Estrutura de seleção de múltipla escolha inicio caracter:tipo; escreva(“Selecione o sabor de pizza Muzzarela(M), Quatro queijos (Q), ou Presunto(P). ”); leia (tipo); escolha(tipo) caso ‘M’: escreva(“A sua pizza de muzzarela esta sendo preparada... ”); escreva(“Aguarde...”); caso ‘Q’: escreva(“A sua pizza de quatro queijos esta sendo preparada... ”); escreva(“Aguarde...”); caso ‘P’: escreva(“A sua pizza de presunto esta sendo preparada... ”); escreva(“Aguarde...”); caso contrario: escreva(“Opcao não disponivel ”); fimescolha; Fim. escolha(x) caso v1: acao1; caso vn: acaon; caso contrario: acaopadrao; fim escolha

29 Estrutura de repetição - com teste no início enquanto(expressao logica) faça acao1; acao2; acao3; fimenquanto; inicio caracter:nome; inteiro: contador; contador  1; escreva(“Informe o seu nome”); leia(nome); enquanto (contador<=3) faça escreva(nome); contador  contador + 1; fimenquanto; fim; // Início do algoritmo // Declaração de variável nome // Declaração de variável contador // Inicializando a variável contador // Exibindo a mensagem na tela // Armazena o nome informado na variável nome // Início do laço // Imprimindo o conteúdo da variável nome na tela // Incrementando o contador em uma unidade // Fim do laço // Fim do algoritmo

30 Estrutura de repetição - com teste no início inicio real: num,somar; soma  0; escreva(“Informe o numero a ser somado”); leia(num); enquanto (num<>0) faça soma  soma+num; escreva(“Informe o número a ser somado”); leia(num); fimenquanto; escreva(“A soma vale;”soma); fim;

31 Estrutura de repetição - com teste no fim repita acao1; acao2; acao3; ate(expressão lógica) inicio inteiro: num; real: somar; soma  0; repita escreva(“Informe o numero a ser somado: ”); leia(num); soma  soma+num; ate(num=0); escreva(“A soma vale;”soma); fim;

32 Estrutura de repetição – com variável de controle Para v de vi até vf passo p faça ação 1; ação 2; ação n; fimpara inicio inteiro: controle; para controle de 0 até 10 passo 1 faça escreva(“Este e o numero: ”, controle); fim para; fim; // Início do laço // Fim do laço


Carregar ppt "Lógica de Programação Introdução. Neste capítulo Introdução à Lógica de Programação Algoritmizando a Lógica Conceitos e Exemplos de Algoritmos Noções."

Apresentações semelhantes


Anúncios Google