O documento descreve os objetivos e conceitos fundamentais da disciplina de Lógica de Programação. Resume os principais tópicos a serem abordados ao longo do curso, incluindo algoritmos, tipos de algoritmos, avaliações e referências bibliográficas.
2. Adquirir competência:
• Desenvolver algoritmos através de divisão modular e
refinamentos sucessivos.
• Ler, articular e interpretar símbolos e Algoritmos
• Compreender os conceitos fundamentais de
algoritmos como forma de solução de problemas.
• Saber utilizar as estruturas de dados fundamentais
para a construção de algoritmos consistentes, em
português estruturado e em uma linguagem de
programação.
OBJETIVO DA DISCIPLINA
3. CRITÉRIOS DE PARTICIPAÇÃO
Introdução à
lógica de
Programação
Fase1
Procedimentos
e Funções
Fase 3
Construção
de Algoritmos
Fase 2
Resolução de
Problemas
Fase 4
4. REFERÊNCIAS BIBLIOGRÁFICAS
Algoritmos e Lógica de Programação – THOMSON – Marcos Antônio Furlan de Souza, Marcelo Marques
Gomes, Marcio Vieira Soares, Ricardo Concilio.
DEITEL, Harvey M.; DEITEL, Paul J. Java como Programar 8ª Ed. Editora Pearson.
Fundamentos da Programação de Computadores – Algoritmos, Pascal, C/C++, JAVA 2 Edição –
Pearson_Prentice Hall – Ana Fernanda Gomes Ascencio, Edilene Aparecida Veneruchi de Campos.
Lógica de Programação – A Construção de Algoritmos e Estruturas de Dados – São Paulo:
Forbellone, André Luiz Villar - MAKRON, 1993.
PUGA, Sandra; RISSETTI Gerson Lógica de Programação e Estruturas de Dados. Editora Pearson.
PUGA, Sandra; RISSETTI Gerson. Lógica de Programação e Estruturas de Dados com aplicações em Java.
Editora Pearson.
GOMES, Ana F.; VENERUCHI, Edilene A.C. Fundamentos da programação de computadores 2ª Ed. Editora
Pearson.
VILLAR André Luiz, EBERSPACHER Henri F. Lógica de programação a construção de algoritmos e estruturas
de dados 3ª Ed. Editora Pearson.
GOMES, Ana F.; VENERUCHI, Edilene A.C. Fundamentos da programação de computadores 2ª Ed. Editora
Pearson.
5. AVALIAÇÕES AV1
60% (de 0 a 6 pontos)
40% (de 0 a 4 pontos) atividade ou
trabalho.
PARCIAL
PRÁTICA OU TEÓRICA
Atividade extra para quem não
atingiu a média.
RECUPERAÇÃO
1
2
3
6. AVALIAÇÕES AV2
60% (de 0 a 6 pontos)
40% (de 0 a 4 pontos) atividade ou
trabalho.
PARCIAL
PRÁTICA OU TEÓRICA
Atividade extra para quem não
atingiu a média.
RECUPERAÇÃO
1
2
3
8. Ela nos ensina a usar corretamente as leis do
pensamento.
Lógica trata da correção do pensamento.
É a arte de pensar corretamente.
1
2
3
Pode mostrar um conjunto de regras racionais
para obtenção de um conhecimento.
4
9. Lógica estuda a “correção
do pensamento”.
Lógica é a “arte de bem pensar”, que é a
“ciência das formas do pensamento”.
Lógica tem em vista a “ordem da
razão”.
5
6
7
Lógica estuda e ensina
a colocar “ordem no pensamento”.
8
10. O filósofo grego Aristóteles é considerado o criador
da lógica, em sua época denominava-se razão,
depois que a palavra lógica começou a ser utilizada,
esta tem origem do grego logos que significa
linguagem racional.
11. Utilizamos a lógica de forma natural em nosso dia-a-dia.
Por exemplo:
• Sei que o livro está no armário;
• Sei que o armário está fechado;
• Logo, concluo que tenho de abrir o armário para pegar o livro.
Premissa: É um conjunto de uma ou mais de uma sentença declarativa que é acompanhada
de uma outra frase declarativa que é a conclusão.
12. Utilizamos a lógica de forma natural em nosso dia-a-dia.
Por exemplo:
Vamos observar neste exemplo as premissas e os pontos os quais
levam a conclusão deste fato.
1ª. (premissa) Sei que o A está no B.
2ª. (premissa) Sei que o B está fechado.
3ª. (conclusão) Logo, concluo que tenho de abrir o armário para pegar o
livro.
13. Sendo A o livro ou qualquer outra coisa que tenho
que pegar em B (armário).
Tenho o conhecimento prévio de que o que quero
pegar está no armário e o mesmo encontra-se
fechado.
14. Neste exemplo do dia-a-dia tenho duas premissas que através
delas chego a uma conclusão.
Sei que sou mais velho que João. (premissa)
Sei que João é mais velho que José. (premissa)
Então, concluo que eu sou mais velho que José. (conclusão)
Neste exemplo só consigo chegar a uma conclusão de que sou
mais velho que alguém se existirem as duas premissas, só com
apenas uma não conseguiria chegar a uma conclusão.
15. Exercitando:
Sejam os seguintes fatos:
Todos os filhos de José são mais altos do que Maria.
Antônio é filho de José.
Então, o que podemos concluir logicamente?
16. Exercitando:
Considere os fatos abaixo:
Pedro é aluno da EEEP.
Para ser aprovado, um aluno da EEEP precisa obter nota maior
ou igual a 6,0 e comparecer a mais de 75% das aulas.
Pedro compareceu a todas as aulas e obteve nota igual a 8,0.
Então, o que podemos concluir logicamente?
17. DESAFIOS:
Através das premissas a seguir, assinale as sentenças que correspondem
à conclusão correta.
Se o semáforo com a luz vermelha é para o motorista parar e o verde
para seguir, estando eu a pé para atravessar a rua então concluo que:
a) Posso atravessar a rua com a luz vermelha.
b) O semáforo tem duas luzes.
c) Só devo atravessar a rua com a luz verde.
18. DESAFIOS:
Através das premissas a seguir, assinale as sentenças que correspondem
à conclusão correta.
Se o semáforo com a luz vermelha é para o motorista parar e o verde
para seguir, estando eu a pé para atravessar a rua então concluo que:
a) Posso atravessar a rua com a luz vermelha.
b) O semáforo tem duas luzes.
c) Só devo atravessar a rua com a luz verde.
19. DESAFIOS:
Patos são animais. Patos têm duas patas. Logo:
a) Todo o animal tem duas patas.
b) Patos têm duas patas.
c) Patos tem bico.
20. DESAFIOS:
Patos são animais. Patos têm duas patas. Logo:
a) Todo o animal tem duas patas.
b) Patos têm duas patas.
c) Patos tem bico.
21. DESAFIOS:
Desafio dos nove pontos o objetivo é traçar quatro
linhas retas passando por todos os nove pontos, sem
tirar o lápis/caneta do papel. Para facilitar o raciocínio e
a resolução, marque os nove pontos em uma folha de
papel e tente resolver.
23. Pode ser definido como uma sequência de
passos que visam atingir um
objetivo bem definido.
É formalmente uma sequência finita de passos
que levam a execução de uma tarefa.
Estas tarefas não podem ser redundantes nem
subjetivas na sua definição, devem ser claras e
precisas.
1
2
3
Pode mostrar um conjunto de regras racionais
para obtenção de um conhecimento.
4
24. O algoritmo é um conjunto de passos para executar uma
tarefa. (Receita).
Na medida em que precisamos especificar uma
sequência de passos, precisamos utilizar ordem, “pensar
com ordem”, portanto precisamos utilizar lógica.
A formulação de um algoritmo pode ser descrita como
um texto contendo instruções que serão executadas em
uma ordem determinada.
5
6
7
Na computação um algoritmo é uma sequência precisa
que pode ser utilizada por um computador para a solução
de um problema.
8
25. • O algoritmo é composto por um conjunto finito
de passos, cada um requerendo uma ou mais
instruções.
• Cada uma destas instruções, também chamadas
de operações, deve ser perfeitamente definida e
clara.
26. Por que é importante fazer um algoritmo?
Tem por objetivo representar mais fielmente o raciocínio
envolvido na Lógica de Programação;
Permite-nos abstrair de uma série de detalhes computacionais,
que podem ser acrescentados mais tarde;
Uma vez concebida uma solução algorítmica para um
problema, esta pode ser traduzida para qualquer linguagem de
programação.
27. Algoritmo para chupar uma bala
Pega a bala
1 2 3 4
Retira o papel
Coloca a bala
na boca
Chupa a bala
Joga o papel
fora
5
28. Algoritmo para trocar uma lâmpada
Pegar uma
escada
1 2 3 4
Posicionar a
escada
Buscar uma
nova lâmpada
Subir na
escada
Retirar
lâmpada velha
5 6 7 8
Colocar
lâmpada nova
Descer da
escada
Guardar
escada
29. Algoritmo para trocar uma lâmpada
Pegar uma
escada
1 2 3 4
Posicionar a
escada
Buscar uma
nova lâmpada
Subir na
escada
Retirar
lâmpada velha
5 6 7 8
Colocar
lâmpada nova
Descer da
escada
Guardar
escada
E se a lâmpada não estivesse
queimada?
30. • A execução das ações conduziria a uma troca,
independentemente de a lâmpada estar ou não
queimada, porque não foi prevista essa
possibilidade em sua construção.
• A solução seria acrescentar um teste, a fim de
verificar se a lâmpada está ou não queimada.
31. A sequência seria:
1. Pegar uma escada;
2. Posicionar a escada embaixo da lâmpada;
3. Buscar uma lâmpada nova;
4. Acionar o interruptor;
5. Se a lâmpada não acender, então
Subir na escada;
Retirar a lâmpada velha;
Colocar a lâmpada nova.
32. Agora estamos ligando algumas ações à condição lâmpada
não acender, ou seja, se esta condição for verdadeira
(lâmpada queimada) efetuaremos a troca da lâmpada,
seguindo as próximas ações.
Se a condição lâmpada não acender for falsa (a lâmpada
está funcionando), as ações relativas à troca da lâmpada
não serão executadas, e a lâmpada (que está em bom
estado) não será trocada.
33. A sequência melhorada:
1. Acionar o interruptor.
2. Se a lâmpada não ascender, então:
2.1- Pegar escada;
2.2- Posicionar escada;
2.3- Buscar uma lâmpada nova;
2.4- Subir na escada;
2.5- Retirar lâmpada velha
2.6- Colocar lâmpada nova
34. DESAFIO:
1. Crie uma sequência lógica para tomar banho:
2. Descreva com detalhes a sequência lógica para Trocar um
pneu de um carro.
3. Faça um algoritmo para trocar uma lâmpada. Descreva com
detalhes:
36. Os tipos de algoritmos mais usados são:
1- Descrição narrativa
2- Fluxograma e Pseudocódigo ou
Portugol.
Tipos de Algoritmos
37. Descrição Narrativa
Utiliza linguagem natural
Vantagem
Não é necessário
aprender
nenhum conceito
novo.
É como
estivéssemos
falando ou
escrevendo os
detalhes de algo
para outra pessoa
Permite várias
interpretações,
dificultando a
transcrição para
programa
Desvantagem
38. Descrição Narrativa
Exemplo
Ler dois números e calcular a média:
1 Ler os dois números.
2 Calcular a média.
3 Mostrar o resultado da média.
39. Fluxograma
Utiliza elementos gráficos
Vantagem
Entendimento
de gráficos é
mais fácil que
de textos.
Necessário
aprender
simbologia e
não apresenta
detalhes para
transcrever
para programa.
Desvantagem
42. Pseudocódigo ou Portugol
Utiliza uma linguagem com regras definidas com
uma estrutura formal também conhecido como
português estruturado.
Vantagem
Transcrição
para
linguagem de
programação é
praticamente
imediata.
Necessário
aprender
regras.
Desvantagem
43. Pseudocódigo ou Portugol
O portugol é uma forma de escrita estruturada,
cuja finalidade é descrever, em uma sequência
lógica, os passos para a resolução de um
problema.
Nesta técnica os algoritmos são escritos em
uma linguagem simples que não possui muitas
regras para sua escrita.
Os algoritmos escritos em portugol devem ser
escritos de maneira que todas as linhas
contenham uma única instrução
44. Pseudocódigo ou Portugol
Exemplo: Ler dois números e determinar qual dele
é o maior.
Algoritmo Maior
Inicio
Escrever (‘Digite o primeiro número’)
Ler (num1)
Escrever (‘Digite o segundo número’)
Ler (num2)
Se num1>num2 então
Escrever (‘O maior número é ‘, num1)
Se num2>num1 então
Escrever (‘O maior número é ‘, num2)
Se num1=num2 então
Escrever (‘Os números são iguais’)
FimMaior
46. REGRAS PARA CONSTRUÇÃO DO ALGORITMO
Para escrever um algoritmo precisamos descrever a
sequê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
47. REGRAS PARA CONSTRUÇÃO DO ALGORITMO
Para escrever um algoritmo precisamos descrever a
sequê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
48. FASES
Ao montar um algoritmo, precisamos primeiro dividir o
problema apresentado em três fases fundamentais.
Entrada: São os dados necessários para a resolução do
problema proposto;
Processamento: São os processamentos utilizados para
chegar ao resultado final;
Saída: São os dados processados apresentando o resultado
para o problema proposto;
49.
50. EXEMPLO DE ALGORITMO
Imagine o seguinte problema:
Calcular a média final dos alunos da 3ª Série. Os alunos
realizarão quatro provas: P1, P2, P3 e P4.
Onde: P1+P2+P3+P4
Média Final = 4
51. EXEMPLO DE ALGORITMO
a) Quais são os dados de entrada?
b) Qual será o processamento a ser utilizado?
c) Quais serão os dados de saída?
Para montar o algoritmo proposto, faremos três perguntas:
52. SEQUÊNCIA DE EXECUÇÃO
a) Receba a nota da prova1.
b) Receba a nota de prova2.
c) Receba a nota de prova3.
d) Receba a nota da prova4.
e) Some todas as notas e divida o resultado por 4.
f) Mostre o resultado da divisão.
55. Identificação do algoritmo: Todo algoritmo ele deve
ser identificado, abaixo algumas regras básicas:
Não utilizar espaços entre as letras ou caracteres especiais como
acentos, símbolos (@#%&*?:/) entre outros.
Para identificar um algoritmo com duas palavras, por exemplo “calcular
media“ usar o underline o correto ficaria calcular_media.
Não utilizar palavras reservadas como as que são utilizadas para
representar ações especificas como ler, variavel, escrever no portugol
ide as palavras reservadas são destacadas em negrito.
Não utilizar números no inicio da identificação do algoritmo como, por
exemplo; “1exemplo” o correto seria “exemplo1”.
Usar nomes coerentes para identificação de algoritmos, nomes os quais
possam identificar o que o algoritmo vai fazer.
56. Declaração de variáveis:
As variáveis que serão utilizadas na resolução de problemas,
devem ser declaradas, que são as informações relacionadas à
resolução do problema, com relação a variáveis iremos ver em
detalhes nas próximas aulas.
57. Corpo do algoritmo:
No corpo do algoritmo deve ser escrito todos os passos para a
resolução de problemas, como por exemplo:
Entrada de valores para as variáveis.
Operações de atribuição tais como lógicas e aritméticas.
Laços de repetição.
Exibição de resultados.
58. Mas o que são variáveis ?
Estas devem receber nomes para poderem ser referenciadas e
modificadas quando necessário.
Um programa deve conter declarações que especificam de que tipo
são as variáveis que ele utilizará e às vezes um valor inicial.
São os elementos básicos que um programa manipula. Uma
variável é um espaço reservado na memória do computador
para armazenar um tipo de dado determinado.
1
2
3
Existe vários tipos de variáveis, como por exemplo:
Inteiros, reias, caracteres e outros.
59. Tipos de dados básicos usados em pseudocódigo
Os principais tipos de dados que iremos utilizar em pseudocódigo
usando o software Portugol ide,
60. Atribuição de valores.
No portugol ide utilizamos este símbolo = para atribuir valor a uma
variável.
Exemplo:
nota1 = 10
nota2 = 8
OU
media = (nota1 + nota2)/2
61. Escrevendo e lendo dados
Para escrever algo utilizamos a palavra escreva, se quisermos
escrever algum texto digitamos o código:
escreva(“Mensagem a ser exibida”)
Se for uma variável então digitamos:
escreva e o nome da variável declarada.
Para ler uma variável que recebeu uma entrada do usuário
digitamos a palavra:
ler acompanhada do nome da variável declarada.
64. CREDITS: This presentation template was created by
Slidesgo, including icons by Flaticon, infographics &
images by Freepik and illustrations by Storyset.
Obrigado!
Você tem alguma pergunta?
francisco.david2@prof.ce.edu.br
(88) 99445-7286