Introdução à Programação e Algoritmia António Mansilha ESCOLA E. B. 2,3 /S D. SANCHO II  ALIJÓ [email_address] Setembro, 2007 Alijó
Introdução à Lógica da Programação   A  lógica  é uma ciência de carácter  matemática  e fortemente ligada à  Filosofia . 1.1 - Lógica A  lógica  é o ramo da filosofia que trata das regras do bem pensar, ou do pensar correcto, sendo, portanto, um instrumento do pensar.  A aprendizagem da lógica não constitui um fim em si, mas um  meio  de garantir que nosso pensamento se faz correctamente para chegar a conhecimentos verdadeiros .
Introdução à Lógica da Programação  A lógica de programação é necessária a quem deseje desenvolver sistemas e programas, permitindo definir a sequência lógica para o desenvolvimento.  Lógica de programação Lógica de Programação é a técnica de encadear pensamentos para atingir determinado objectivo, isto é, para resolver determinado problema.
Introdução à Lógica da Programação  Estes pensamentos, podem ser descritos como uma sequência de instruções, que devem ser seguidas para se cumprir uma determinada tarefa.  1.2 - Sequência Lógica Sequência Lógica são passos executados até atingir um objectivo ou solução de um problema.
Introdução à Lógica da Programação  Em linguagem comum, são um conjunto de regras ou normas definidas para a realização de alguma tarefa. 1.3 - Instruções Em informática, instrução é a informação que indica a um computador uma acção elementar a executar.
Introdução à Lógica da Programação  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. Por exemplo, se quisermos fazer uma omoletas de batatas, precisaremos de executar uma série de instruções: descascar as batatas, bater os ovos, fritar as batatas, etc... Essas instruções tem que ser executadas numa ordem adequada – não se pode descascar as batatas depois de fritá-las. Assim, uma instrução isolada não faz muito sentido; para obtermos o resultado, precisamos de executar o conjunto de todas as instruções, na ordem correcta.  1.3 - Instruções
Introdução à Lógica da Programação  Um algoritmo é, formalmente, uma sequência finita e não ambígua  de instruções, conducentes à solução de um determinado problema / execução de uma tarefa. Estas instruções não podem ser redundantes nem subjectivas na sua definição; devem ser claras e precisas; cada uma das quais pode ser executada mecanicamente, numa quantidade finita de tempo e com uma quantidade finita de esforço.  Exemplos de algoritmos: - algoritmos das operações básicas (adição, multiplicação, divisão e subtracção) de números reais decimais; - os manuais de electrodomésticos; - ou operações mais simples que podem ser descritas por sequências lógicas, como seja uma receita de culinária ou a troca de um pneu de um carro. 1.4 - Algoritmos
Introdução à Lógica da Programação  Formas de Representação de Algoritmos Dentre as formas de representação de algoritmos mais conhecidas podemos citar: Descrição Narrativa ; Fluxograma  Convencional ; Pseudocódigo , também conhecido como Linguagem Estruturada ou Portugol.
Introdução à Lógica da Programação  Formas de Representação de Algoritmos Descrição Narrativa Nesta forma de representação os algoritmos são expressos directamente em  linguagem natural.
Introdução à Lógica da Programação  Descrição Narrativa Receita de bolo : Misture os ingredientes Unte a forma com manteiga Despeje a mistura na forma Se houver coco ralado então despeje sobre a mistura Leve a forma ao forno Enquanto não corar  deixe a forma no forno Retire do forno Deixe arrefecer Tomar um banho: Entrar na casa de banho e tirar a roupa Abrir a torneira do chuveiro Entrar na água Ensaboar-se Sair da água Fechar a torneira Enxugar-se Vestir-se Troca de um pneu furado : Desapertar ligeiramente as porcas Suspender o carro Retirar as porcas e o pneu Colocar o pneu de reserva Apertar as porcas Baixar o carro Dar o aperto final nas porcas
Introdução à Lógica da Programação  Formas de Representação de Algoritmos Fluxograma Convencional É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam acções (instruções, comandos) distintas. Tal propriedade facilita o entendimento das ideias contidas nos algoritmos e justifica a sua popularidade. Esta forma é aproximadamente intermediária à descrição narrativa e ao pseudocódigo (subitem seguinte), pois é menos imprecisa que a primeira e, no entanto, não se preocupa com detalhes de implementação do programa.
Introdução à Lógica da Programação  Formas de Representação de Algoritmos Fluxograma Convencional
Introdução à Lógica da Programação  Fluxograma Convencional Exemplo: Cálculo da média de um aluno sob a forma de um fluxograma. Partindo do símbolo inicial, há sempre um único caminho orientado a ser seguido, representando a existência de uma única sequência de execução das instruções
Introdução à Lógica da Programação  Formas de Representação de Algoritmos Pseudocódigo Esta forma de representação de algoritmos é rica em detalhes, como a definição dos tipos das variáveis usadas no algoritmo. Assemelha-se bastante à forma em que os programas são escritos. Esta representação é suficientemente geral para permitir que a tradução do algoritmo para uma linguagem de programação específica seja praticamente directa.
Introdução à Lógica da Programação  Pseudocódigo A forma geral da representação de um algoritmo na forma de pseudocódigo. Algoritmo   < nome_do_algoritmo>; <declaração_de_variáveis>; <subalgoritmos> Início <corpo do algoritmo> Fim
Introdução à Lógica da Programação  Pseudocódigo – Representação do algoritmo do cálculo da média de um aluno, na forma de um pseudocódigo . Algoritmo   < nome_do_algoritmo>; <declaração_de_variáveis>; <subalgoritmos> Início <corpo do algoritmo> Fim Algoritmo  Calculo_Media; Var  N1, N2, MEDIA:  real; Início Leia  (N1, N2); MEDIA    (N1 + N2) / 2; Se  MEDIA >=  7   então Escreva  “Aprovado” Senão Escreva  “Reprovado”; Fim_Se Fim
Faça no seu caderno: Crie uma sequência lógica para escovar os dentes depois das refeições. Crie uma sequência lógica para substituir uma lâmpada fundida de um candeeiro. Crie uma sequência lógica para encontrar o número de telefone de um dado nome numa lista telefónica. Exercícios

