Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouAntônio Serafin Alterado mais de 9 anos atrás
1
ENGENHARIA DE CONTROLE E AUTOMAÇÃO COMPUTAÇÃO PARA ENGENHARIA Aula 10 1 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
2
Agenda Lógica de programação de computadores e algoritmos. O que é lógica? O que é algoritmo? Relacionar o algoritmo a solução do problema UML Fluxograma Pseudocódigo para representar algoritmos Construções - Seqüência, Seleção e Repetição 2 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
3
O que é lógica? Ciência que estuda as leis do raciocinio Nos ajuda na correção / Validação do Pensamento. Encadeamento/Ordem de idéias Arte de bem pensar. 3 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
4
O que é lógica? Ciência que estuda as leis do raciocínio Nos ajuda em : Correção / Validação do Pensamento. Encadeamento/Ordem de idéias Arte de bem pensar. Seqüência Lógica Passos executados até atingir objetivo ou solução de um problema. 4 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
5
O que é lógica? Sequência Lógica – cont. Ex. Chupar uma bala Pegar a bala Retirar o papel Chupar a Bala Jogar o Papel no Lixo 5 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
6
O que é algoritmo? Conceito Conjunto finito de regras, bem definidas, para a solução de um problema em um tempo e numero de passos finitos. Ou Método passo a passo para resolver um problema ou realizar uma tarefa. 6 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
7
O que é algoritmo? Características do algoritmo Finito : Termina ao fim de um numero finito de passos. Definido : Cada passo é preciso. Entrada : Pode haver nenhuma ou varias entradas. Saídas : Podem haver uma ou mais. Eficácia :Todas operações executadas devem ser básicas. 7 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
8
O que é algoritmo? Características do algoritmo - cont. É independente do sistema de computador FOROUZAN, Behrouz; MOSHARRAF, Cengage, 2011 pag. 192 8 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
9
Relacionar o algoritmo a solução do problema Exemplo: Algoritimo EncontraMaior - Encontrar o maior numero inteiro em uma lista de números inteiros positivos quaisquer (ex. : 12, 8, 13, 9, 11) Considerações Deve ser genérico para funcionar com qualquer quantidade de números Não pode ser realizado em uma etapa (obvio!) Abordagem deve ser intuitiva. Usar pequena quantidade números para provar, depois amplia para qualquer quantidade de numeros 9 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
10
Relacionar o algoritmo a solução do problema 10 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
11
Lógica de programação de computadores e algoritmos - Continuação UML – Unified Modeling Language É uma notação que pode gerar uma representação pictórica de um algoritmo. Ela oculta todos os detalhes de uma algoritmo, tentando apresenta-lo como uma grande figura demonstrando como o algoritmo flui do inicio ao fim. Veremos apenas a representação mais simples das três construções básicas para criar-se um algoritmo usando UML visto que essa notação e vasta e rica em detalhes e o uso dos mesmos não é nosso foco. 11 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
12
Lógica de programação de computadores e algoritmos - Continuação 12 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
13
Lógica de programação de computadores e algoritmos - Continuação Fluxograma – Ferramentas de representação gráfica do processo, possui vários tipos e grau de complexidade, de acordo com o objetivo a que se destinam. Demonstram a sequencia operacional do desenvolvimento de um processo, o trabalho que esta sendo realizado e como a informação flui entre os participantes do processo. 13 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
14
Lógica de programação de computadores e algoritmos - Continuação O fluxograma possibilita : Definição e documentação de processos Preparação para aperfeiçoamento de processos Identificação de atividades criticas de processos Conhecimento da sequencia e encadeamento das atividades de um processo dando uma visão do fluxo do processo, provendo esclarecimentos. 14 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
15
Lógica de programação de computadores e algoritmos - Continuação Fluxograma padrão ANSI (American National Standandards Institute) Simbologia : 1 -utilizado quando o fluxograma não cabe em uma única página. 15 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
16
Lógica de programação de computadores e algoritmos - Continuação Fluxograma padrão ANSI – Considerações para criação : Deve começar e terminar com uso de terminais : Deve ser construído sempre de cima para baixo e da esquerda para a direita 16 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com INÍCIO FIM
17
Lógica de programação de computadores e algoritmos - Continuação Fluxograma padrão ANSI – Considerações para criação – cont. : Operação/ Atividade Nome da atividade = verbo + objeto Exemplos Montar Computador Recebe pedido cliente Paga divida 17 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Nome da atividade
18
Lógica de programação de computadores e algoritmos - Continuação Fluxograma padrão ANSI – Considerações para criação – cont. : Decisão Conector de situação : Usar de uma pagina para outra Quando não couber 18 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Pergunta ? NÃO SIM 1 1
19
O Fluxograma pode salvar sua vida ! 19 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
20
Portugol Para aprendermos a programar um passo necessário é aprendermos o raciocínio da programação Uma linguagem de programação tem intenção de servir de veiculo para expressão de raciocínio algorítmico e execução automática de um algoritmo. 20 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Lógica de programação de computadores e algoritmos - Continuação
21
Portugol – cont. Para fazermos a transição do algoritmo para o programa, uma das ferramentas usada é o portugol, uma pseudolinguagem de programação (simbiose do português com o ALGOL e PASCAL - Guimaraes Lages, 1994) O objetivo é obter uma notação formal para ser usada na definição, criação e documentação de um programa. 21 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Lógica de programação de computadores e algoritmos - Continuação
22
Portugol – cont. A ideia é permitir que um conjunto básico de primitivas seja possível ao projetista pensar no problema e não na maquina que vai executar o algoritmo. Toda linguagem obedece a uma sintaxe (forma) e semântica (conteudo) 22 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Lógica de programação de computadores e algoritmos - Continuação
23
Portugol – cont. Identificador – A, B1, BCD3, A4, contador, etc.; composto por letras e números Declaração de variáveis – tipos Básicos Inteiros – Qualquer numero inteiro (-5,0,235) Real - qualquer numero real, negativo ou positivo Caracter – qualquer conjunto de caracateres alfanumericos Lógico – Falso ou verdadeiro. Continua...... 23 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Lógica de programação de computadores e algoritmos - Continuação
24
Pseudocódigo para representar algoritmos – Portugol – continuação Sabemos que os algoritmos podem utilizar 3 estruturas básicas para resolver qualquer tipo de problema. Sequência Decisão Repetição 24 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
25
Portugol – continuação Quando utilizar cada uma das estruturas? Sequência - Para problemas simples com execução de ações onde não é necessária nenhuma tomada decisão ou ação repetitiva. Ex. vestir as calças: Pegar calça Colocar primeira perna Colocar segunda perna Suspender a calça Fechar o zíper Fechar o botão 25 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
26
Portugol – continuação Quando utilizar cada uma das estruturas? Decisão - Para problemas onde a estrutura de sequência não é suficiente para resolver o problema. Ex. Qual veículo usar para ir ao trabalho? Verificar o clima Se estiver fazendo sol Utilizar moto Senao Utilizar carro 26 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
27
Portugol – continuação Quando utilizar cada uma das estruturas? Repetição - Para problemas onde uma ou mais ações se repetirão para solucionar o problema. Ex. Contar moedas do cofrinho 27 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Abrir cofrinho vTotal <- 0 Faca enquanto houver moedas vValor <- valor moeda atual vTotal <- vTotal + vValor proxima moeda Abrir cofrinho vTotal <- 0 Faca vValor <- valor moeda atual vTotal <- vTotal +vValor proxima moeda enquanto houver moedas
28
Portugol – continuação Tipos de algoritmos básicos Alguns algoritmos são comumente usados e por isso indicados para diversas soluções, discutiremos alguns deles. Soma – Usado para adicionar muitos números inteiros, faz uso do operador + e um laço (repetição) 28 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
29
Portugol – continuação Tipos de algoritmos básicos -Soma Forouzan 2011, pag.200 29 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
30
Portugol – continuação Tipos de algoritmos básicos –Soma Tem três partes lógicas: Inicialização da soma no inicio O Laço que em cada iteração, adiciona um novo numero inteiro a soma Retorno do resultado depois de sair do Laço (repetição) 30 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
31
Portugol – continuação Tipos de algoritmos básicos – Produto Utilizado para encontrar o produto de uma lista de números inteiros. Faz uso do operador de multiplicação em um laço (repetição) Tem três partes lógicas : Inicialização Laço, em cada iteração multiplica um novo numero inteiro pelo produto Retorno do resultado após sair do laço.; 31 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
32
Portugol – continuação Forouzan 2011, pag.201 32 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
33
Portugol – continuação 33 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos –Menor e Maior Esse tipo de algoritmo pode ser usado tanto para encontrar o menor como o maior numero de uma lista, Utilizando um laço (repetição) e duas estruturas de decisão. A diferença entre eles é mínima, mudando-se a pergunta e o nome da variavel.
34
Portugol – continuação 34 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Uma das aplicações mais comuns, o processo pelo qual dados são arranjados de acordo com seus valores. Veremos três tipos mais eficientes e que são utilizados para algoritmos mais avançados : Seleção Método Bolha Inserção
35
Portugol – continuação 35 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Seleção Lista a ser ordenada é dividida em duas sublistas – ordenada e não ordenada. (limite imaginario) Encontra-se o menor elemento da sublista não ordenada e troca-se pelo elemento no início da própria sublista não ordenada. O limite imaginário entre as sublistas move-se um elemento a frente Depois de cada seleção e troca concluímos uma etapa da ordenação.
36
Portugol – continuação 36 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Seleção
37
Portugol – continuação 37 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Algoritmo de ordenação por seleção Usa dois laços um dentro do outro O laço mais externo é iterado para cada etapa O Laço mais interno encontra o menor elemento da lista O exemplo a seguir não mostra o laço mais interno, a primeira instrução no laço representa o laço mais interno
38
Portugol – continuação 38 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com
39
Portugol – continuação 39 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Método Bolha Tambem dividida em duas sublistas – ordenada e não ordenada O menor elemento é “borbulhado” (movido) da lista não ordenada para ordenada a cada posição.
40
Portugol – continuação 40 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Método Bolha – cont.
41
Portugol – continuação 41 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Método Inserção É uma das técnicas mais comuns, usado por jogadores de cartas. Cada carta pega é inserida no local adequado. Também divide lista em ordenada e não ordenada Cada iteração move item da lista não ordenada para ordenada e inserido no local apropriado
42
Portugol – continuação 42 18/02/2013 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com Tipos de algoritmos básicos – Ordenação Exercícios Para entrega nesta aula : Escreva o algoritmo de ordenação em portugol e UML de uma lista de números inteiros utilizando os métodos Seleção bolha Inserção Para entrega na próxima aula Sustentabilidade: Redução do consumo de energias, diminuição da emissão de gases, reciclagem e descarte devido de equipamentos eletrônicos.
43
Bibliografia 02/08/2011 Professor Leomir J. Borba- professor.leomir@gmail.com –http://professorleomir.wordpress.com 43 BIBLIOGRAFIA BÁSICA 1 TANENBAUM, Andrew S. Redes de computadores. Rio de Janeiro: Campus, 1994. 2 MACHADO, Francis Berenger. Arquitetura de sistemas operacionais. Rio de Janeiro: Livros Técnicos e Científicos, 2002. 3. ed. 3 SOUZA, Marco Antônio de Furlan. Algoritmos e lógica de programação. 2ª ed. São Paulo, Cengage Learning, 2011. BIBLIOGRIA COMPLEMENTAR 1 CANTU, Marco. Dominando o Delphi 5 "a Bíblia". São Paulo: Makron Books, 2000 2 LOURENÇO, Antônio Carlos de. Circuitos digitais. São Paulo: Érica, 2005 3 NORTON, P., Introdução à Informática, 5ª edição, São Paulo, Printice Hall, 2004. 1997 4 MANZANO, José Augusto. Algoritmos. São Paulo: Érica, 2011. 5 COMER, Douglas E. Interligação em rede com TCP/IP: projeto, implementação e detalhes internos. Tradução de Ana Maria Netto GUZ. 3. ed. Rio de Janeiro: Campus, 1999. v. 2.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.