Escolar Documentos
Profissional Documentos
Cultura Documentos
PROGRAMAÇÃO I
AULA 01 – Algoritmos
• Problema:
• Dificuldade na obtenção de um objetivo;
• Situação ou questão que requer uma solução.
• Solução:
• Resposta que resolve um problema.
3
VISÃO
VISÃOSIMPLES
SIMPLES
Problema
Solução
4
VISÃO
VISÃOGERAL
SIMPLES
Problema
Solução
5
VISÃO
VISÃOGERAL
SIMPLES
Problema
Solução
Algoritmo
6
DEFINIÇÃO PARCIAL
7
VAMOS FAZER UM
BOLO?
SEGUIR A RECEITA
• Adquirir ingredientes;
9
UMA RECEITA QUALQUER
» Modo de preparo
» Ingredientes › Acrescente a farinha, oleite e o
› Alguns ovos; fermento;
› Um pouco de margarina; › Leve ao forno;
› Um bocado de açúcar; › Junte os ovos, o açúcar e a
› Bastante farinha de trigo; margarina e bata no
› Alguns goles de leite; liquidificador;
› Quase nada de fermento. › Coloque numa forma
untada.
10
UMA RECEITA QUALQUER
» Modo de preparo
» Ingredientes › Acrescente a farinha, oleite e o
› Alguns ovos; fermento;
› Um pouco de margarina; › Leve ao forno;
› Um bocado de açúcar; › Junte os ovos, o açúcar e a
› Bastante farinha de trigo; margarina e bata no
› Alguns goles de leite; liquidificador;
› Quase nada de fermento. › Coloque numa forma
untada.
• PRECISO;
• FINITO.
12
DEFINIÇÃO FORMAL
13
CARACTERÍSTICAS
• Finitude: algoritmos devem terminar após um numero
finito de passos;
• Não-ambiguidade: cada passo deve ser precisamente
definido;
• Efetividade: todas as operações devem ser simples de
modo que possam ser executadas em um tempo limitado;
• Legibilidade: os passos devem ser básicos e claros, de
modo que possam ser compreensíveis para outras pessoas;
• Portabilidade: seus passos devem ser facilmente
traduzidos para qualquer linguagem de programação.
14
CURIOSIDADES ALGORITMO
15
PRINCIPAIS REPRESENTAÇÕES DE ALGORITMOS
• Descrição Narrativa:
• Texto comum;
• Ordenado numericamente.
• Fluxograma:
• Mapa mental;
• Rotas seguidas pelo algoritmo;
• Símbolos e Setas
• PseudoCódigo:
• Linguagem apropriada
• Palavras-chave
• Expressões
• Operações
16
DESCRIÇÃO
NARRATIVA
DESCRIÇÃO NARRATIVA
18
ALGORITMO TROCAR A LÂMPADA
19
ALGORITMO TROCAR A LÂMPADA
1. Início 17. Senão
2. Verifica se o interruptor está 18. Tarefa terminada;
desligado; 19.Guarda a escada;
3. Procura uma lâmpada nova; 20. Fim
4. Pega uma escada;
5. Leva a escada até o local;
6. Posiciona a escada;
7. Sobe os degraus;
8. Para na altura apropriada;
9. Retira a lâmpada queimada;
10. Coloca a lâmpada nova;
11. Desce da escada;
12. Aciona o interruptor;
13. Se a lâmpada não acender, então:
14.Retira a lâmpada queimada;
15. Coloca outra lâmpada nova
16. Jogar a lâmpada queimada
20
ALGORITMO DA TRAVESSIA
21
ALGORITMO DA TRAVESSIA
1. Levar a cabra;
2. Voltar;
3. Levar o leão;
4. Voltar com a cabra;
5. Levar a grama;
6. Voltar;
7. Levar a cabra.
22
ALGORITMO PADARIA
23
ALGORITMO PADARIA
24
FLUXOGRAMA
FLUXOGRAMA
26
FLUXOGRAMA
27
FLUXOGRAMA
28
FLUXOGRAMA
• ENTRADA DE DADOS:
• Indica um ponto onde os dados são solicitados;
• Espaços de armazenamento são necessários;
• Um ou mais valores podem ser solicitados, desde que separados por
vírgula.
29
FLUXOGRAMA
• SAÍDA DE DADOS:
• Divulgação de resultados ou comunicação textual;
• Vários elementos podem ser divulgados, desde que separados por
vírgula.
30
FLUXOGRAMA
31
FLUXOGRAMA
• TOMADA DE DECISÃO:
• Único ponto do sistema onde pode haver bifurcação de caminhos;
• Uma pergunta é feita. Possíveis respostas: sim ou não;
• Resposta booleana;
• A direção do fluxo dependerá da resposta.
32
FLUXOGRAMA
• FLUXO:
• Conecta os componentes do fluxograma;
• Indica a direção do fluxo do algoritmo;
• Sempre unidirecional
33
FLUXOGRAMA
• ESPAÇOS DE MEMÓRIA:
• Objeto que armazenará um valor:
• Fornecido pelo usuário;
• Calculado pelo algoritmo;
• = [Operador de atribuição]
• Utilizado para se atribuir um valor a um espaço.
34
FLUXOGRAMA
• OPERADORES MATEMÁTICOS:
+ [Adição];
- [Subtração];
* [Multiplicação];
/ [Divisão].
“Inicializando o algoritmo”
38
FLUXOGRAMA - SIMBOLOGIA
39
FLUXOGRAMA - Exemplo
40
FLUXOGRAMA - Exemplo
• Algoritmo: calcular a área de um
quadrado.
1. Obter o valor do lado do quadrado;
2. Multiplicar o valor obtido por ele mesmo;
3. Divulgar o resultado.
41
Início
FLUXOGRAMA - Exemplo
• Algoritmo: calcular a área de um
quadrado.
1. Obter o valor do lado do quadrado;
2. Multiplicar o valor obtido por ele mesmo;
3. Divulgar o resultado.
42
Início
FLUXOGRAMA - Exemplo
• Algoritmo: calcular a área de um
lado
quadrado.
1. Obter o valor do lado do quadrado;
2. Multiplicar o valor obtido por ele mesmo;
3. Divulgar o resultado.
43
Início
FLUXOGRAMA - Exemplo
• Algoritmo: calcular a área de um
lado
quadrado.
1. Obter o valor do lado do quadrado;
2. Multiplicar o valor obtido por ele mesmo; area = lado * lado
3. Divulgar o resultado.
44
Início
FLUXOGRAMA - Exemplo
• Algoritmo: calcular a área de um
lado
quadrado.
1. Obter o valor do lado do quadrado;
2. Multiplicar o valor obtido por ele mesmo; area = lado * lado
3. Divulgar o resultado.
area
45
Início
FLUXOGRAMA - Exemplo
• Algoritmo: calcular a área de um
lado
quadrado.
1. Obter o valor do lado do quadrado;
2. Multiplicar o valor obtido por ele mesmo; area = lado * lado
3. Divulgar o resultado.
area
Fim
46
FLUXOGRAMA - SIMBOLOGIA
Média de notas
Início
“Aprovado” Fim
N1, N2
Sim
Media “Reprovado”
Media = (N1+N2)/2
>= 7? Não
47
INTERFACE
AMIGÁVEL
INTERFACE AMIGÁVEL
49
ADAPTAÇÃO
50
FLUXOGRAMA – Área do Quadrado (Interface
Amigável)
51
CONSTRUINDO ALGORITMOS
Nota 1
(Nota 1 + Nota 2 + Nota 3)
Nota 2 Resultado
Resultado = Soma/3
Nota 3
53
EXERCÍCIOS
54
RESOLUÇÃO FLUXOGRAMA INÍCIO
(Descrição Narrativa e
Fluxograma) que: N1, N2, N3
• Receba três números do Usuário;
• Informe a soma dos três números
recebidos. SOMA = N1+N2+N3
FIM
55
EXERCÍCIOS
(Descrição Narrativa e
Fluxograma) que:
• Receba um numero inteiro;
• Informe se o numero recebido e
negativo ou positivo. Considere o
valor zero sendo positivo.
56
RESOLUÇÃO FLUXOGRAMA INÍCIO
(Fluxograma e Pseudocódigo)
que:
• Receba um numero inteiro; N1
“Número é Negativo”
FIM
57
EXERCÍCIOS
(Descrição Narrativa e
Fluxograma) que:
• Receba dois números inteiros;
• Informe qual dos números
recebidos é o maior ou se eles são
iguais.
58
EXERCÍCIOS
INÍCIO
3 - Construa um
algoritmo (Descrição
Narrativa e Fluxograma)
Sim
“O Maior Número é: ”,
N1>N2? N1
que:
• Receba dois números Não
inteiros;
• Informe qual dos N2>N1?
Sim “O Maior Número é: ”,
N2
números recebidos é o
maior ou se eles são Não
iguais.
“Os Números são
• Utilizar Interface Iguais” FIM
Amigável
59
DÚVIDAS?
Contanto: salatiel.dantas@ufersa.edu.br