Int. à Logica de Programação

  • 1.
    Introdução à Programaçãoe Algoritmia António Mansilha ESCOLA E. B. 2,3 /S D. SANCHO II ALIJÓ [email_address] Setembro, 2007 Alijó
  • 2.
    Introdução à Lógicada Programação A lógica é uma ciência de carácter matemática e fortemente ligada à Filosofia . 1.1 - Lógica A lógica é o ramo da filosofia que trata das regras do bem pensar, ou do pensar correcto, sendo, portanto, um instrumento do pensar. A aprendizagem da lógica não constitui um fim em si, mas um meio de garantir que nosso pensamento se faz correctamente para chegar a conhecimentos verdadeiros .
  • 3.
    Introdução à Lógicada Programação A lógica de programação é necessária a quem deseje desenvolver sistemas e programas, permitindo definir a sequência lógica para o desenvolvimento. Lógica de programação Lógica de Programação é a técnica de encadear pensamentos para atingir determinado objectivo, isto é, para resolver determinado problema.
  • 4.
    Introdução à Lógicada Programação Estes pensamentos, podem ser descritos como uma sequência de instruções, que devem ser seguidas para se cumprir uma determinada tarefa. 1.2 - Sequência Lógica Sequência Lógica são passos executados até atingir um objectivo ou solução de um problema.
  • 5.
    Introdução à Lógicada Programação Em linguagem comum, são um conjunto de regras ou normas definidas para a realização de alguma tarefa. 1.3 - Instruções Em informática, instrução é a informação que indica a um computador uma acção elementar a executar.
  • 6.
    Introdução à Lógicada Programação 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. Por exemplo, se quisermos fazer uma omoletas de batatas, precisaremos de executar uma série de instruções: descascar as batatas, bater os ovos, fritar as batatas, etc... Essas instruções tem que ser executadas numa ordem adequada – não se pode descascar as batatas depois de fritá-las. Assim, uma instrução isolada não faz muito sentido; para obtermos o resultado, precisamos de executar o conjunto de todas as instruções, na ordem correcta. 1.3 - Instruções
  • 7.
    Introdução à Lógicada Programação Um algoritmo é, formalmente, uma sequência finita e não ambígua de instruções, conducentes à solução de um determinado problema / execução de uma tarefa. Estas instruções não podem ser redundantes nem subjectivas na sua definição; devem ser claras e precisas; cada uma das quais pode ser executada mecanicamente, numa quantidade finita de tempo e com uma quantidade finita de esforço. Exemplos de algoritmos: - algoritmos das operações básicas (adição, multiplicação, divisão e subtracção) de números reais decimais; - os manuais de electrodomésticos; - ou operações mais simples que podem ser descritas por sequências lógicas, como seja uma receita de culinária ou a troca de um pneu de um carro. 1.4 - Algoritmos
  • 8.
    Introdução à Lógicada Programação Formas de Representação de Algoritmos Dentre as formas de representação de algoritmos mais conhecidas podemos citar: Descrição Narrativa ; Fluxograma Convencional ; Pseudocódigo , também conhecido como Linguagem Estruturada ou Portugol.
  • 9.
    Introdução à Lógicada Programação Formas de Representação de Algoritmos Descrição Narrativa Nesta forma de representação os algoritmos são expressos directamente em linguagem natural.
  • 10.
    Introdução à Lógicada Programação Descrição Narrativa Receita de bolo : Misture os ingredientes Unte a forma com manteiga Despeje a mistura na forma Se houver coco ralado então despeje sobre a mistura Leve a forma ao forno Enquanto não corar deixe a forma no forno Retire do forno Deixe arrefecer Tomar um banho: Entrar na casa de banho e tirar a roupa Abrir a torneira do chuveiro Entrar na água Ensaboar-se Sair da água Fechar a torneira Enxugar-se Vestir-se Troca de um pneu furado : Desapertar ligeiramente as porcas Suspender o carro Retirar as porcas e o pneu Colocar o pneu de reserva Apertar as porcas Baixar o carro Dar o aperto final nas porcas
  • 11.
    Introdução à Lógicada Programação Formas de Representação de Algoritmos Fluxograma Convencional É uma representação gráfica de algoritmos onde formas geométricas diferentes implicam acções (instruções, comandos) distintas. Tal propriedade facilita o entendimento das ideias contidas nos algoritmos e justifica a sua popularidade. Esta forma é aproximadamente intermediária à descrição narrativa e ao pseudocódigo (subitem seguinte), pois é menos imprecisa que a primeira e, no entanto, não se preocupa com detalhes de implementação do programa.
  • 12.
    Introdução à Lógicada Programação Formas de Representação de Algoritmos Fluxograma Convencional
  • 13.
    Introdução à Lógicada Programação Fluxograma Convencional Exemplo: Cálculo da média de um aluno sob a forma de um fluxograma. Partindo do símbolo inicial, há sempre um único caminho orientado a ser seguido, representando a existência de uma única sequência de execução das instruções
  • 14.
    Introdução à Lógicada Programação Formas de Representação de Algoritmos Pseudocódigo Esta forma de representação de algoritmos é rica em detalhes, como a definição dos tipos das variáveis usadas no algoritmo. Assemelha-se bastante à forma em que os programas são escritos. Esta representação é suficientemente geral para permitir que a tradução do algoritmo para uma linguagem de programação específica seja praticamente directa.
  • 15.
    Introdução à Lógicada Programação Pseudocódigo A forma geral da representação de um algoritmo na forma de pseudocódigo. Algoritmo < nome_do_algoritmo>; <declaração_de_variáveis>; <subalgoritmos> Início <corpo do algoritmo> Fim
  • 16.
    Introdução à Lógicada Programação Pseudocódigo – Representação do algoritmo do cálculo da média de um aluno, na forma de um pseudocódigo . Algoritmo < nome_do_algoritmo>; <declaração_de_variáveis>; <subalgoritmos> Início <corpo do algoritmo> Fim Algoritmo Calculo_Media; Var N1, N2, MEDIA: real; Início Leia (N1, N2); MEDIA  (N1 + N2) / 2; Se MEDIA >= 7 então Escreva “Aprovado” Senão Escreva “Reprovado”; Fim_Se Fim
  • 17.
    Faça no seucaderno: Crie uma sequência lógica para escovar os dentes depois das refeições. Crie uma sequência lógica para substituir uma lâmpada fundida de um candeeiro. Crie uma sequência lógica para encontrar o número de telefone de um dado nome numa lista telefónica. Exercícios