SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
TIAGO SANTOS
SANTOS.T.J.DOS@GMAIL.COM
Introdução à Lógica de
Programação
Introdução
Agenda
• Conceitos
• Algoritmo
• Concepção
• Representação
• Algoritmo & Programação
Conceitos
Lógica
• Originária do grego logos (linguagem racional)
• Michaelis: “Parte da filosofia que se ocupa das
formas do pensamento e das operações
intelectuais.”
• Forma – maneira como organizado e apresentado:
• Ordem no pensamento
• Encadeamento ordenado de ideias
Lógica
• Exemplos:
• Todo mamífero é um animal
• Todo cavalo é um mamífero
• Portanto, todo cavalo é um animal
• Preciso de uma caneta
• Existe uma caneta dentro da gaveta
• A gaveta está fechada
• Preciso primeiro abrir a gaveta para depois pegar a
caneta
Lógica de programação
• Uso do encadeamento do raciocínio na
programação de computadores, objetivando o
desenvolvimento de soluções para resolução de
problemas.
• A expressão do raciocínio através de algoritmos
• Objetivo principal do estudo da Lógica de
Programação é a construção de algoritmos
coerentes e válidos.
Algoritmo
• Uma sequência de instruções que visam atingir um
objetivo bem definido
• Exemplo:
• Receita de bolo
• Instruções de como chegar em um local
• Fórmula para cálculo de média aritmética
• Método de ordenação de uma listagem de números
Algoritmo
• Como fazer um algoritmo?
• Concepção
• Entrada
• Processamento
• Saída
• Representação
• Descrição narrativa
• Fluxograma
• Pseudocódigo
Algoritmo
• Caso de exemplo:
• Na UNIBRA, para ser aprovado sem ter que passar por
uma avalição final é necessário obter um valor de média
superior ou igual a 7. Lembrando que, no geral, são
realizados dois exercícios e um interdisciplinar.
• Como representar um algoritmo que informe se o aluno
foi aprovado sem a necessidade de ir para a avaliação
final (passar direto)?
Algoritmo
Concepção
Etapas básicas
Processamento
Entrada
Saída
Etapas básicas
• Entrada
• Exemplo: Os valores das notas dos dois exercícios e do
interdisciplinar
• Pode não possuir explicitamente uma entrada, mas terá um
estado inicial
• Processamento
• Exemplo: Cálculo da média aritmética das notas
• Manipulação dos dados de entrada ou ação sobre o estado
inicial
• Saída
• Exemplo: A afirmação ou negação de que o aluno passou
direto
• Pode não possuir explicitamente uma saída, mas terá um
estado final
Algoritmo
Representação
Descrição narrativa
• Uso da linguagem (português, inglês ...) para
descrever os passos a serem seguidos para
obtenção da solução:
1. Obter as notas das avaliações 1, 2 e 3
2. Calcular a média aritmética das três notas
3. Verificar o valor da média.
1. Se o valor for maior ou igual a 7: o aluno passou direto.
2. Senão: o aluno não passou direto.
Fluxograma
• Uso de símbolos com significados definidos:
Início ou fim do fluxograma
Operação de cálculo, de atribuição e
chamada ou retorno de funções
Operação de entrada e dados
Operação de saída de dados
Decisão
Fluxograma
media = (n1 + n2 + n3) / 3
n1, n2, n3
media ≥ 7
FIM
“Não passou direto”
“Passou direto”
INÍCIO
Falso
Verdadeiro
Pseudocódigo
algoritmo "Nota Media"
var
n1, n2, n3, media: real
inicio
escreval("Informe as notas das avaliações 1, 2 e 3: ")
leia(n1, n2, n3)
media <- (n1 + n2 + n3) / 3
se (media >= 7) entao
escreva("Passou direto")
senao
escreva("Não passou direto")
fimse
fimalgoritmo
Vantagens e desvantagens
Vantagens Desvantagens
Descrição Narrativa
Sabendo falar, ao menos na
forma falada conseguimos
descrever.
Cada pessoa descreve da
sua forma, podendo ser
impreciso.
Fluxograma
Uma figura “fala muito
mais”. Obedece a um certo
padrão.
De análise complicada se o
algoritmo for grande. Não
possui suporte a definição
de tipo de dado.
Pseudocódigo
Possui maior poder de
representação. Linguagem
natural. Parecido com uma
linguagem de programação.
Tem várias versões e,
mesmo parecido, ainda não
é uma linguagem de
programação.
Algoritmo &
Programação
Programação
• A implementação de um algoritmo em uma
linguagem de programação
• Linguagem de programação é um método com um
conjunto bem definido de regras sintáticas e
semânticas utilizados na implementação de um
programa
C C++ C# Java Matlab
Python JavaScript PHP Fortran R
Pascal Assembly Ruby Erlang Lua
Scala Go Kotlin Swift Haskell
Linguagem de programação
• As linguagem de programação podem ser
classificadas em relação:
• Grau de abstração
• Compilada X Interpretada
• Entre outros
Grau de abstração
• Linguagem de máquina
• Instruções nativas do processador
• Linguagem de baixo nível
• Não é linguagem nativa do processador, mas abstrai
diretamente as instruções
• Linguagem de nível médio
• Classificação contraditória entre autores
• Linguagem de alto nível
• Símbolos de abstração elevada
• Mais próximo da linguagem humana
Grau de abstração
• Linguagem de máquina
• 0001 0000 1010 1111
• Linguagem de baixo nível
• Assembly
• Linguagem de nível médio
• C/C++
• Linguagem de alto nível
• PHP
Compilada X Interpretada
• Tradução linguagem de programação:
• Opções:
• Compilação
• O texto é traduzido por completo para ser lido
• Interpretação
• O texto é traduzido e lido linha a linha
Linguagem de alto nível
media = (n1 + n2 + n3) / 3;
Linguagem de máquina
0001 0000 1010 1111
Tradução
Resumindo ...
• Conceitos
• Lógica
• Lógica de programação
• Algoritmo
• Algoritmo
• Concepção
• Entrada
• Processamento
• Saída
• Representação
• Descrição narrativa
• Fluxograma
• Pseudocódigo
• Algoritmo & Programação
• Programação
• Linguagem de programação
• Grau de abstração
• Compilação X Interpretação
TIAGO SANTOS
SANTOS.T.J.DOS@GMAIL.COM
Introdução à Lógica de
Programação
Introdução

