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

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

CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Apresentações semelhantes


Apresentação em tema: "CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS"— Transcrição da apresentação:

1 CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS
DISCIPLINA: ALGORITMO PROFº.: LEANDRO GONZALEZ

2 ALGORITMO Conteúdo programático: Introdução: Lógica; Algoritmo;
Formas de representação de Algoritmo; Programa. Itens fundamentais: Tipos de dados; Constantes; Variáveis; Comentários; Expressões e Operadores; Comandos de entrada e saída;

3 ALGORITMO Itens fundamentais: Estrutura sequencial;
Estrutura condicional; Estrutura de repetição. Estrutura de dados: Vetores; Matrizes; Arquivos; Modularização: Sub-rotinas; Funções Utilização da Ferramenta VisuALG

4 ALGORITMO Bibliografia:
FORBELLONE, Luis e EBERSPACHER, Henri. Lógica de Programação: a construção de algoritmos e estrutura de dados. APOSTILA ALGORITMOS. Disponível em: < programacao>

5 Lógica Lógica é oriunda da palavra grega logiké, que significa “arte de raciocinar”. Aristóteles, filósofo grego ( a.C.), foi o primeiro a estudar sobre os aspectos da lógica. Lógica é o ramo da filosofia que cuida das regras do bem pensar ou do pensar correto. A lógica ensina a colocar Ordem no Pensamento.

6 Lógica Resolva os seguintes problemas de lógica (5 minutos):
P1 – Uma lesma deve subir um poste de 10m de altura. Durante o período diurno (manhã e tarde) sobe 2m e à noite desce 1m. Em quantos dias atingirá o topo do poste? P2 - O pai do padre é filho do meu pai. O que eu sou do Padre? P3 – Qual o próximo número da sequência 7,8,10,13, ? P4 - Três gatos comem três ratos em três minutos. Cem gatos comem cem ratos em quantos minutos?

7 Sequência Lógica Sequencia Lógica é um conjunto de instruções executadas (sequencialmente) até atingir um objetivo ou solução de um problema.

8 Instruções Na linguagem comum: Em informática:
“Instrução é a norma definida para a realização de algo”. Em informática: Instrução indica ao computador uma ação elementar a ser executada. Uma ordem isolada não permite realizar o processo completo, para isso é necessário um conjunto de instruções colocadas em ordem sequencial lógica.

9 Instruções Ex: ao fazer omelete de batatas, precisaremos colocar em prática uma série de instruções: Descascar as batatas, bater os ovos, fritar as batatas, etc...; Essas instruções tem que ser executadas em uma ordem adequada; Assim, uma instrução tomada em separado não tem muito sentido.

10 Algoritmizando a Lógica
Algoritmo é uma sequencia de passos que visam atingir um objetivo bem definido. Podemos pensar em algoritmo como uma receita, uma sequência de instruções para atingir uma meta específica.

11 Algoritmizando a Lógica
Algoritmo é a descrição de um conjunto finito de instruções para a solução de um problema em um tempo finito. Estas tarefas não podem ser ambíguas nem subjetivas na sua definição, devem ser claras e precisas.

12 Algoritmizando a Lógica
Exemplo de aplicação da lógica e construção de algoritmos: Um homem precisa atravessar um rio com um barco e suas três cargas, que são: um cachorro, uma galinha e um saco de milho. Quais as restrições desse problema? Há limite na quantidade de viagens? O que o homem deve fazer para conseguir atravessar o rio sem perder as suas cargas?

13 Algoritmizando a Lógica
Quais as restrições desse problema? O barco possui capacidade de transportar apenas o Homem e mais uma de suas três cargas O cachorro não pode ficar só com a galinha A galinha não pode ficar só com o milho Há limite na quantidade de viagens? Não O que o homem deve fazer para atravessar a carga?

14 Solução Início: H – C – G – M | vazio

15 Torre de Hanói Haste A Haste B Haste C Peça Pequena Peça Média
Peça Grande

16 Torre de Hanói Objetivo: Mover os discos da haste A para a haste C.
Quais as restrições? Um disco maior não pode ficar em cima de um disco menor. Só pode mover um disco de cada vez. Qual a sequência lógica para resolver este problema?

17 Algoritmo Um problema pode ser solucionado através de diversos algoritmos. Não se aprende algoritmo copiando. Só aprende algoritmo exercitando. Um algoritmo deve sempre possuir pelo menos um resultado, normalmente chamado de saída.

18 Por que usar algoritmos?
Abstração - todo o esforço é concentrado na resolução do problema e não em detalhes computacionais que podem ser acrescentados posteriormente. Portabilidade - uma solução algorítmica pode ser traduzida para qualquer linguagem de programação.

