algoritmos e estruturas de dados i · objetivos • algoritmos. • representação de dados. •...

22
Algoritmos e Estruturas de Dados I Prof. Marcos V. O. de Assis [email protected] [email protected] hp://mvoassis.wordpress.com

Upload: duongdien

Post on 20-Jan-2019

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos e Estruturas de Dados I

Prof. Marcos V. O. de [email protected]@ufpr.br

http://mvoassis.wordpress.com

Page 2: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Objetivos• Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação.• Solução de problemas com algoritmos

computacionais.

Page 3: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Avaliações• 2 provas• 2 trabalhos• Atividades EaD

Nf P1*0,6 T1*0,3EaD*0,1 (P2*0, 45T2*0, 45EaD*0,1)

2

Page 4: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!

Page 5: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Algoritmo• Algarismo

• Esses dois termos são parecidos mas, embora derivem da mesma origem, são diferentes!

Page 6: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Mas afinal, o que são algoritmos?

Page 7: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Algo complicado envolvendo cálculos difíceis e

avançados...

Page 8: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Na verdade, são conceitos muito simples

utilizados por todos nós em nosso dia a dia..

• Exemplos... ?– Busca na internet;– Ler e-mails;– Acessar redes sociais;– Fazer compras on-line;

Page 9: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Isso e muito mais…

Page 10: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Não acabou ainda..

– Com um celular, podemos:• Conversar com pessoas• Compartilhar experiências• Encontrar locais e rotas por aplicativos de GPS

– Com uma Smart TV, podemos:• Acessar conteúdos interativos e on demand;• Dar comandos com gestos de mão ou voz;

Page 11: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Definição de MANZANO:

– Algoritmos são conjuntos de passos finitos e organizados que, quando executados, resolvem um determinado problema.

– Dessa forma, algoritmos podem ser aplicados a tudo no mundo!

Page 12: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Com algoritmos, podemos medir inclusive a

quantidade de beleza de algo...– Proporção Áurea!

• O conceito de proporção Áurea é muito simples, e é baseado na letra grega phi

• Phi, por convenção, tem o valor de: 1,618

Page 13: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Ser humano simétrico

a/b = Phi = 1,618

Page 14: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Proporção áurea

Page 15: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Proporção áurea

Page 16: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Proporção áurea

Page 17: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Rotina do nosso cotidiano

– Ex1: Atravessar a ruaAlgoritmo AtravessarRua Olhar para a direita Olhar para a esquerda Se estiver vindo carro Não Atravesse senão Atravesse Fim-seFim-Algoritmo

Algoritmo AtravessarRua Olhar para a esquerda Olhar para a direita Se não estiver vindo carro Atravesse senão Não atravesse Fim-seFim-Algoritmo

Page 18: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Rotina do nosso cotidiano

– Ex1: Atravessar a ruaAlgoritmo AtravessarRua Olhar para a direita Olhar para a esquerda Se estiver vindo carro Não Atravesse senão Atravesse Fim-seFim-Algoritmo

Algoritmo AtravessarRua Atravesse Se estiver vindo carro Olhar para a direita senão Olhar para a esquerda Fim-se Não atravesseFim-Algoritmo

Page 19: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos!• Outros exemplos de algoritmos no cotidiano:

– Fazer um bolo;– Fazer ligação usando telefone;– Fazer um saque no caixa eletrônico;– Cancelar uma TV por assinatura;

Page 20: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos em computadores• Um programa de computador é feito para

suprir uma necessidade– Resolver um problema

• Equações do segundo grau!– E se eu tivesse um robô para resolver meus

problemas?– Assim que os algoritmos funcionam!

Page 21: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Algoritmos em computadores• Você tem um problema...• Você conhece o padrão para resolver esses

problemas...

• Então, ao invés de resolve-los manualmente, você constrói um algoritmo para que o computador os resolva para você.

Page 22: Algoritmos e Estruturas de Dados I · Objetivos • Algoritmos. • Representação de dados. • Introdução a uma linguagem de programação. • Solução de problemas com algoritmos

Dúvidas?