Mais conteúdo relacionado

Semelhante a Introdução a lógica de Programação Aula-01

Algoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de ProgramaçãoAlgoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de ProgramaçãoElaine Cecília Gatto
 
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOCURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOMicrosoft
 
LIA - Linguagem Interpretada de Algoritmos
LIA - Linguagem Interpretada de AlgoritmosLIA - Linguagem Interpretada de Algoritmos
LIA - Linguagem Interpretada de AlgoritmosRafael Martins
 
(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programaçãoCarlos Santos
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à ProgramaçãoMario Sergio
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Aula01 ip introducao
Aula01 ip introducaoAula01 ip introducao
Aula01 ip introducaoBerg Oliveira
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAislan Rafael
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...Alex Casañas
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...Alex Casañas
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...Alex Casañas
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...Alex Casañas
 
53392229 apostila-de-algoritmo-2009
53392229 apostila-de-algoritmo-200953392229 apostila-de-algoritmo-2009
53392229 apostila-de-algoritmo-2009starley lobo
 
01 fundamentos de programação
01   fundamentos de programação01   fundamentos de programação
01 fundamentos de programaçãomaceca21
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoJosé Araújo
 

Semelhante a Introdução a lógica de Programação Aula-01 (20)

Algoritmo aula 01-f
Algoritmo   aula 01-fAlgoritmo   aula 01-f
Algoritmo aula 01-f
 
Algoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de ProgramaçãoAlgoritmos - Paradigmas de Programação
Algoritmos - Paradigmas de Programação
 
122172 1444
122172 1444122172 1444
122172 1444
 
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃOCURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
CURSO JAVA - AULA 1 - INTRODUÇÃO LÓGICA DE PROGRAMAÇÃO
 
LIA - Linguagem Interpretada de Algoritmos
LIA - Linguagem Interpretada de AlgoritmosLIA - Linguagem Interpretada de Algoritmos
LIA - Linguagem Interpretada de Algoritmos
 
(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação(A02) LabMM3 - Introdução à programação
(A02) LabMM3 - Introdução à programação
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
Aula 1 pc - slides
Aula 1   pc - slidesAula 1   pc - slides
Aula 1 pc - slides
 
Aula01 ip introducao
Aula01 ip introducaoAula01 ip introducao
Aula01 ip introducao
 
Aula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e ProgramaçãoAula 01 - Algoritmo e Programação
Aula 01 - Algoritmo e Programação
 
TWP05 Variáveis e Entrada de Dados
TWP05 Variáveis e Entrada de DadosTWP05 Variáveis e Entrada de Dados
TWP05 Variáveis e Entrada de Dados
 
01-Paradigmas.pdf
01-Paradigmas.pdf01-Paradigmas.pdf
01-Paradigmas.pdf
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...Unidade 111   estrutura de dados e lógica de programação - com respostas 15-0...
Unidade 111 estrutura de dados e lógica de programação - com respostas 15-0...
 
53392229 apostila-de-algoritmo-2009
53392229 apostila-de-algoritmo-200953392229 apostila-de-algoritmo-2009
53392229 apostila-de-algoritmo-2009
 
01 fundamentos de programação
01   fundamentos de programação01   fundamentos de programação
01 fundamentos de programação
 
Curso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de ProgramacaoCurso de Delphi - Lógica de Programacao
Curso de Delphi - Lógica de Programacao
 

Introdução a lógica de Programação Aula-01

  • 1. TIAGO SANTOS SANTOS.T.J.DOS@GMAIL.COM Introdução à Lógica de Programação Introdução
  • 2. Agenda • Conceitos • Algoritmo • Concepção • Representação • Algoritmo & Programação
  • 4. Lógica • Originária do grego logos (linguagem racional) • Michaelis: “Parte da filosofia que se ocupa das formas do pensamento e das operações intelectuais.” • Forma – maneira como organizado e apresentado: • Ordem no pensamento • Encadeamento ordenado de ideias
  • 5. Lógica • Exemplos: • Todo mamífero é um animal • Todo cavalo é um mamífero • Portanto, todo cavalo é um animal • Preciso de uma caneta • Existe uma caneta dentro da gaveta • A gaveta está fechada • Preciso primeiro abrir a gaveta para depois pegar a caneta
  • 6. Lógica de programação • Uso do encadeamento do raciocínio na programação de computadores, objetivando o desenvolvimento de soluções para resolução de problemas. • A expressão do raciocínio através de algoritmos • Objetivo principal do estudo da Lógica de Programação é a construção de algoritmos coerentes e válidos.
  • 7. Algoritmo • Uma sequência de instruções que visam atingir um objetivo bem definido • Exemplo: • Receita de bolo • Instruções de como chegar em um local • Fórmula para cálculo de média aritmética • Método de ordenação de uma listagem de números
  • 8. Algoritmo • Como fazer um algoritmo? • Concepção • Entrada • Processamento • Saída • Representação • Descrição narrativa • Fluxograma • Pseudocódigo
  • 9. Algoritmo • Caso de exemplo: • Na UNIBRA, para ser aprovado sem ter que passar por uma avalição final é necessário obter um valor de média superior ou igual a 7. Lembrando que, no geral, são realizados dois exercícios e um interdisciplinar. • Como representar um algoritmo que informe se o aluno foi aprovado sem a necessidade de ir para a avaliação final (passar direto)?
  • 12. Etapas básicas • Entrada • Exemplo: Os valores das notas dos dois exercícios e do interdisciplinar • Pode não possuir explicitamente uma entrada, mas terá um estado inicial • Processamento • Exemplo: Cálculo da média aritmética das notas • Manipulação dos dados de entrada ou ação sobre o estado inicial • Saída • Exemplo: A afirmação ou negação de que o aluno passou direto • Pode não possuir explicitamente uma saída, mas terá um estado final
  • 14. Descrição narrativa • Uso da linguagem (português, inglês ...) para descrever os passos a serem seguidos para obtenção da solução: 1. Obter as notas das avaliações 1, 2 e 3 2. Calcular a média aritmética das três notas 3. Verificar o valor da média. 1. Se o valor for maior ou igual a 7: o aluno passou direto. 2. Senão: o aluno não passou direto.
  • 15. Fluxograma • Uso de símbolos com significados definidos: Início ou fim do fluxograma Operação de cálculo, de atribuição e chamada ou retorno de funções Operação de entrada e dados Operação de saída de dados Decisão
  • 16. Fluxograma media = (n1 + n2 + n3) / 3 n1, n2, n3 media ≥ 7 FIM “Não passou direto” “Passou direto” INÍCIO Falso Verdadeiro
  • 17. Pseudocódigo algoritmo "Nota Media" var n1, n2, n3, media: real inicio escreval("Informe as notas das avaliações 1, 2 e 3: ") leia(n1, n2, n3) media <- (n1 + n2 + n3) / 3 se (media >= 7) entao escreva("Passou direto") senao escreva("Não passou direto") fimse fimalgoritmo
  • 18. Vantagens e desvantagens Vantagens Desvantagens Descrição Narrativa Sabendo falar, ao menos na forma falada conseguimos descrever. Cada pessoa descreve da sua forma, podendo ser impreciso. Fluxograma Uma figura “fala muito mais”. Obedece a um certo padrão. De análise complicada se o algoritmo for grande. Não possui suporte a definição de tipo de dado. Pseudocódigo Possui maior poder de representação. Linguagem natural. Parecido com uma linguagem de programação. Tem várias versões e, mesmo parecido, ainda não é uma linguagem de programação.
  • 20. Programação • A implementação de um algoritmo em uma linguagem de programação • Linguagem de programação é um método com um conjunto bem definido de regras sintáticas e semânticas utilizados na implementação de um programa C C++ C# Java Matlab Python JavaScript PHP Fortran R Pascal Assembly Ruby Erlang Lua Scala Go Kotlin Swift Haskell
  • 21. Linguagem de programação • As linguagem de programação podem ser classificadas em relação: • Grau de abstração • Compilada X Interpretada • Entre outros
  • 22. Grau de abstração • Linguagem de máquina • Instruções nativas do processador • Linguagem de baixo nível • Não é linguagem nativa do processador, mas abstrai diretamente as instruções • Linguagem de nível médio • Classificação contraditória entre autores • Linguagem de alto nível • Símbolos de abstração elevada • Mais próximo da linguagem humana
  • 23. Grau de abstração • Linguagem de máquina • 0001 0000 1010 1111 • Linguagem de baixo nível • Assembly • Linguagem de nível médio • C/C++ • Linguagem de alto nível • PHP
  • 24. Compilada X Interpretada • Tradução linguagem de programação: • Opções: • Compilação • O texto é traduzido por completo para ser lido • Interpretação • O texto é traduzido e lido linha a linha Linguagem de alto nível media = (n1 + n2 + n3) / 3; Linguagem de máquina 0001 0000 1010 1111 Tradução
  • 26. • Conceitos • Lógica • Lógica de programação • Algoritmo • Algoritmo • Concepção • Entrada • Processamento • Saída • Representação • Descrição narrativa • Fluxograma • Pseudocódigo • Algoritmo & Programação • Programação • Linguagem de programação • Grau de abstração • Compilação X Interpretação
  • 27. TIAGO SANTOS SANTOS.T.J.DOS@GMAIL.COM Introdução à Lógica de Programação Introdução