Download - Algoritmos e Programação - 2016.1 - Aula 2
![Page 1: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/1.jpg)
Algoritmos e Programação
Prof.º Thyago Maia
![Page 2: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/2.jpg)
Objetivos
Aula 2: Introdução
• Fazer com que o aluno conheça a importância dos algoritmos
• Apresentar os tipos de algoritmos existentes
2
![Page 3: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/3.jpg)
O que podemos concluir sobre algoritmos?
![Page 4: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/4.jpg)
O que podemos concluir sobre algoritmos?
Algoritmo é uma espécie de passo a passo de ações (instruções);
Algoritmos retornam uma saída (ex.: um ovo frito) a partir de uma determinada entrada (ex.: um ovo) através de uma sequência de passos;
Os passos são executados um após o outro (de forma sequencial);
4
![Page 5: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/5.jpg)
O que podemos concluir sobre algoritmos?
Um algoritmo está correto quando sua sequência de instruções retorna uma saída esperada;
Podem existir um ou mais algoritmos que retornam uma saída esperada; Mas podem existir algoritmos mais eficientes que
outros;
Um algoritmo não é a solução do problema, mas o caminho que busca a solução do problema;
5
![Page 6: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/6.jpg)
Por que criamos algoritmos?
![Page 7: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/7.jpg)
Por que criamos algoritmos?
A linguagem natural não pode ser interpretada por computadores;
Computadores são projetados para executar tarefas bem definidas a partir de instruções;
Para desenvolver software, utilizamos linguagens de programação...
A linguagem algorítmica é similar a uma linguagem de programação; Logo, aprendendo a criar algoritmos, estamos aptos
a programar em qualquer linguagem de programação;
7
![Page 8: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/8.jpg)
Tipos de algoritmos
![Page 9: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/9.jpg)
Tipos de algoritmos
Descrição Narrativa;
Fluxograma;
Pseudocódigo, Português Estruturado ou Portugol;
9
SUBJETIVIDADE
PRECISÃO
![Page 10: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/10.jpg)
Tipos de algoritmos
Descrição Narrativa
Utiliza-se preferencialmente um verbo por frase; Formada por frases curtas e simples; É objetiva; Evita palavras com sentido dúbio;
10
![Page 11: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/11.jpg)
Tipos de algoritmos
Descrição Narrativa – Exemplo:
Dobro de um número (dobro = número x 2)
Digitar um número; Gravar em uma variável; Multiplicar o número digitado por 2; Gravar o resultado em outra variável; Mostrar o resultado da operação;
11
![Page 12: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/12.jpg)
Tipos de algoritmos
Fluxograma
Descrevem o fluxo de ação de um determinado trabalho lógico;
Usa símbolos convencionais, permitindo poucas variações;
Representados por símbolos geométricos;
12
![Page 13: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/13.jpg)
Tipos de algoritmos
• Fluxograma – Conjunto de Símbolos:
13
INÍCIO OU FIM DE ALGORITMO
CÁLCULO OU ATRIBUIÇÃO DE VALOR
ENTRADA DE DADOS
SAÍDA DE DADOS
DECISÃOFLUXO DE DADOS
![Page 14: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/14.jpg)
Tipos de algoritmos
• Exemplo: Faça um algoritmo que calcula e apresenta a multiplicação entre dois números.
14
![Page 15: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/15.jpg)
Tipos de algoritmos
• Fluxograma – Exemplo:
15
INÍCIO
M = N1 * N2
N1, N2
M FIM
![Page 16: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/16.jpg)
Tipos de algoritmos
• Exemplo 2: Faça um algoritmo que calcula e apresenta a divisão entre dois números.
16
![Page 17: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/17.jpg)
Tipos de algoritmos
• Fluxograma – Exemplo 2:
17
INÍCIO
D = NUM / DEN
NUM, DEN
IMPOSSÍVEL DIVIDIR
FIM
DEN = 0
SIM
D
NÃO
![Page 18: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/18.jpg)
Tipos de algoritmos
• Exercício: Faça um algoritmo (fluxograma) que calcula a média de três notas de um determinado aluno e informa se o aluno está aprovado ou reprovado.
– O aluno estará aprovado se sua média for maior ou igual a 7;
18
![Page 19: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/19.jpg)
Tipos de algoritmos
• Fluxograma – Exercício:
19
INÍCIO
MEDIA = (N1 + N2 + N3) / 3
N1, N2, N3
APROVADO
FIM
MEDIA >= 7
SIM NÃO
REPROVADO
![Page 20: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/20.jpg)
Explore o assunto!
![Page 21: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/21.jpg)
Explore o assunto!
• Referências– Fundamentos da programação de computadores
(ASCENCIO, A. F. G., CAMPOS, E. A. V.): Capítulo 1
21
![Page 22: Algoritmos e Programação - 2016.1 - Aula 2](https://reader031.vdocuments.com.br/reader031/viewer/2022021813/588472ae1a28ab5e248b4ddb/html5/thumbnails/22.jpg)
Explore o assunto!
• Referências– Introdução aos
algoritmos(TONET, B., KOLIVER, C.): Introdução e tópico 1;
– Disponível em http://www.claudiorodolfo.com/ftc/ap/manual_visualg.pdf
22