1. Introdução a Algoritmos e
Linguagens de Programação
Apresentação
Luiz Augusto de M. Morais
Aula 4 | Algoritmos
2. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Roteiro
●
O que é um algoritmo?
●
Estrutura de um algoritmo
●
Resolvendo problemas do mundo real
●
Representações de algoritmos
Algoritmos
●
De máquina
●
De montagem
(Assembly)
Tipos de linguagem
●
De programação
●
Compilada
●
Interpretada
●
Híbrida
3. Algoritmos
O que é um algoritmo?
UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
4. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
O que é um algoritmo?
“É uma sequência de passos finitos
para atingir um objetivo específico”
8. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Resolvendo problemas do mundo real
Receita de bolo
9. ●
2 xícaras de açúcar
●
3 xícaras de farinha de trigo
●
4 colheres de margarina bem cheias
●
3 ovos
●
1 1/2 xícara de leite aproximadamente
●
1 colher (sopa) de fermento em pó bem cheia
UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Receita de bolo
Ingredientes
10. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Receita de bolo
1.Bata as claras em neve
2.Reserve
3.Bata bem as gemas com a margarina e o açúcar
4.Acrescente o leite e farinha aos poucos sem parar de bater
5.Por último agregue as claras em neve e o fermento
6.Coloque em forma grande de furo central untada e enfarinhada
7.Asse em forno médio, pré – aquecido, por aproximadamente 40 minutos
8.Quando espetar um palito e sair limpo estará assado
Modo de preparo
11. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Resolvendo problemas do mundo real
Trocar uma lâmpada
12. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Trocar uma lâmpada | Tentativa 1
1.Troque a lâmpada!
13. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Trocar uma lâmpada | Tentativa 2
1. Pegar uma escada
2. Posicionar a escada embaixo da lâmpada
3. Buscar uma lâmpada nova
4. Subir na escada
5. Retirar a lâmpada velha
6. Colocar a lâmpada nova
7. Descer da escada
Detalhado
E se a lâmpada não estivesse queimada?
14. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Trocar uma lâmpada | Tentativa 3
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 acender, encerre.
6. Subir na escada
7. Retirar a lâmpada velha
8. Colocar a lâmpada nova
9. Descer da escada
Incluindo o teste da lâmpada
Deveríamos verificar antes!
15. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Trocar uma lâmpada | Tentativa 4
1. Acionar interruptor
2. Se a lâmpada acender, encerre.
3. Pegar uma escada
4. Posicionar a escada embaixo da lâmpada
5. Buscar uma lâmpada nova
6. Subir na escada
7. Retirar a lâmpada velha
8. Colocar a lâmpada nova
9. Descer da escada
Verificando antes
Se a lâmpada nova também não acender?
16. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Trocar uma lâmpada | Tentativa 5
1. Acionar interruptor
2. Se a lâmpada acender, encerre.
3. Pegar uma escada
4. Posicionar a escada embaixo da lâmpada
5. Buscar uma lâmpada nova
6. Subir na escada
7. Retirar a lâmpada velha
8. Colocar a lâmpada nova
9. Descer da escada
10. Se lâmpada nova acender, encerre
11. Repita os passos 5 a 10
Repetindo até conseguir
18. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Representações de algoritmos
Linguagem natural
1. Pegar uma escada
2. Posicionar a escada embaixo da lâmpada
3. Buscar uma lâmpada nova
4. Subir na escada
5. Retirar a lâmpada velha
6. Colocar a lâmpada nova
7. Descer da escada
1. Pegar uma escada
2. Posicionar a escada embaixo da lâmpada
3. Buscar uma lâmpada nova
4. Subir na escada
5. Retirar a lâmpada velha
6. Colocar a lâmpada nova
7. Descer da escada
19. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Representações de algoritmos
Pseudo-código
leia (x, y)
se x > y então
escreva (x é maior)
senão
se y > x então
escreva (y é maior)
senão
escreva (x e y são iguais)
fim-se
fim-se
leia (x, y)
se x > y então
escreva (x é maior)
senão
se y > x então
escreva (y é maior)
senão
escreva (x e y são iguais)
fim-se
fim-se
28. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação
●
Baixo nível
●
Alto Nível
●
Altíssimo Nível
●
Compiladas
●
Interpretadas
●
Híbridas
Tipo Execução
29. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Tipo
●
Parecidas com código de máquina
●
Linguagens de microprocessador e de montagem
Baixo nível
30. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Tipo
●
Guardam semelhanças da linguagem natural
●
C, C++, Pascal, Java
Alto nível
31. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Tipo
●
Muito semelhantes à linguagem natural
●
Ruby, Python
Altíssimo nível
32. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Execução
Linguagens compiladas
Código-fonte Código de máquinaCompilador
Execução
33. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Execução
●
Rapidez
●
C, C++, Pascal
Linguagens compiladas
34. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Execução
Linguagens interpretadas
Código-fonte Interpretador Execução
35. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Execução
●
Portabilidade
●
Python, Lua
Linguagens interpretadas
36. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Execução
Linguagens híbridas
Código-fonte BytecodeCompilador
Execução Interpretador
37. UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETOHERMES
Linguagem de Programação | Execução
●
Mais rápidas que linguagens interpretadas
●
Portabilidade
●
Java
Linguagens híbridas
38. Referências
UNIVERSIDADE ESTADUAL DA PARAÍBA | PROJETO HERMES
FERRARI, Fabrício; CECHINEL, Cristian.
Introdução a Algoritmos e Programação. [S. l. : s. n.]