Construção de Algoritmos
Lógica
Algoritmos
Prof. Rodrigo Rocha
[email protected]
http://www.bolinhabolinha.com
Onde Estamos
 Ementa
• Introdução: noção de algoritmo, dado, variável,
comandos e programa.
• Formas de representação de algoritmo: gráfica e
pseudolinguagem.
• Tipos de dados: Escalares.
• Construções básicas: atribuição , leitura e escrita.
• Análise de um problema e princípios de solução
solução.
• Desenvolvimento de algoritmos: técnica topdown.
• Estruturas de controle: seleção e iteração.
• Vetores, cadeia de caracteres e registros.
1
Conceitos
 Lógica
• que estuda os métodos e princípios que permitem
fazer distinção entre raciocínios válidos e não
válidos, determinando o processo que leva ao
conhecimento verdadeiro (wikipédia)
• “a arte de pensar bem” (Forbellone)
• Ferramenta para resolução de problemas
 Silogismo
• todo mamífero é um animal
• todo cavalo é um animal
• portanto, todo cavalo é um mamífero
Conceitos
 Lógica de programação
• Uso correto das leis de pensamento e de
processos de raciocínio e simbolização formais
na programação de computadores
• objetivando a solução lógica – válida e coerente
 Algoritmo
• Seqüência de passos que visam a atingir um
objetivo bem definido
• abstrai detalhes computacionais
• foca na resolução, depois pode ser implementado
em qualquer linguagem de programação
2
Exemplos
 1.1 Troca de lâmpada
•
•
•
•
•
•
pegar uma escada;
posicionar a escada embaixo da lâmpada;
buscar uma lâmpada nova;
subir na escada;
retirar lâmpada velha;
colocar lâmpada nova.
 1.2 Trocar a lâmpada com decisão
• pegar uma escada;
•
•
•
•
•
•
•
posicionar a escada embaixo da lâmpada;
buscar uma lâmpada nova;
acionar o interruptor;
se a lâmpada não acender, então
subir na escada;
retirar lâmpada queimada;
colocar lâmpada nova.
Exemplos
 Troca de lâmpada com repetição
•
•
•
•
•
•
•
•
•
•
•
•
acionar o interruptor;
se a lâmpada não acender, então
pegar uma escada;
d
posicionar a escada embaixo da lâmpada;
buscar uma lâmpada nova;
acionar o interruptor;
subir na escada;
retirar lâmpada queimada;
colocar lâmpada nova;
enquanto a lâmpada não acender, faça
retirar lâmpada queimada;
colocar lâmpada nova;
3
Representação gráfica
início
ir para o primeiro soquete
posicionar escada
não
acendeu?
soquetes
restantes < 10
F
V
acionar o interruptor
retirar a lâmpada queimada
subir na escada
colocar lâmpada nova
V
acionar o interruptor
não
acendeu?
F
buscar lâmpada nova
F
retirar a lâmpada queimada
ir ao próximo soquete
colocar lâmpada nova
V
pegar uma escada
acionar o interruptor
fim
Exercícios

(PRODESP) Um agente de viagens atende três amigas. Uma delas é loura, outra
é morena e a outra é ruiva. O agente sabe que uma delas se chama Bete, outra
se chama Elza e a outra se chama Sara. Sabe, ainda, que cada uma delas fará
uma viagem a um país diferente da Europa: uma delas irá à Alemanha, outra irá à
França
ç e a outra irá à Espanha.
p
Ao agente
g
de viagens,
g
,q
que q
queria identificar o
nome e o destino de cada uma, elas deram as seguintes informações:
A loura: "Não vou à França nem à Espanha".
A morena: "Meu nome não é Elza nem Sara".
A ruiva: "Nem eu nem Elza vamos à França".
O agente de viagens concluiu, então, acertadamente, que:
(A) A loura é Sara e vai à Espanha.
(B) A ruiva é Sara e vai à França.
(C) A ruiva é Bete e vai à Espanha.
(D) A morena é Bete e vai à Espanha.
(E) A loura é Elza e vai à Alemanha.
 (PLT pág. 12 – Ex. de Fixação)
 1.1, 1.2, 1.3 e 1.4
 (PLT pág. 13 – Ex. propostos)
• 2, 3 e 5
4
Bibliografia

Livro texto (Programa do Livro texto - PLT)
•
FORBELLONE, A. Lógica de Programação. São Paulo: Pearson,
2005“
• MANZANO, J.A.N.G.. Algoritmos : lógica para desenvolvimento de
programação de computadores. 1ª ed. São Paulo: Erica,2002.
• ASCÊNCIO, A.F.G .; CAMPOS, E.D.. Fundamentos da
Programação de Computadores. 1ª ed. São Paulo: Prentice Hall
Brasil, 2002.

Complementar
• CORMEN, Thomas H. Algoritmos: teoria e prática. 1.ed. Rio de
Janeiro: CAMPUS, 2002.
• MANZANO, J. A. N. G. Algoritmos: lógica para desenvolvimento
de programação. 1.ed. São Paulo: Erica, 1996.
• ASTÊNCIO, A .F.G.; CAMPOS, E.D.. Fundamentos da
Programação de Computadores. 1.ed. São Paulo: PRENTICE
HALL BRASIL, 2002.
5
Download

2. Lógica e Algoritmos