2. ALGORITMOS
Algoritmo é um conjunto finito de regras, bem
definidas, para a solução de um problema em
um tempo finito e com um número finito de
passos
3. ALGORITMOS
Exemplo: Algoritmo para trocar uma lâmpada
- pegar uma escada;
- posicionar a escada embaixo da lâmpada;
- buscar uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova
4. ALGORITMOS
Melhorando o algoritmo...
- pegar uma escada;
- posicionar embaixo da lâmpada;
- buscar uma lâmpada nova;
- ligar o interruptor;
- se a lâmpada não acender, então:
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova.
5. ALGORITMOS
Otimizando o algoritmo...
- ligar o interruptor;
- se a lâmpada não acender, então:
- pegar uma escada;
- posicionar a escada embaixo da lâmpada;
- buscar uma lâmpada nova;
- subir na escada;
- retirar a lâmpada velha;
- colocar a lâmpada nova;
- enquanto a lâmpada não acender, faça:
- retirar a lâmpada;
- colocar outra lâmpada.
6. FATORES RELEVANTES PARA CONSTRUÇÃO DE
UM ALGORITMO
Complexidade
Quantidade de situações que um problema pode apresentar
Legibilidade
Capacidade de compreender um algoritmo por qualquer
observador
Portabilidade
Utilização de pseudo-linguagem, podendo ser convertido para
qualquer linguagem de programação
Técnica de Resolução por Método Cartesiano
Dividir para conquistar
Planejamento Reverso
A partir da saída determinar os dados de entradas
7. REPRESENTAÇÃO DE ALGORITMOS
Formas de Representar Algoritmos:
• Descrição Narrativa;
• Fluxograma;
• Diagrama de Chapin;
• Pseudocódigo.
8. REPRESENTAÇÃO DE ALGORITMOS
Descrição Narrativa:
• Algoritmos escritos em linguagem natural
Ex: Cálculo da média de um aluno
- Obter as notas da primeira e da segunda
prova;
- Calcular a média aritmética entre as duas
- Se a média for maior ou igual a 7, o aluno
foi aprovado, senão ele foi reprovado
9. REPRESENTAÇÃO DE ALGORITMOS
Fluxograma
• Formas geométricas diferentes representando
ações distintas
= Início e final do fluxograma
= Operação de entrada de dados
= Operação de saída de dados
= Operações de atribuição e chamada ou retorno
de subalgoritmo
= Decisão
11. REPRESENTAÇÃO DE ALGORITMOS
Diagrama de Chapin
• Representação das estruturas de um algoritmo que tem
um ponto de entrada e um ponto de saída e são
compostas pelas estruturas básicas de controle de
seqüência, seleção e repartição
12. REPRESENTAÇÃO DE ALGORITMOS
Diagrama de Chapin
Ex: Cálculo da média de um aluno
Leia N1, N2
Início
Média (N1+N2)/2
Sim Não
Média >= 7
Escreva “Reprovado”Escreva “Aprovado”
Fim
14. REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• Representação em Pseudocódigo
Algoritmo <nome_do_algoritmo>
<declaração_de_variáveis>
<subalgoritmos>
Início
<corpo_do_algoritmo>
Fim.
15. REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• Algoritmo é uma palavra que indica o início da
definição de um algoritmo em forma de pseudocódigo.
• <nome_do_algoritmo> é um nome simbólico dado ao
algoritmo com a finalidade de diferenciar dos demais.
• <declaração_de_variáveis> consiste em uma porção
opcional onde são declaradas as variáveis globais
usadas no algoritmo principal e, eventualmente, nos
subalgoritmos.
16. REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
• <subalgoritmos> consiste de uma porção opcional do
pseudocódigo onde são definidos os subalgoritmos.
• Início e Fim são respectivamente as palavras que
delimitam o início e o término do conjunto de instruções
do corpo do algoritmo
17. REPRESENTAÇÃO DE ALGORITMOS
Pseudocódigo
Ex: Cálculo da média de um aluno
Algoritmo Média
Var N1, N2, Média
Início
Leia N1, N2
Média := (N1+N2)/2
Se Média >= 7 Então
Escreva “Aprovado”
Senão
Escreva “Reprovado”
Fim.