A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos – Conceitos Iniciais

Apresentações semelhantes


Apresentação em tema: "Algoritmos – Conceitos Iniciais"— Transcrição da apresentação:

1 Algoritmos – Conceitos Iniciais
Cleone Silva

2 Lógica de Programação A lógica é usada para guiar nossos pensamentos ou ações na busca da solução: A lógica está correta se conseguirmos atingir o nosso objetivo; É a habilidade fundamental para se resolver problemas de programação de computadores. Temos que aprender a pensar de forma estruturada: Desenvolver e aperfeiçoar a técnica de pensamento; Seguir um raciocínio lógico e matemático.

3 Lógica O que é lógica? A lógica trata da correção do pensamento;
Ensina-nos a usar corretamente as leis do pensamento: É a arte de pensar corretamente; A forma mais complexa do pensamento é o raciocínio; Ordem da razão (nossa razão pode funcionar desordenadamente) ou ordem no pensamento.

4 Noções de Lógica Exemplo: Todo cavalo é mamífero.
Todo mamífero é animal. Todo cavalo é mamífero. Portanto, todo cavalo é animal. Brasil é país do planeta Terra. Todos os Brasileiros são do Brasil. Portanto, todos os Brasileiros são terráqueos.

5 Existe lógica no dia-a-dia?
Sempre que pensamos. Quando falamos, pois a palavra falada é a representação do pensamento. Quando escrevemos, pois a palavra escrita é a representação da palavra falada ou mesmo do nosso pensamento. Daí a importância da lógica em nossa vida, pois quando pensamos, escrevemos ou falamos corretamente precisamos colocar Ordem no Pensamento.

6 Existe lógica no dia-a-dia?
Exemplos: a) A gaveta está fechada. A agenda está na gaveta. Preciso primeiro abrir a gaveta, para depois pegar a agenda. b) Ana é mais velha do que João. João é mais velho do que Pedro. Portanto, Ana é mais velha do que Pedro.

7 Lógica de Programação Isso é algoritmo!
Resolver problemas com o computador é semelhante a maneira como resolvemos problema do cotidiano: Encontrar uma maneira de descrever o problema; Seguir uma sequência de passos até atingir a solução desejada. Isso é algoritmo!

8 O que é Algoritmo? Sequência de passos com o objetivo de resolver um problema. Sequência de passos (ações) que visam atingir um objetivo bem definido [Forbellone,1999]. Descrição de uma sequência de passos que deve ser seguida para a realização de uma tarefa [Ascencio, 1999]. São regras formais para a obtenção de um resultado ou da solução de um problema, englobando fórmulas de expressões aritméticas [Manzano, 1997].

9 Algoritmo - Exemplos Exemplos:
Receita de bolo, onde você tem uma série de ingredientes necessários, uma sequência de diversos passos a serem cumpridos para que se consiga fazer determinado tipo de bolo (objetivo bem definido). Mapa para se chegar à escola, que também possui uma sequência de passos a serem seguidos e um objetivo bem definido.

10 O que é uma ação? O que é um estado?
É um acontecimento que a partir de um estado inicial, após um período de tempo finito, produz um estado final previsível e bem definido. O que é um estado? É a situação atual de dado objeto.

11 Redefinindo Algoritmo
Algoritmo é a descrição de um conjunto de ações que, obedecidas, resultam numa sucessão finita de passos, atingindo o objetivo. Algoritmo pode ser definido com uma seqüência lógica, e sem ambigüidade de passos que levam solução de um problema; Algoritmo destina-se a resolver um problema: fixa um padrão de comportamento a ser seguido, uma norma de execução a ser trilhada, com vistas a alcançar, como resultado final, a solução de um problema.

12 Algoritmo Imagine a sequência de números: 1, 6, 11, 16, 21, Qual seria o sétimo elemento da série? Para isto, precisamos definir qual a sua regra de formação, ou seja, o seu padrão de comportamento.

13 Qual é o algoritmo para atravessar uma estrada???
Quantas possibilidades existem?!?!

14 Como construir um algoritmo???
Mas antes...

15 Algoritmo - Exemplo Trocar uma lâmpada Pegue uma escada;
Posicione-a embaixo da lâmpada; Busque uma lâmpada nova; Suba na escada; Retire a lâmpada; Coloque uma lâmpada nova.