19 Forma de representação do Algoritmo:
Descrição narrativa ou Linguagem Natural; Fluxograma ou Diagrama de Blocos; Diagrama de Chapin; Pseudocódigo, Português estruturado ou Portugol.

20 Descrição Narrativa É a forma mais espontânea de representação de algoritmos, pois descrevemos os passos do algoritmo utilizando o nosso linguajar quotidiano. Não se emprega nenhum recurso diagramático, e não há uma rigidez na estruturação das ações. Apresenta conteúdo extenso.

21 Descrição Narrativa Exemplo:
O uso de linguagem natural pode gerar más interpretações, ambiguidades e imprecisões.

22 Fluxograma É uma representação gráfica de algoritmo onde formas geométricas diferentes implicam ações distintas. Tal propriedade facilita o entendimento das ideias contidas nos algoritmos. Pouca atenção aos dados, não oferecendo recursos para descrevê-los ou representá-los. Inicie o fluxograma de cima para baixo e da esquerda para a direita. Evitar cruzamento nas linhas do fluxograma.

23 Fluxograma No fluxograma existem símbolos padronizados para início, entrada de dados, cálculos, saída de dados, fim, etc.

24 Fluxograma Exemplo:

25 Diagrama Chapin A ideia básica deste diagrama é representar as ações de um algoritmo dentro de um único retângulo, subdividido em retângulos menores, que representam os diferentes blocos de sequência de ações do algoritmo. Sequência Seleção Repetição

26 Diagrama Chapin Exemplo

27 Pseudocódigo Representação rica em detalhes e assemelha-se bastante à forma em que os programas são escritos. Pode-se definir quais e como os dados vão estar estruturados. Passagem quase imediata do algoritmo para uma linguagem de programação qualquer. Sintaxe não padronizada.

28 Pseudocódigo Exemplo:

29 Algoritmo Existem três estruturas básicas para a construção de algoritmos: sequenciação, seleção e repetição. A combinação destas três estruturas permite-nos a construção de algoritmos para a resolução de problemas extremamente complexos. A programação estruturada se baseia nestas três estruturas básicas.

30 Algoritmo Imagine a seguinte situação: precisamos elaborar um algoritmo para trocar uma lâmpada. Utilizando apenas a estrutura de sequenciação.

31 Algoritmo No entanto, antes de trocarmos a lâmpada devemos nos certificar de que ela realmente esteja queimada, para então trocá-la. Assim, podemos melhorar o nosso algoritmo.

32 Algoritmo Ainda podemos deixá-lo mais completo. Quando verificamos que a lâmpada está queimada, subimos para trocá-la, mas não consideramos a hipótese da lâmpada nova também estar queimada, e se isso ocorrer, precisaremos executar algumas ações novamente, até que a lâmpada acenda.

33 Passos para a construção de um algoritmo
1. Identificar o problema (objetivo) mediante leitura atenta de seu enunciado; 2. Retirar do enunciado as entradas de dados, ou seja, identificar os dados que devem ser fornecidos; 3. Retirar do enunciado as saídas de dados que devem ser gerados como resultado da solução; 4. Determinar o que deve ser feito para transformar (processar) as entradas nas saídas desejadas; 5. Construir o algoritmo; 6. Testar a solução.

34 Identificando entrada, processamento e saída
1- Construir um algoritmo para fazer um suco de Laranja natural. Entrada: Laranja Processamento: Cortar a laranja Espremer a laranja Saída: Suco de laranja 2- Construir um algoritmo para somar dois números Entrada: Primeiro número Segundo Número Processamento: Somar os números Saída: Resultado da soma

35 Lógica de Programação O conhecimento de Lógica de Programação é essencial para as pessoas que desejam trabalhar com desenvolvimento de sistemas e programas. Uma boa lógica de programação é desenvolvida a partir de um conjunto de elementos, entre eles: Integridade; Clareza; Eficiência; Modularidade; Generalidade. A lógica de programação permite definir a sequência correta para o desenvolvimento de algoritmo e programas computacionais.

36 Programas Programas são algoritmos escritos em uma linguagem de programação (Java, PHP, C#, Ruby, Delphi, Visual Basic) e que são interpretados e executados por uma máquina. Um computador é somente capaz de realizar estritamente as tarefas que lhe forem delegadas e que façam parte do conjunto daquelas ações que ele pode executar (programa).


Carregar ppt "CURSO DE ANÁLISE E DESENVOLVIMENTO DE SISTEMAS"

Apresentações semelhantes


Anúncios Google