Introdução à Computação
Algoritmo – Textual
Universidade Federal Rural de Pernambuco
Professor: Abner Corrêa Barros
[email protected]
“Um algoritmo pode ser definido como uma
seqüência de passos que visam atingir um
objetivo
bem
definido”.[Forbellone/
Eberspächer]
  “Um algoritmo é a descrição de um padrão de
comportamento, expressado em termos de
um repertório bem definido e finito de ações
primitivas, as quais damos por certo que
podem ser executadas”. [Guimarães/Lages.]
 
2
Um algoritmo descreve de maneira concisa e
não ambígua os passos necessários à
execução com sucesso de uma determinada
tarefa
  Pode ser descrito em linguagem textual
(pseudo código) ou através de símbolos
gráficos (fluxogramas)
 
3
Deve possuir no mínimo um estado inicial,
ponto de partida, e um estado final, objetivo
a ser alcançado
  A passagem do estado inicial ao final podem
exigir a execução de zero a n passos
intermediários ( n < ∞).
  Cada passo do algoritmo esta associado a uma
ação necessária para que se possa alcançar o
objetivo desejado
 
4
Introdução
  Um algoritmo tem um caráter imperativo no
qual a ocorrência do nome de uma ação
também é chamada de comando.
  Em outras palavras, um algoritmo é uma
norma executável para atingir um certo efeito
desejado (obter uma solução para certo tipo de
problema).
5
 
Exemplo:
  Algoritmo para atender a porta
1.  Campainha toca
2.  Direcionar-se à porta
3.  Destrancar a porta
4.  Abrir a porta
6
 
Uma ação pode representar um conjunto de
outros ações, representado assim uma rotina
mais complexa.
  Exemplo:
  Abrir a porta =
1.  Girar a chave
2.  Acionar a maçaneta
3.  Puchar ou empurrar a porta
7
Exemplos de algoritmos (na vida
prática):
o  Manuais de uso
o  Instruções de montagem
o  Receitas de cozinha
o  Informações de como chegar a um
lugar
8
Um algoritmo DEVE ser determinístico, ou seja, dadas
as mesmas condições deve produzir, depois de
executado, os mesmos resultados.
Passos
Intermediários
Estado
inicial
Passos
Intermediários
Estado
Final
Condições do ambiente
9
Principais Conectivos ou
Tipos de Comandos
• 
Seqüência Simples de Comandos (ação direta)
 Atribuir, somar, dividir, ler, escrever, etc
• 
Conectivo Condicional
 Se (condição) então (ação) senão (ação)
Conectivo Repetitivo
 Repetir (ação) n vezes
Conectivo Repetitivo Condicional
• 
• 
 Enquanto (condição) (ação)
 (ação) enquanto (condição)
10
Seqüência Simples de Comandos
 
Exemplo: Trocar a 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
 
11
Conectivo Condicional – se/então
 
Exemplo: Manutenção nas lâmpadas
 
 
 
Ligar interruptor
Se lâmpda não acende então
  Trocar a lâmpada
Senão
  verificar outra lâmpada
12
Conectivo Repetitivo
 
Exemplo: Manutenção nas lâmpadas
 
Repetir 10 vezes
 
Ligar interruptor
 
Se lâmpada não acende então
 
 
Trocar a lâmpada
Senão
 
verificar outra lâmpada
13
Conectivo Repetitivo Condicional
 
Exemplo: Manutenção nas lâmpadas
 
Enquanto houver lâmpadas por verificar, faça
 
Ligar interruptor
 
Se lâmpda não acende então
 
 
Trocar a lâmpada
Senão
 
verificar outra lâmpada
14
Conectivo Repetitivo Condicional
 
Exemplo: Manutenção nas lâmpadas
 
Faça
  Ligar interruptor
 
Se lâmpda não acende então
 
 
Senão
 
 
Trocar a lâmpada
verificar outra lâmpada
Enquanto houver lâmpadas por verificar
15
Inicio
Inicio
Buscar Escada
Ir até próximo
interruptor
Posicionar Escada
Ligar Lâmpada
Buscar Lâmpada
Lâmpada
Acendeu?
Retirar Lâmpada
Velha
Sim
Não
Trocar
Lâmpada
Colocar Lâmpada
Nova
Sim
Remover Escada
Falta
testar
alguma
lâmpada?
Não
Fim
Fim
16
Exercícios
Descreva um algoritmo para resolver uma
equação de segundo grau
  Descreve
um algoritmo para, dado um
conjunto de dados numéricos em ordem
aleatória, ordená-los de forma crescente
  Descreva um algorítmo para efetuar a divisão
de dois números fornecidos pelo usuário
 
17
Exercícios
 
Descreva um algoritmo que resolva a
seguinte situação:
•  Um
senhor, infelizmente bastante
gordo, está numa das margens de um
rio com uma raposa, uma dúzia de
galinhas e um saco de milho. O
senhor pretende atravessar o rio com
suas cargas, num barco que só
comporta o senhor e uma das
cargas…
18
Exercícios
 
Resolução:
1.  Atravesse as galinhas.
2.  Retorne sozinho.
3.  Atravesse a raposa.
4.  Retorne com as galinhas.
5.  Atravesse o milho.
6.  Retorne sozinho.
7.  Atravesse as galinhas.
19
20
Download

Arquivo