16 Algoritmo - Exemplo O objetivo de trocar a lâmpada queimada pode ser atingido com tal algoritmo que descreve a sequência de passos a ser seguida. Porém, e se a lâmpada não estiver queimada? Podemos efetuar um teste antes de trocá-la. pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; ligue o interruptor; SE a lâmpada não acender, então: suba na escada; retire a lâmpada; coloque uma lâmpada nova. O que aconteceu neste algoritmo foi a inclusão de um teste seletivo que determina quais ações serão executadas, dependendo de uma condição.

17 Algoritmo - Exemplo Otimização do algoritmo anterior – o algoritmo anterior permite que se pegue a escada e uma lâmpada nova sem saber se serão necessárias. ligue o interruptor; SE a lâmpada não acender, então: pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; suba na escada; retire a lâmpada; coloque uma lâmpada nova.

18 Algoritmo - Exemplo E se a lâmpada nova não funcionar? O objetivo portanto não foi atingido. Devemos então trocar a lâmpada diversas vezes, até que funcione. ligue interruptor; SE a lâmpada não acender, então: pegue uma escada; posicione-a embaixo da lâmpada; busque uma lâmpada nova; suba na escada; retire a lâmpada; coloque uma lâmpada nova. ENQUANTO a lâmpada não acender: coloque outra lâmpada.

19 ...e como construir um ALGORITMO?
Raciocínio lógico + Conhecimento de técnicas Ferramentas 19

20 ...e como construir um ALGORITMO?
Raciocínio lógico – experiência adquirida com a prática (exercícios) + Conhecimento de técnicas – estudo (leitura de livros de programação) Ferramentas – estudo (manuais de referência) 20

21 Algoritmo (Cotidiano) Trocar um pneu de um carro
Raciocínio lógico + Conhecimento de Técnicas (“curso de mecânica/física”) Ferramentas (“macaco hidráulico”, “chave de roda”) 21

22 Como construir um Algoritmo?
Síntese!!! Para resolver um problema por meio da construção de um algoritmo siga uma sequência lógica de passos: Leia atentamente o enunciado: para resolver um problema é necessário sua compreensão; Retire do enunciado a relação das entradas de dados: por meio do enunciado descubra quais informações devem ser fornecidas; Retire do enunciado a relação das saídas de dados: por meio do enunciado descubra quais são os dados que devem ser emitidos para compor o resultado final; Determine as ações que levarão a atingir o resultado desejado: determine qual a sequência de ações é capaz de transformar um conjunto definido de dados nas informações do resultado; Construa o algoritmo: descreva os passos para resolver o problema; Execute o algoritmo: execute todas as ações descritas seguindo o fluxo de execução estabelecido, verificando se os resultados obtidos correspondem ao esperado. Desta forma torna-se possível detectar algum possível erro no desenvolvimento do algoritmo. 22

23 Treinando Raciocínio Lógico
Exercício Um homem precisa atravessar um rio com um barco que possui capacidade de transportar apenas ele mesmo e mais uma de suas três cargas, que são: um lobo, um bode e uma caixa de alfafa. Indique as ações necessárias para que o homem consiga atravessar o rio sem perder suas cargas. O lobo não pode ficar sozinho com o bode, senão ele o come; O bode não pode ficar sozinho com a alfafa, senão a come.

24 Treinando Raciocínio Lógico
... outro exercício Três jesuítas e três canibais precisam atravessar um rio; para tal, dispõem de um barco com capacidade para duas pessoas. Por medida de segurança não se permite que em alguma margem a quantidade de jesuítas seja inferior à de canibais (senão o canibal come o jesuíta). Elabore um algoritmo indicando as ações que concretizam a travessia com segurança.

25 Treinando Raciocínio Lógico
... e outro exercício Elabore um algoritmo que mova três discos de uma Torre de Hanói, que consiste em três hastes (a-b-c), uma das quais serve de suporte para três discos de tamanhos diferentes (1-2-3), os menores sobre os maiores. Pode-se mover um disco de cada vez para qualquer haste, contanto que nunca seja colocado um disco maior sobre um menor. O objetivo é transferir os três discos para outra haste.

26 Perguntas??? 26


Carregar ppt "Algoritmos – Conceitos Iniciais"

Apresentações semelhantes


Anúncios Google