SlideShare uma empresa Scribd logo
1 de 81
GRUPO FC LOGIC COMPONENTES:  JOÃO RIBEIRO   ADAM CASSIANI   BRUNNO AUGUSTO   JÚLIO REIS INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO
Introdução à lógica de programação
Conceito de Algoritmo - Dicionário da língua portuguesa: processo de cálculo em que um certo número de regras formais resolvem, na generalidade e sem exceções, problemas da mesma natureza. Nós temos duas vertentes: - Lógica elementar: um conjunto de instruções que devem ser executadas em determinada ordem para atingir seu objetivo. E para que essa ordem possa ser definida, é preciso entender a  seqüência lógica  pensada para a execução das instruções.
Situações habituais ,[object Object],[object Object]
Exemplos ilustrativos ,[object Object],[object Object],[object Object]
O que são variáveis?! ,[object Object],[object Object],[object Object],[object Object]
O que são variáveis?! ,[object Object],Ao lado temos: Armazene o valor 25 na posição de memória de endereço 5
O que é um processo?! ,[object Object]
Operadores ,[object Object]
Operadores ,[object Object]
Operadores ,[object Object],[object Object]
Operadores V- IR À PRAIA F-NÃO IR À PRAIA Cond1: se fizer sol Comd2: se tiver dinheiro. COND.1 E COND.2 RESPOSTA V E V V F E V F V E F F F E F F COND.1 OU COND.2 RESPOSTA V OU V V F OU V V V OU F V F OU F F
Operadores O NÃO NEGA  A PROPOSIÇÃO SEGUINTE! NÃO COND. RESPOSTA NÃO  V F NÃO F V
Linguagem de descrição de algoritmo ,[object Object],[object Object],[object Object]
Linguagem de descrição de algoritmo   início/fim  processamento  Entrada/Saída  Decisão Imprima  média Início Leia Nota1,  Nota2, Nota3 Média = (Nota1 + Nota2 + Nota3) / 3
Linguagem de descrição de algoritmo ,[object Object],[object Object],[object Object],[object Object]
Portugol ,[object Object],[object Object],[object Object]
Portugol Algoritmo  nome_do_algoritmo ‘ Aqui você da o nome ao algoritmo, é sempre bom dar um nome relacionado ao que ele faz e o mais claro possível para melhor identificação ’ Var ‘ Aqui vão ser declaradas todas as variáveis envolvidas no algoritmo, dando seus nomes e seus tipos respectivamente’ Início ‘ Aqui vai a seqüência de todos os comandos do algoritmo que devem ser utilizados para solucionar o problema proposto’ Fim.
Portugol Ex:  Algoritmo  media_e_aprovado Var n1,n2,n3,m : numerica nome  :  literal Início Escreva(‘Qual o nome do aluno?’) Leia(nome) Escreva(‘Qual a 1ºnota ?’) Leia(n1) Escreva(‘Qual a 2ºnota ?’) Leia(n2) Escreva(‘Qual a 3ºnota ?’) Leia(n3) m := (n1+n2+n3)/3 se  m>=6  então Escreva(nome,’APROVADO’) senão Escreva(nome,’REPROVADO’)  Fim.
Fundamentos da Computação
Projetos de Algoritmos
Descrição Textual análise Investigação do problema projeto Solução lógica
Descrição Textual - Análise ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Descrição Textual - Análise ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Descrição Textual - Projeto ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Descrição Textual - Projeto ,[object Object],[object Object],[object Object],[object Object],[object Object]
Descrição Textual - Projeto ,[object Object],[object Object],[object Object],[object Object],[object Object]
Descrição Textual - UML ,[object Object],[object Object],[object Object],[object Object]
Descrição Textual - UML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Descrição Textual - UML
Descrição Textual - UML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Casos de Uso
Descrição Textual - UML
Descrição Textual - UML Exemplo:(sistema de conta corrente) Caso de Uso: Sacar dinheiro 1. Cliente informa número da conta. 2. Cliente informa senha. 3. Sistema valida conta corrente e senha (Validar Conta). 4. Cliente informa o valor do saque. 5. Sistema autoriza o saque e lança o débito na conta corrente. Variação: cliente inválido 3.1 Sistema não reconhece conta corrente e senha como válida. 3.2 Operação é cancelada. Variação: saldo insuficiente 5.1 Sistema não autoriza o saque do valor solicitado pelo cliente. 5.2 Operação é cancelada.
Linguagem ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Linguagem ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Teste de Performance ,[object Object],[object Object],[object Object]
Teste de performance ,[object Object],[object Object]
Teste de performance ,[object Object],[object Object],[object Object]
Teste de Performance ,[object Object],[object Object]
Teste de performance ,[object Object],[object Object],[object Object],[object Object],[object Object]
Teste de performance ,[object Object],[object Object],[object Object],[object Object]
Teste de performance ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Teste de performance ,[object Object],[object Object],[object Object],[object Object]
Fundamentos da Computação
Estruturas de Dados ,[object Object],[object Object],[object Object],[object Object],[object Object]
Listas Listas Lineares Não Lineares Seqüencial Encadeada Estática Estática Dinâmicas
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],A  B  C  D  E  _  G  H  I  J  L  M  N  O  P  Q  R  S  T  U  V  X  Z A  B  C  D  E  G  H  I  J  L  M  N  O  P  Q  R  S  T  U  V  X  Z A  B  C  D  E  F  G  H  I  J  L  M  N  O  P  Q  R  S  T  U  V  X  Z
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lista linear seqüencial ,[object Object],[object Object]
5 1 Marcia 3216-9685 4 2 Tarcisio 3217-8541 -1 3 Eleonora 3217-8542 8 4 Roberto 3217-9652 6 5 Ana 3219-8541 7 6 Taís 32198653 2 7 Carlos 3216-1781 3 8 Felipe 3214-2432 10 9 Lucas 3216-8574 1 10 Igor 3215-9341 9
Lista linear encadeada ,[object Object]
Lista linear encadeada ,[object Object]
Lista linear encadeada ,[object Object]
Lista linear encadeada ,[object Object]
Lista lineares especiais ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Filas
Pilhas
Árvores ,[object Object],[object Object],[object Object],[object Object]
Árvores Binárias  ,[object Object],[object Object],[object Object],[object Object]
Árvore de Busca Binária ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Busca
Exclusão
Exclusão de nó com um filho
Exclusão de um nó com dois filhos
Árvore AVL(Adelson Velsky e Landis)  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Árvores Rubro-Negras
Árvore B
Arvores 2-3-4-B ,[object Object],[object Object],[object Object],[object Object],[object Object]
Árvore B+
Teoria dos Grafos ,[object Object],[object Object]
ATÉ A APRESENTAÇÃO À VERA!
ATÉ A APRESENTAÇÃO À VERA!

