Buscar

Introdução a Algoritmos 1

Prévia do material em texto

1
Algoritmos - Introdução
2
Programação
É a arte de resolver problemas 
através da criação de software
3
Por que aprender a programar?
https://www.youtube.com/watch?v=iKKOV4yGI_M
4
Programação é Arte? 
• Similaridade do ponto de vista criativo
• Exige concentração
• Permite mais que uma solução
• Permite experimentação
• Habilidade que se aperfeiçoa com o 
passar do tempo e com a prática
5
O que é Lógica?
• Lógica
– Pode ser defnida como a “arte de bem 
pensar”
– Relacionada à coerência e racionalidade, ao 
que é correto
– Sempre que você expressa pensamentos de 
forma correta, você está sendo lógico!
– Portanto, a lógica se relaciona também com a 
“correção do pensamento”, determinando 
quais operações são válidas e quais não são
Lógica = colocar “ordem no 
pensamento”!
Lógica = colocar “ordem no 
pensamento”!
6
O que é um algoritmo?
• Algoritmo
– Uma sequência finita de ações (instruções) 
encadeadas segundo uma determinada 
lógica com o objetivo de solucionar um 
problema específco
• Instrução 
– É a informação que indica a um computador 
uma ação elementar a ser executada
7
Algoritmo da amizade: https://www.youtube.com/watch?v=VAX4jLlNo-Q
8
Exemplo mais realista
• Como fazer um bolo de chocolate???
9
O que é um algoritmo?
• O que vai no bolo?
10
Mas qual a ordem????
• Ordenar em passos Lógicos!
• Exercício:
– Fazer o bolo de chocolate em no máximo 8 passos 
lógicos
11
Uma solução
- Bater os ovos com a manteiga
- Adicionar o açúcar e a farinha aos poucos
- Adicionar o leite e bater
- Adicionar o chocolate
- Misturar o fermento
- Despejar a mistura em um forma untada
- Levar ao forno para assar por 30 minutos
- Retirar do forno
12
Mais exemplos
13
Fases de um Algoritmo
• Todo algoritmo atua em um princípio básico de 3 fases:
Valores 
iniciais
Seqüencia 
lógica de 
instruções 
(Algoritmo
)
Resultado
14
Fases de um Algoritmo
• Exercício:
– Identifcar as fases do algoritmo (entrada, 
processamento e saída) para calcular a média 
de duas notas
• Resolução:
– Entrada: informar as duas notas: nota1 e nota2
– Processamento: realizar o cálculo da média, 
sendo que a média é igual a soma de nota1 e 
nota2 dividido por 2
– Saída: apresentar o resultado do cálculo 
realizado na fase anterior, ou seja, a média 
obtida das duas notas
15
Importante
• Lembrar SEMPRE do princípio de 
funcionamento de um computador
Dados de 
Entrada
Dados de 
Entrada ProcessamentoProcessamento
Dados de 
Saída
(Resultado)
Dados de 
Saída
(Resultado)
16
Exercitando a lógica...
17
Problema 1: Jarros de Água
• Existem 2 jarros, um com capacidade para 5 litros 
e outro com capacidade para 3 litros de água. 
Descreva os passos para juntar 4 litros de água 
em um dos dois jarros.
5 litros 3 litros
18
Problema 2: Missionários e Canibais
Em um lado do lago existem 3 missionários e 3 
canibais. Toda vez que os missionários fcam em 
menor número que os canibais eles são devorados. 
Como transportar os missionários de uma margem 
para outra do rio, em um barco com 2 lugares, sem 
que sejam devorados pelos canibais. 
19
Métodos de representação
de algoritmos
20
Métodos de representação de algoritmos
• Existem vários métodos para a 
representação de algoritmos:
– Pseudocódigo
– Descrição Narrativa
– Fluxograma
– Diagrama de Chapin
21
Pseudocódigo
• Utiliza linguagem estruturada e se assemelha, na 
forma, a um programa escrito na linguagem de 
programação (Português estruturado)
22
Fluxograma (Diagrama de Blocos)
• Forma universal de representação
• Utiliza fguras geométricas para ilustrar os passos 
a serem seguidos na resolução dos problemas 
(símbolos)
• Cada símbolo tem uma representação
23
Símbolos e Significados
Início ou término de instruções
Atribuições, cálculos e processos em geral
ou Entrada de dados
Saída de dados em tela
Desvio condicional do fuxo
Conector de operações (indica o sentido fuxo)
Conector de desvio (utilizado para indicar “saltos” no fuxo)
24
Exemplo de Fluxograma
• Ler o nome e a idade 
de uma pessoa e 
mostrar na tela
Início
Nome, Idade
“Nome:”, Nome
“Idade:”, Idade
Fim
25
Exemplo de Fluxograma
• Cálculo do IMC = massa/(altura x altura)
IMC Classificação
< 18,5 Magreza
18,5 a < 25 Saudável
25 a < 30 Sobrepeso
>= 30 Obesidade
26
Exemplo de Fluxograma
• Signo
27
Exemplo de Pseudocódigo
• Cálculo do IMC = massa/(altura x altura)
IMC Classificação
< 18,5 Magreza
18,5 a < 25 Saudável
25 a < 30 Sobrepeso
>= 30 Obesidade
28
Exemplo de Pseudocódigo
• Signo
29
Teste de Mesa
• Técnica utilizada para simular a execução 
de um algoritmo verifcando se a lógica 
está correta ou não
• A simulação da solução acontece 
passando por todas as instruções do 
algoritmo para testar a resolução e 
encontrar erros se existirem
• Deve ser utilizado sempre que houver 
dúvida na exatidão da lógica do algoritmo
30
Exemplo Teste de Mesa
• Dado o algoritmo para calcular e exibir a média 
aritmética de duas notas
– INÍCIO
Receba a nota1
Receba a nota2
Some todas as notas e divida o resultado por 2
Mostre o resultado da divisão
– FIM
nome nota1 nota2 soma media
João da Silva 8,0 6,5 14,5 7,25
Afonso Direito 10,0 10,0 20,0 10,0
Luana Antunes 4,0 7,0 11,0 5,5
	Programar
	Slide 2
	Slide 3
	Programação é Arte?
	O que é Lógica?
	O que é um algoritmo?
	Slide 7
	Slide 8
	O que é um algoritmo?
	Mas qual a ordem????
	Slide 11
	Slide 12
	Fases de um Algoritmo
	Fases de um Algoritmo
	Importante
	Exercitando a lógica...
	Problema04: Jarros de Água
	Problema05: Missionários e Canibais
	Slide 19
	Slide 20
	Pseudocódigo
	Fluxograma (Diagrama de Blocos)
	Símbolos e Significados
	Exemplo de Fluxograma
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Teste de Mesa
	Exemplo Teste de Mesa

Continue navegando