ATP1-algortimosDefinicoes
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Algoritmos e técnicas<br />
de programação<br />
Faculdade Pitágoras<br />
Professor: Gustavo Aurélio<br />
gustdi@gmail.com<br />
1
O que é um algoritmo ?<br />
• Algoritmo é uma sequência finita de<br />
instruções bem definidas e não ambíguas,<br />
cada uma das quais devendo ser executadas<br />
mecânica ou eletronicamente em um<br />
intervalo de tempo finito e com uma<br />
quantidade de esforço finita.
O que é um algoritmo ?<br />
• O conceito de algoritmo é frequentemente<br />
ilustrado pelo exemplo de uma receita<br />
culinária, embora muitos algoritmos sejam<br />
mais complexos. Eles podem repetir passos<br />
(fazer iterações) ou necessitar de decisões<br />
(tais como comparações ou lógica) até que a<br />
tarefa seja completada.
Objetivos específicos<br />
• Conhecer o que são, como se aplicam e a<br />
quem se destina a elaboração dos algoritmos;<br />
• Conhecer como são desenvolvidas as<br />
estruturas computacionais com expressões<br />
literais, lógicas e aritméticas, além dos tipos de<br />
dados;<br />
• Conhecer o ambiente de programação e como<br />
se dá o raciocínio lógico computacional, bem<br />
como os tipos e formas de representação de<br />
algoritmos através da elaboração do<br />
fluxograma. Aplicação em uma linguagem de<br />
programação JAVA
Definição de algoritmos<br />
• As ações que realizamos obedecem a uma<br />
sequência, e que esta precisa ser executada<br />
para que se consiga atingir o objetivo<br />
predeterminado<br />
• Por exemplo, quando é necessário trocar o<br />
pneu do carro:<br />
– 1. Desparafusar a roda.<br />
– 2. Suspender o carro com o macaco.<br />
– 3. Retirar a roda com o pneu.<br />
– 4. Colocar o estepe.<br />
– 5. Abaixar o carro.<br />
– 6. Parafusar a roda.
Desafio<br />
• Torre de Hanói<br />
– Objetivo: mover os discos da haste A para a<br />
haste C.<br />
– Restrições: Um disco NÃO pode ficar sobre<br />
um disco menor que ele.<br />
– Qual a sequencia lógica para resolver este<br />
problema?<br />
A<br />
c
Solução
Desafio 2<br />
• Um senhor está em uma das margens de um<br />
rio com uma raposa, uma galinha e um saco de<br />
milho.<br />
– Ele pretende atravessar o rio com suas<br />
cargas em um barco que só comporta ele e<br />
uma das cargas.<br />
– Ele não pode deixar em uma das margens<br />
sozinhos, a raposa e a galinha, nem a<br />
galinha e o milho.
Desafio 2
Desafio 2<br />
(1) Atravessar a galinha.<br />
(2) Retornar sozinho.<br />
(3) Atravessar a raposa.<br />
(4) Retornar com a galinha.<br />
(5) Atravessar o milho.<br />
(6) Retornar sozinho.<br />
(7) Atravessar a galinha.
Algoritmo Textual Informal:<br />
“Abra o porta-mala e verifique se todos<br />
acessórios estão lá. Em caso negativo, feche o<br />
porta-malas e peça carona a alguém. Em caso<br />
positivo, retire o triângulo, posicione-o a cerca<br />
de 30 m do carro, e, depois, retire o estepe e o<br />
macaco. Levante o carro...”
Algoritmo Textual Informal:
Algoritmo Textual Formal:
Desafio 3<br />
Uma lesma encontra-se no fundo de um poço<br />
seco de 10 metros de profundidade e quer sair de<br />
lá. Durante o dia, ela consegue subir 2 metros<br />
pela parede; mas à noite, enquanto dorme,<br />
escorrega 1 metro.<br />
● Depois de quantos dias ela consegue chegar<br />
na saída do poço?
Desafio 3
Desafio 3