Mais conteúdo relacionado

Mais procurados

Introdução ao paradigma imperativo
Introdução ao paradigma imperativoIntrodução ao paradigma imperativo
Introdução ao paradigma imperativoTony Alexander Hild
 
Algoritmo estruturado
Algoritmo estruturadoAlgoritmo estruturado
Algoritmo estruturadodasko
 
Algoritmos computacionais
Algoritmos computacionaisAlgoritmos computacionais
Algoritmos computacionaisDérick Platini
 
4 introdução ao paradigma funcional
4 introdução ao paradigma funcional4 introdução ao paradigma funcional
4 introdução ao paradigma funcionalPéricles Miranda
 
Apostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgApostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgRegis Magalhães
 
Fundamento da ciência da computação
Fundamento da ciência da computaçãoFundamento da ciência da computação
Fundamento da ciência da computaçãoMarcos Gregorio
 
mod1-algoritmia
mod1-algoritmiamod1-algoritmia
mod1-algoritmiadiogoa21
 
Linguagens de programação 12º M11
Linguagens de programação 12º M11Linguagens de programação 12º M11
Linguagens de programação 12º M11Luis Ferreira
 
Guia prático para criar algoritmos
Guia prático para criar algoritmosGuia prático para criar algoritmos
Guia prático para criar algoritmosMauro Pereira
 
Linguagens de programação 12º M12
Linguagens de programação 12º M12Linguagens de programação 12º M12
Linguagens de programação 12º M12Luis Ferreira
 
5. introducao a linguagem c
5. introducao a linguagem c5. introducao a linguagem c
5. introducao a linguagem cEugenio Caetano
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoMauro Pereira
 

Mais procurados (20)

Introdução ao paradigma imperativo
Introdução ao paradigma imperativoIntrodução ao paradigma imperativo
Introdução ao paradigma imperativo
 
Algoritmo estruturado
Algoritmo estruturadoAlgoritmo estruturado
Algoritmo estruturado
 
Algoritmos computacionais
Algoritmos computacionaisAlgoritmos computacionais
Algoritmos computacionais
 
