algoritimo

download algoritimo

of 9

description

algoritimo

Transcript of algoritimo

  • 1Programao Estruturada

    Professor Luis Ncolas de Amorim [email protected]

    http://professor.ifsertao-pe.edu.br/nicolas.trigo/

    Programao Estruturada 2

    EMENTA

  • 2Programao Estruturada 3

    CONTEDO Introduo ao Algoritmo

    Tipos de Algoritmos

    Mtodo para construo de algoritmos

    Programao Estruturada 4

    CONCEITO DE ALGORITMO

    Desde o incio da existncia do homem, ele tem procurado criar mquinas que o auxiliem em seus trabalhos, diminuindo esforos e economizando tempo. Dentre essas mquinas, o computador tem se mostrado uma das mais versteis, rpidas e seguras.

    O computador capaz de auxiliar em qualquer coisa que lhe seja solicitada, mas no tem iniciativa, por isso precisa receber instrues nos mnimos detalhes.

  • 3Programao Estruturada 5

    CONCEITO DE ALGORITMO

    A finalidade bsica de um computador receber, manipular, armazenar e fornecer dados.

    Programao Estruturada 6

    CONCEITO DE ALGORITMO Algoritmo uma seqncia de passos que visa atingir um objetivo

    bem definido. (FORBELLONE)

    Algoritmo a descrio de uma seqncia de passos que deve ser seguida para a realizao de uma tarefa. (ASCENCIO)

    Algoritmo um procedimento passo a passo para a soluo de um problema. Tambm pode ser uma seqncia detalhada de aes a serem executadas para realizar alguma tarefa. (MEDINA)

    Ao um acontecimento que, a partir de um estado inicial, aps um perodo de tempo finito, produz um estado final previsvel e bem definido. Portanto, algoritmo a descrio de um conjunto de comandos que, obedecidos, resultam numa sucesso finita de aes. (FARRER)

  • 4Programao Estruturada 7

    PADRO DE COMPORTAMENTO Observe a seqncia de nmeros a seguir e descubra o

    valor de X: 1, 6, 11, 16, 21, 26, X, ...

    0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, X, ...

    2, 10, 12, 16, 17, 18, 19, X, ...

    Inicia com 1 e a partir do 2 nmero, captura o valor anterior e soma 5.

    Seqncia de Fibonacci, que obedece a seguinte regra: inicialmente fornecido os nmeros 0 e 1, e para gerar o prximo nmero soma-se os

    dois nmeros anteriores.

    Nmero comea com a letra D: 2, 10, 12, 16, 17, 18, 19, 200.

    Programao Estruturada 8

    TIPOS DE ALGORITMOS

    Descrio NarrativaA escrita em linguagem natural.

    Vantagem: No necessrio aprender uma forma de escrita.

    Desvantagem: Difcil transcrio para algo compreensvel para o computador.

  • 5Programao Estruturada 9

    Descrio NarrativaPodemos observar que executamos vrios algoritmos todos os dias, tendo como exemplo:

    FAZER UM SANDUCHE DE QUEIJO1. Pegar a faca2. Pegar o po3. Cortar o po4. Colocar a faca na mesa5. Pegar a fatia de queijo6. Abrir o po7. Colocar a fatia de queijo no po

    TIPOS DE ALGORITMOS

    Programao Estruturada 10

    Descrio NarrativaOutro Exemplo:

    MULTIPLICAO DE DOIS NMEROS1. Pega o primeiro nmero2. Pega o segundo nmero3. Aplica o sinal de multiplicao entre eles4. Executa a multiplicao5. Captura o resultado da multiplicao6. Mostra o resultado da multiplicao

    TIPOS DE ALGORITMOS

  • 6Programao Estruturada 11

    EXERCCIO DE FIXAO Um homem precisa atravessar um rio com um barco

    que possui capacidade de carregar apenas ele mesmo e mais uma das trs cargas que so: um lobo, um bode e um mao de alfafas.

    Observe as leis naturais: o lobo carnvoro e o bode herbvoro.

    O que o homem deve fazer para conseguir atravessar o rio sem perder suas cargas.

    Programao Estruturada 12

    TIPOS DE ALGORITMOS

    FluxogramaA escrita montada em smbolos grficos.

    Vantagem: Smbolos grficos torna-se mais compreensveis do que elementos textuais.

    Desvantagem: Alm de aprender a simbologia do fluxograma, dificulta a transcrio para algo compreensvel para o computador.

  • 7Programao Estruturada 13

    TIPOS DE ALGORITMOS

    FluxogramaDESCRIO NARRATIVAPasso 1: Receber os dois nmeros que sero multiplicados.Passo 2: Multiplicar os nmeros.Passo 3: Mostrar o resultado obtido na multiplicao.

    FLUXOGRAMA

    Programao Estruturada 14

    TIPOS DE ALGORITMOS

    PseudocdigoA escrita dotada regras predefinidas, de instrues.

    Vantagem: fcil a transcrio para algo compreensvel para o computador.

    Desvantagem: necessrio aprender as regras do pseudocdigo.

  • 8Programao Estruturada 15

    TIPOS DE ALGORITMOS

    Pseudocdigo

    INCIOVARIVEL

    Num1, Num2, M: INTEIROESCREVA (Digite dois nmeros: )LEIA (Num1, Num2)M Num1 * Num2ESCREVA (Multiplicao: , M)

    FIM

    Programao Estruturada 16

    MTODO PARA CONSTRUO DE ALGORITMOS

    Para a construo de qualquer tipo de algoritmo so necessrios os seguintes passos:

    1. Ler atentamente o anunciado, identificando as partes importantes;

    2. Definir os dados de entrada, que so os dados fornecidos;3. Definir o processamento, atravs de clculos e restries

    utilizando os dados de entrada;4. Definir os dados de sada, que so gerados a partir do

    processamento;5. Construir o algoritmo utilizando um dos tipos de algoritmos;6. Testar o algoritmo realizando simulaes.

  • 9Programao Estruturada 17

    MAIS EXERCCIOS DE FIXAO Criar uma seqncia de passos (algoritmo) de como fritar um

    ovo.

    Criar uma seqncia de passos (algoritmo) de como trocar um pneu de um carro.

    Criar uma seqncia de passos (algoritmo) de como fazer um bolo comum.

    Elabore uma seqncia de passos que mova trs discos de uma torre de Hani, que consiste em trs hastes (a - b - c), uma das quais serve de suporte para trs 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 e nunca pode deixar qualquer disco fora das hastes. O objetivo transferir os trs discos que se encontram na haste 'A' para a haste 'C.

    Programao Estruturada 18

    REFERNCIAS BIBLIOGRFICAS ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene

    Aparecida Veneruchi de. Fundamentos de Programao de Computadores: Algoritmos, Pascal e C/C++. So Paulo: Pearson Prentice Hall, 2002.

    FARRER, Harry; BECKER, Cristiano Gonalves; FARIA, Eduardo Chaves; et. al. Programao Estruturada de Computadores: Algoritmos Estruturados. 3. ed. Rio de Janeiro: LTC Livros Tcnicos e Cientficos Editora S.A., 1999.

    FORBELLONE, Andr Luiz Villar; EBERSPCHER, Henri Frederico. Lgica de Programao: A construo de algoritmos e estruturas de dados. 3. ed. So Paulo: Pearson Prentice Hall, 2005.

    MEDINA, Marco; FERTIG, Cristina. Algoritmos e Programao: Teoria e Prtica. So Paulo: NovatecEditora, 2006.