SlideShare uma empresa Scribd logo
1 de 21
Lógica de programação




         Prof: Eduardo Rossit Paiossin
      Prof: Leandro Maranim Dei Santi
Conteúdo da aula

      Exercícios da ultima aula

      Considerações

     Dicas

      Algoritmos (tipos de representação)
        • Código natural
        • Fluxograma
        • Pseudo código
Exercícios da aula passada

1) Crie uma seqüência lógica para tomar banho.
Entrar no banheiro
Tirar a roupa
Entrar no box
Abrir a torneira do chuveiro
Entrar na água
Ensaboar-se
Sair da água
Fechar a torneira
Sair do box
Enxugar-se
Vestir-se
Refinando o Algoritmo (RELEMBRANDO)
Ação Primitiva: É uma ação que não pode mais
   ser refinada.
Ação não Primitiva: É uma ação que pode ser
   refinada ainda mais. Ela deve ser refinada até
   virar uma ação primitiva.
EX:
Ref. Entrar no banheiro
      Abrir a porta
      Passar pela porta
      Fechar a porta
fim-ref.
Considerações


Vimos que ALGORITMO é uma seqüência lógica
de instruções que podem ser executadas.
É importante ressaltar que qualquer tarefa que
siga determinado padrão pode ser descrita
por um algoritmo.
Dicas

Para escrever um algoritmo precisamos descrever a
seqüência de instruções, de maneira simples e objetiva.
Para isso utilizaremos algumas técnicas:
   · 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
Dicas

Ao montar um algoritmo, precisamos dividir o problema
apresentado em três fases fundamentais.




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
Algoritmo (tipos de representação)
   Existem diversas formas de representação de
   algoritmos, mas não há um consenso com
   relação à melhor delas.

   Dentre as formas de representação de
   algoritmos mais conhecidas podemos citar:

   Descrição Narrativa
   Fluxograma
   Pseudocódigo
Algoritmo (tipos de representação)
Descrição narrativa ou descrição natural :
Nesta forma de representação os algoritmos são
    expressos diretamente em linguagem natural.
Esta representação é pouco usada na prática porque o
uso da linguagem natural muitas vezes dá oportunidade
a más interpretações, ambigüidades e imprecisões.
Por exemplo, a instrução "afrouxar ligeiramente as
porcas" no algoritmo da troca de pneus está sujeita a
interpretações diferentes por pessoas distintas. Uma
instrução mais precisa seria: "afrouxar a porca, girando-
a 30º no sentido anti-horário".
    Usadas por nós até agora para a resolução dos
    problemas.
Algoritmo (tipos de representação)

Fluxograma: É uma representação gráfica de
algoritmos que emprega formas geométricas
padronizadas para indicar as diversa ações e
decisões que devem ser executadas para resolver
um problema. Tal propriedade facilita o
entendimento das idéias contidas nos algoritmos e
justifica 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, como o tipo das
variáveis usadas.
Algoritmo (tipos de representação)

Formas geométricas do Fluxograma:
Algoritmo (tipos de representação)

Existem mais expressões geométricas na
composição de fluxograma.

Para representar a saída de dados para o monitor
usamos uma figura geométrica diferente da de uma
saída de dados por meio de uma impressora.

No momento não vamos nos preocupar com isso. O
intuito ainda é a compreensão da lógica e do fluxo
básico das informações.
Algoritmo (tipos de representação)

   Pseudocódigo ou portugol:
Esta forma de representação de algoritmos é rica em
detalhes, como a definição dos tipos das variáveis
usadas no algoritmo. Por assemelhar-se bastante à
forma em que os programas são escritos, encontra
muita aceitação
Este nome é uma alusão à posterior implementação em
uma linguagem de programação, ou seja, quando
formos programar em uma linguagem, por exemplo
Visual Basic, estaremos gerando código em
Visual Basic. Por isso os algoritmos são independentes
das linguagens de programação.
Algoritmo (tipos de representação)

   Pseudocódigo:
Na verdade, esta representação é suficientemente geral
para permitir a tradução de um algoritmo nela
representado para uma linguagem de programação
específica seja praticamente direta.
Pseudocódigo


A forma geral da representação de um algoritmo na
forma de pseudocódigo é a seguinte:
Algoritmo <nome_do_algoritmo>
              <declaração_de_variáveis>
              <subalgoritmos>
Início
     <corpo do algoritmo>
Fim
Pseudocódigo

Algoritmo é uma palavra que indica o início da definição de
um algoritmo em forma de pseudocódigo.
<nome_do_algoritmo> é um nome simbólico dado ao
algoritmo com a finalidade de distingui-los dos demais.
<declaração_de_variáveis> consiste em uma porção
opcional onde são declaradas as variáveis globais usadas
no algoritmo principal e, eventualmente, nos subalgoritmos.
<subalgoritmos> consiste de uma porção opcional do
pseudocódigo onde são definidos os subalgoritmos.
Início e Fim são respectivamente as palavras que delimitam
o início e o término do conjunto de instruções do corpo do
algoritmo
Pseudocódigo (EXEMPLO)
Representação do algoritmo do cálculo da média de um
  aluno, na forma de um pseudocódigo.
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
Exercícios

 1) Identifique os dados de entrada, processamento
 e saída no algoritmo abaixo
 · Receba código da peça
 · Receba valor da peça
 · Receba Quantidade de peças
 · Calcule o valor total da peça (Quantidade * Valor
 da peça)
 · Mostre o código da peça e seu valor total
Exercícios

2) Faça um pseudocódigo para “Calcular o estoque
médio de uma peça”, sendo que
ESTOQUEMÉDIO = (QUANTIDADE MÍNIMA +
QUANTIDADE MÁXIMA) /2
3) Faça um fluxograma para “Calcular o estoque médio
de uma peça”, sendo que
ESTOQUEMÉDIO = (QUANTIDADE MÍNIMA +
QUANTIDADE MÁXIMA) /2
4) Construa um fluxograma que :
· Leia a cotação do dólar
· Leia um valor em dólares
· Converta esse valor para Real
· Mostre o resultado
Exercícios


4) Desenvolva um fluxograma que:
· Leia 4 (quatro) números
· Calcule o quadrado para cada um
· Somem todos e
· Mostre o resultado
Bibliografia
 Formas de Representação de Algorítmo. FORMAS DE
 REPRESENTAÇÃO DE ALMORITMOS Disponível em:
    <http://www.tutomania.com.br/tutorial/formas-de-
  representacao-de-algoritmos> Acesso em: 17 ABRIL.
                    2011, 21:00:00.

   Design de algorítmos e Programação estruturada.
             ALMORITMOS Disponível em:
   <http://www.di.ubi.pt/~fsilva/prog/Prog_Cap25.pdf>
         Acesso em: 17 ABRIL. 2011, 21:00:00.

Mais conteúdo relacionado

Mais procurados

Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Adriano Teixeira de Souza
 
Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2
isa_ise
 

Mais procurados (20)

Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
UML
UMLUML
UML
 