4 introdução ao paradigma funcional
4 introdução ao paradigma funcional4 introdução ao paradigma funcional
4 introdução ao paradigma funcional
 
Apostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o VisualgApostila de Introdução aos Algoritmos - usando o Visualg
Apostila de Introdução aos Algoritmos - usando o Visualg
 
Módulo 1 de PSI
Módulo 1 de PSIMódulo 1 de PSI
Módulo 1 de PSI
 
Módulo 2 pascal
Módulo 2  pascalMódulo 2  pascal
Módulo 2 pascal
 
Fundamento da ciência da computação
Fundamento da ciência da computaçãoFundamento da ciência da computação
Fundamento da ciência da computação
 
Paradigma funcional
Paradigma funcionalParadigma funcional
Paradigma funcional
 
mod1-algoritmia
mod1-algoritmiamod1-algoritmia
mod1-algoritmia
 
Apostila c
Apostila cApostila c
Apostila c
 
Apostila Visualg
Apostila VisualgApostila Visualg
Apostila Visualg
 
Revista programar 21
Revista programar 21Revista programar 21
Revista programar 21
 
Linguagens de programação 12º M11
Linguagens de programação 12º M11Linguagens de programação 12º M11
Linguagens de programação 12º M11
 
Guia prático para criar algoritmos
Guia prático para criar algoritmosGuia prático para criar algoritmos
Guia prático para criar algoritmos
 
Codigo limpo
Codigo limpoCodigo limpo
Codigo limpo
 
Etapas da programação
Etapas da programaçãoEtapas da programação
Etapas da programação
 
Linguagens de programação 12º M12
Linguagens de programação 12º M12Linguagens de programação 12º M12
Linguagens de programação 12º M12
 
5. introducao a linguagem c
5. introducao a linguagem c5. introducao a linguagem c
5. introducao a linguagem c
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 

Semelhante a Introdução à Lógica de Programação

Algorítmo estruturado
Algorítmo estruturadoAlgorítmo estruturado
Algorítmo estruturadoNaldo Falaschi
 
Lógica de programação 1
Lógica de programação 1Lógica de programação 1
Lógica de programação 1Diego Rodrigues
 
Algoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmosAlgoritmos - Aula 02 - Construcao de algoritmos
Algoritmos - Aula 02 - Construcao de algoritmosRodrigo Kiyoshi Saito
 
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çãoJose Augusto Cintra
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de ProgramaçãoAdao Chiavelli
 
Aulas 13 e 14 - Algoritmos
Aulas 13 e 14 - AlgoritmosAulas 13 e 14 - Algoritmos
Aulas 13 e 14 - AlgoritmosJocelma Rios
 
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdfJustinoFontes
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascalangelicamenegassi
 
Algoritmos e linguagem pascal
Algoritmos e linguagem pascalAlgoritmos e linguagem pascal
Algoritmos e linguagem pascalangelicamenegassi
 
Este trabalho trata
Este trabalho trataEste trabalho trata
Este trabalho trataRoni Reis
 
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfTREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfssuser059c2c1
 
Resumo diagrama de casos de utilização
Resumo diagrama de casos de utilizaçãoResumo diagrama de casos de utilização
Resumo diagrama de casos de utilizaçãoMarco Coelho
 
Apostila de algoritimos
Apostila de algoritimosApostila de algoritimos
Apostila de algoritimosCleide Soares
 

Semelhante a Introdução à Lógica de Programação (20)

Aula02
Aula02Aula02
Aula02
 
Logica Programação. ...
Logica Programação. ...Logica Programação. ...
Logica Programação. ...
 
Aula02
Aula02Aula02
Aula02
 
Algorítmo estruturado
Algorítmo estruturadoAlgorítmo estruturado
Algorítmo estruturado
 
134
134134
134
 
Lógica de programação 1
Lógica de programação 1Lógica de programação 1
Lógica de programação 1
 
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 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
 
Lógica de Programação
Lógica de ProgramaçãoLógica de Programação
Lógica de Programação
 
Aulas 13 e 14 - Algoritmos
Aulas 13 e 14 - AlgoritmosAulas 13 e 14 - Algoritmos
Aulas 13 e 14 - Algoritmos
 
Macro br
Macro brMacro br
Macro br
 
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
2.0_Programacao_PRG29002_-_Pseudocódigo.pdf
 
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
 
PDF.pdf
PDF.pdfPDF.pdf
PDF.pdf
 