Algoritmos 1 - Semana 2
Algoritmos 1 - Semana 2Algoritmos 1 - Semana 2
Algoritmos 1 - Semana 2
 
Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2Algoritmos resolvidos lista 2
Algoritmos resolvidos lista 2
 
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição  (ver...
POO - Unidade 2 (parte 2) - Classe de Associação, Agregação, Composição (ver...
 
Estrutura de Dados Apoio (Tabela Hash)
Estrutura de Dados Apoio (Tabela Hash)Estrutura de Dados Apoio (Tabela Hash)
Estrutura de Dados Apoio (Tabela Hash)
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
 
Lecture 7 Control Statements.pdf
Lecture 7 Control Statements.pdfLecture 7 Control Statements.pdf
Lecture 7 Control Statements.pdf
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software Architecture
 
Aula 07 - Diagrama de sequencia
Aula 07 - Diagrama de sequenciaAula 07 - Diagrama de sequencia
Aula 07 - Diagrama de sequencia
 
Apresentação da UML
Apresentação da UMLApresentação da UML
Apresentação da UML
 
UML - Diagrama de Pacotes
UML - Diagrama de PacotesUML - Diagrama de Pacotes
UML - Diagrama de Pacotes
 
BDI - Aula 09 - SQL e Algebra Relacional
BDI - Aula 09 - SQL e Algebra RelacionalBDI - Aula 09 - SQL e Algebra Relacional
BDI - Aula 09 - SQL e Algebra Relacional
 
Estrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesEstrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e Funções
 
Recursividade
RecursividadeRecursividade
Recursividade
 
Análise e Modelagem com UML
Análise e Modelagem com UMLAnálise e Modelagem com UML
Análise e Modelagem com UML
 
Aula 03 - Introdução aos Diagramas de Atividade
Aula 03 - Introdução aos Diagramas de AtividadeAula 03 - Introdução aos Diagramas de Atividade
Aula 03 - Introdução aos Diagramas de Atividade
 
Introduction to java and oop
Introduction to java and oopIntroduction to java and oop
Introduction to java and oop
 

Semelhante a Aula02

Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
angelicamenegassi
 
Apostila de algoritimos
Apostila de algoritimosApostila de algoritimos
Apostila de algoritimos
Cleide Soares
 
Logica Algoritmo 02 Algoritmo
Logica Algoritmo 02 AlgoritmoLogica Algoritmo 02 Algoritmo
Logica Algoritmo 02 Algoritmo
Regis Magalhães
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
Mauro Pereira
 

Semelhante a Aula02 (20)

Aula02
Aula02Aula02
Aula02
 
Algoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmosAlgoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmos
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascal
 
Apostila de algoritimos
Apostila de algoritimosApostila de algoritimos
Apostila de algoritimos
 
Logica Algoritmo 02 Algoritmo
Logica Algoritmo 02 AlgoritmoLogica Algoritmo 02 Algoritmo
Logica Algoritmo 02 Algoritmo
 
Aula 3 - Formas de Representacao de Algoritmos.pptx
Aula 3 - Formas de Representacao de Algoritmos.pptxAula 3 - Formas de Representacao de Algoritmos.pptx
Aula 3 - Formas de Representacao de Algoritmos.pptx
 
Algoritmos e Lógica de Programação
Algoritmos e Lógica de ProgramaçãoAlgoritmos e Lógica de Programação
Algoritmos e Lógica de Programação
 
Algoritmo estruturado
Algoritmo estruturadoAlgoritmo estruturado
Algoritmo estruturado
 
Cap03
Cap03Cap03
Cap03
 
Cap03
Cap03Cap03
Cap03
 
Cap03
Cap03Cap03
Cap03
 
FC-Logic
FC-LogicFC-Logic
FC-Logic
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
Aula 01 Logica de Programacao - Logica Matematica 1.pdfAula 01 Logica de Programacao - Logica Matematica 1.pdf
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
 
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
Aula 01 Logica de Programacao - Logica Matematica 1.pdfAula 01 Logica de Programacao - Logica Matematica 1.pdf
Aula 01 Logica de Programacao - Logica Matematica 1.pdf
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de AlgoritmosAlgoritmos - Formas de Representação de Algoritmos
Algoritmos - Formas de Representação de Algoritmos
 
Algoritmia (Conceitos)
Algoritmia (Conceitos)Algoritmia (Conceitos)
Algoritmia (Conceitos)
 
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptxAula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
 

Mais de Eduardo Paiossin (19)

Aula01 orçamento
Aula01   orçamentoAula01   orçamento
Aula01 orçamento
 
Aula01 hardware
Aula01   hardwareAula01   hardware
Aula01 hardware
 
Aula07
Aula07Aula07
Aula07
 
Aula06
Aula06Aula06
Aula06
 
Aula05
Aula05Aula05
Aula05
 
Aula04
Aula04Aula04
Aula04
 
Aula03
Aula03Aula03
Aula03
 
Aula01
Aula01Aula01
Aula01
 
TCC - Pós Graduação - Gerencia de Projetos - PMI
TCC - Pós Graduação - Gerencia de Projetos - PMITCC - Pós Graduação - Gerencia de Projetos - PMI
TCC - Pós Graduação - Gerencia de Projetos - PMI
 
Aula10
Aula10Aula10
Aula10
 
Aula09
Aula09Aula09
Aula09
 
Aula09
Aula09Aula09
Aula09
 
Aula08
Aula08Aula08
Aula08
 
Aula07
Aula07Aula07
Aula07
 
Aula06
Aula06Aula06
Aula06
 
Aula05
Aula05Aula05
Aula05
 
Aula04
Aula04Aula04
Aula04
 
Aula03
Aula03Aula03
Aula03
 
Aula01
Aula01Aula01
Aula01
 

Aula02

  • 1. Lógica de programação Prof: Eduardo Rossit Paiossin Prof: Leandro Maranim Dei Santi
  • 2. Conteúdo da aula  Exercícios da ultima aula  Considerações Dicas  Algoritmos (tipos de representação) • Código natural • Fluxograma • Pseudo código
  • 3. Exercícios da aula passada 1) Crie uma seqüência lógica para tomar banho. Entrar no banheiro Tirar a roupa Entrar no box Abrir a torneira do chuveiro Entrar na água Ensaboar-se Sair da água Fechar a torneira Sair do box Enxugar-se Vestir-se
  • 4. Refinando o Algoritmo (RELEMBRANDO) Ação Primitiva: É uma ação que não pode mais ser refinada. Ação não Primitiva: É uma ação que pode ser refinada ainda mais. Ela deve ser refinada até virar uma ação primitiva. EX: Ref. Entrar no banheiro Abrir a porta Passar pela porta Fechar a porta fim-ref.
  • 5. Considerações Vimos que ALGORITMO é uma seqüência lógica de instruções que podem ser executadas. É importante ressaltar que qualquer tarefa que siga determinado padrão pode ser descrita por um algoritmo.
  • 6. Dicas Para escrever um algoritmo precisamos descrever a seqüência de instruções, de maneira simples e objetiva. Para isso utilizaremos algumas técnicas: · 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
  • 7. Dicas Ao montar um algoritmo, precisamos dividir o problema apresentado em três fases fundamentais. 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
  • 8. Algoritmo (tipos de representação) Existem diversas formas de representação de algoritmos, mas não há um consenso com relação à melhor delas. Dentre as formas de representação de algoritmos mais conhecidas podemos citar: Descrição Narrativa Fluxograma Pseudocódigo
  • 9. Algoritmo (tipos de representação) Descrição narrativa ou descrição natural : Nesta forma de representação os algoritmos são expressos diretamente em linguagem natural. Esta representação é pouco usada na prática porque o uso da linguagem natural muitas vezes dá oportunidade a más interpretações, ambigüidades e imprecisões. Por exemplo, a instrução "afrouxar ligeiramente as porcas" no algoritmo da troca de pneus está sujeita a interpretações diferentes por pessoas distintas. Uma instrução mais precisa seria: "afrouxar a porca, girando- a 30º no sentido anti-horário". Usadas por nós até agora para a resolução dos problemas.
  • 10. Algoritmo (tipos de representação) Fluxograma: É uma representação gráfica de algoritmos que emprega formas geométricas padronizadas para indicar as diversa ações e decisões que devem ser executadas para resolver um problema. Tal propriedade facilita o entendimento das idéias contidas nos algoritmos e justifica 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, como o tipo das variáveis usadas.
  • 11. Algoritmo (tipos de representação) Formas geométricas do Fluxograma:
  • 12. Algoritmo (tipos de representação) Existem mais expressões geométricas na composição de fluxograma. Para representar a saída de dados para o monitor usamos uma figura geométrica diferente da de uma saída de dados por meio de uma impressora. No momento não vamos nos preocupar com isso. O intuito ainda é a compreensão da lógica e do fluxo básico das informações.
  • 13. Algoritmo (tipos de representação) Pseudocódigo ou portugol: Esta forma de representação de algoritmos é rica em detalhes, como a definição dos tipos das variáveis usadas no algoritmo. Por assemelhar-se bastante à forma em que os programas são escritos, encontra muita aceitação Este nome é uma alusão à posterior implementação em uma linguagem de programação, ou seja, quando formos programar em uma linguagem, por exemplo Visual Basic, estaremos gerando código em Visual Basic. Por isso os algoritmos são independentes das linguagens de programação.
  • 14. Algoritmo (tipos de representação) Pseudocódigo: Na verdade, esta representação é suficientemente geral para permitir a tradução de um algoritmo nela representado para uma linguagem de programação específica seja praticamente direta.
  • 15. Pseudocódigo A forma geral da representação de um algoritmo na forma de pseudocódigo é a seguinte: Algoritmo <nome_do_algoritmo> <declaração_de_variáveis> <subalgoritmos> Início <corpo do algoritmo> Fim
  • 16. Pseudocódigo Algoritmo é uma palavra que indica o início da definição de um algoritmo em forma de pseudocódigo. <nome_do_algoritmo> é um nome simbólico dado ao algoritmo com a finalidade de distingui-los dos demais. <declaração_de_variáveis> consiste em uma porção opcional onde são declaradas as variáveis globais usadas no algoritmo principal e, eventualmente, nos subalgoritmos. <subalgoritmos> consiste de uma porção opcional do pseudocódigo onde são definidos os subalgoritmos. Início e Fim são respectivamente as palavras que delimitam o início e o término do conjunto de instruções do corpo do algoritmo
  • 17. Pseudocódigo (EXEMPLO) Representação do algoritmo do cálculo da média de um aluno, na forma de um pseudocódigo. 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
  • 18. Exercícios 1) Identifique os dados de entrada, processamento e saída no algoritmo abaixo · Receba código da peça · Receba valor da peça · Receba Quantidade de peças · Calcule o valor total da peça (Quantidade * Valor da peça) · Mostre o código da peça e seu valor total
  • 19. Exercícios 2) Faça um pseudocódigo para “Calcular o estoque médio de uma peça”, sendo que ESTOQUEMÉDIO = (QUANTIDADE MÍNIMA + QUANTIDADE MÁXIMA) /2 3) Faça um fluxograma para “Calcular o estoque médio de uma peça”, sendo que ESTOQUEMÉDIO = (QUANTIDADE MÍNIMA + QUANTIDADE MÁXIMA) /2 4) Construa um fluxograma que : · Leia a cotação do dólar · Leia um valor em dólares · Converta esse valor para Real · Mostre o resultado
  • 20. Exercícios 4) Desenvolva um fluxograma que: · Leia 4 (quatro) números · Calcule o quadrado para cada um · Somem todos e · Mostre o resultado
  • 21. Bibliografia Formas de Representação de Algorítmo. FORMAS DE REPRESENTAÇÃO DE ALMORITMOS Disponível em: <http://www.tutomania.com.br/tutorial/formas-de- representacao-de-algoritmos> Acesso em: 17 ABRIL. 2011, 21:00:00. Design de algorítmos e Programação estruturada. ALMORITMOS Disponível em: <http://www.di.ubi.pt/~fsilva/prog/Prog_Cap25.pdf> Acesso em: 17 ABRIL. 2011, 21:00:00.