Este trabalho trata
Este trabalho trataEste trabalho trata
Este trabalho trata
 
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdfTREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
 
Logica de Programacao
Logica de ProgramacaoLogica de Programacao
Logica de Programacao
 
Resumo diagrama de casos de utilização
Resumo diagrama de casos de utilizaçãoResumo diagrama de casos de utilização
Resumo diagrama de casos de utilização
 
Apostila de algoritimos
Apostila de algoritimosApostila de algoritimos
Apostila de algoritimos
 

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

  • 1. GRUPO FC LOGIC COMPONENTES: JOÃO RIBEIRO ADAM CASSIANI BRUNNO AUGUSTO JÚLIO REIS INTRODUÇÃO À LÓGICA DE PROGRAMAÇÃO
  • 2. Introdução à lógica de programação
  • 3. Conceito de Algoritmo - Dicionário da língua portuguesa: processo de cálculo em que um certo número de regras formais resolvem, na generalidade e sem exceções, problemas da mesma natureza. Nós temos duas vertentes: - Lógica elementar: um conjunto de instruções que devem ser executadas em determinada ordem para atingir seu objetivo. E para que essa ordem possa ser definida, é preciso entender a seqüência lógica pensada para a execução das instruções.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. Operadores V- IR À PRAIA F-NÃO IR À PRAIA Cond1: se fizer sol Comd2: se tiver dinheiro. COND.1 E COND.2 RESPOSTA V E V V F E V F V E F F F E F F COND.1 OU COND.2 RESPOSTA V OU V V F OU V V V OU F V F OU F F
  • 13. Operadores O NÃO NEGA A PROPOSIÇÃO SEGUINTE! NÃO COND. RESPOSTA NÃO V F NÃO F V
  • 14.
  • 15. Linguagem de descrição de algoritmo início/fim processamento Entrada/Saída Decisão Imprima média Início Leia Nota1, Nota2, Nota3 Média = (Nota1 + Nota2 + Nota3) / 3
  • 16.
  • 17.
  • 18. Portugol Algoritmo nome_do_algoritmo ‘ Aqui você da o nome ao algoritmo, é sempre bom dar um nome relacionado ao que ele faz e o mais claro possível para melhor identificação ’ Var ‘ Aqui vão ser declaradas todas as variáveis envolvidas no algoritmo, dando seus nomes e seus tipos respectivamente’ Início ‘ Aqui vai a seqüência de todos os comandos do algoritmo que devem ser utilizados para solucionar o problema proposto’ Fim.
  • 19. Portugol Ex: Algoritmo media_e_aprovado Var n1,n2,n3,m : numerica nome : literal Início Escreva(‘Qual o nome do aluno?’) Leia(nome) Escreva(‘Qual a 1ºnota ?’) Leia(n1) Escreva(‘Qual a 2ºnota ?’) Leia(n2) Escreva(‘Qual a 3ºnota ?’) Leia(n3) m := (n1+n2+n3)/3 se m>=6 então Escreva(nome,’APROVADO’) senão Escreva(nome,’REPROVADO’) Fim.
  • 22. Descrição Textual análise Investigação do problema projeto Solução lógica
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 31.
  • 33. Descrição Textual - UML Exemplo:(sistema de conta corrente) Caso de Uso: Sacar dinheiro 1. Cliente informa número da conta. 2. Cliente informa senha. 3. Sistema valida conta corrente e senha (Validar Conta). 4. Cliente informa o valor do saque. 5. Sistema autoriza o saque e lança o débito na conta corrente. Variação: cliente inválido 3.1 Sistema não reconhece conta corrente e senha como válida. 3.2 Operação é cancelada. Variação: saldo insuficiente 5.1 Sistema não autoriza o saque do valor solicitado pelo cliente. 5.2 Operação é cancelada.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 45.
  • 46. Listas Listas Lineares Não Lineares Seqüencial Encadeada Estática Estática Dinâmicas
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59. 5 1 Marcia 3216-9685 4 2 Tarcisio 3217-8541 -1 3 Eleonora 3217-8542 8 4 Roberto 3217-9652 6 5 Ana 3219-8541 7 6 Taís 32198653 2 7 Carlos 3216-1781 3 8 Felipe 3214-2432 10 9 Lucas 3216-8574 1 10 Igor 3215-9341 9
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65. Filas
  • 67.
  • 68.
  • 69.
  • 70. Busca
  • 72. Exclusão de nó com um filho
  • 73. Exclusão de um nó com dois filhos
  • 74.
  • 77.
  • 79.