TÉCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

Embed Size (px)

Citation preview

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    1/20

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    2/20

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    3/20

    Responsvel pelo Contedo:

    Prof. Esp. Alexander Gobbato Albuquerque

    Reviso Textual:

    Profa. Esp. Mrcia Ota

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    4/20

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    5/20

    5

    Para obter um bom aproveitamento nesta unidade vamos conferir a estrutura desta unidade:

    No Contedo Terico:voc encontrar o material principal de estudos na forma de textoescrito. Voc tambm poder ampliar seus conhecimentoscom Material Complementar eReferncias Bibliogrficas.

    Atividade de Sistematizao:os exerccios disponibilizados so de autocorreo e visam

    que voc pratique o que aprendeu na disciplina e que identifique os pontos em que precisaprestar mais ateno, ou pedir esclarecimentos a seu tutor. Alm disso, as notas atribudas aosexerccios sero parte de sua mdia final na disciplina.

    Nomenclaturas

    Lgica aplicada no desenvolvimentode softwares ou programas

    Lgica

    Nesta unidade estudaremos os conceitos bsicos para a criao dealgoritmos, entenderemos o conceito de lgica aplicada a programase utilizaremos pensamento crtico, operacional e lgico, atravs demodelos de representao de algoritmos.

    Simbologia

    Resoluo de problemas

    Simbologia especiais

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    6/20

    6

    Atividade de Aprofundamento: uma atividade dissertativa ou de pesquisa.

    Vdeoaula: Sero apresentadas algumas ferramentas na prtica e tambm a resoluo dealguns exerccios de forma prtica.

    Uma ltima recomendao, caso tenha problemas para acessar algum item da

    disciplina, ou dvidas com relao ao contedo, no deixe de entrar em contato com seuprofessor tutor atravs do boto mensagens ou fruns.

    Pela definio do dicionrio Aurlio, a lgica a sequncia coerente, regular enecessrio de acontecimentos, de coisa ou fatos, ou at mesmo, que a maneira do raciocnioparticular que cabe a um indivduo ou a um grupo, ento podemos dizer que lgica acincia que estuda as leis e critrios de validade que regem o pensamento e a demonstrao,ou seja, cincia dos princpios formais do raciocnio.

    Ateno

    Lembramos a voc da importncia de realizar todas as atividades propostas dentro do prazoestabelecido para cada Unidade, dessa forma, voc evitar que o contedo se acumule e que voctenha problemas ao final do semestre.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    7/20

    7

    Para os profissionais da rea de tecnologia, o uso da lgica um fator importante a serconsiderado, porque a todo tempo os programadores e analistas e precisam resolverproblemas do seu cotidiano, saber lidar com problemas de ordem administrativa de controle,de planejamento e estratgia requer ateno e boa tcnica para representar esses problemas.

    Muitos desenvolvedores desenham o processo do programa antes dodesenvolvimento do cdigo, esse desenhar seriam as etapas que o programa deveria realizar euma forma testar os pontos chaves do programa verificando se no existe nenhum erro delgica de programao. Esses desenhos so chamados de diagramas de blocos que aps aconcluso poder ser interpretado por qualquer desenvolvedor e ser desenvolvido em

    qualquer linguagem disponvel no mercado.A tcnica mais importante no projeto da lgica de programas denomina-se programaoestruturada, a qual consiste em uma metodologia de projeto objetivando

    Agilizar a codificao da escrita da programao Facilitar a depurao da sua leitura Permitir a verificao de possveis falhas apresentadas pelos programas

    E deve ser composta por quatro passos fundamentais:

    Facilitar as alteraes e atualizaes dos programas Escrever as instrues em sequncia ligadas entre si apenas por estruturas sequencias,

    repetitivas ou de seleo Escrever instrues em grupos pequenos e combin-las Distribuir mdulos do programa entre os diferentes programadores que trabalharo

    sobre a superviso de um programador snior ou chefe.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    8/20

    8

    Muitos profissionais utilizam a linguagem para denominao de smbolos querepresentam a linha de raciocnio lgico de fluxogramas, diagramas de blocos e algoritmos,

    vejam a definio de cada um:

    Fluxograma: ferramenta utilizada pelos profissionais de anlise de sistemas paradescrever o fluxo de ao de uma atividade automatizada ou manual. Usa smbolosdenominados pela norma ISO 5807:1985, representado por alguns desenhos geomtricos.

    Diagrama de blocos: tambm conhecido como diagrama de fluxo (diferente defluxograma), uma ferramenta utilizada pelo programador, onde o objetivo do uso dessaferramenta descrever o mtodo e a sequncia de aes ou eventos a serem executadas pelo

    computador. Tambm utilizada diversas formas geomtricas para representar as atividades,esses smbolos so conhecidos mundialmente e definidos pela norma ISO 5807:1985(E), apsa criao do diagrama de blocos a prxima etapa seria a codificao do programa nalinguagem escolhida pelo programador.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    9/20

    9

    Algoritmo:conjunto de regras formais que sero utilizados para a resoluo

    do problema, nessa soluo pode-se dizer que esto embutidos as frmulasde expresses aritmticas.

    Os algoritmos pode ser representado por meio da escrita ou representado por meio deformas geomtricas, resumindo o algoritmo pode ser definido como a resoluo do problemae transformando esse problema em um programa que seja possvel de ser executado por um

    programador.

    A forma de representao grfica, segundo ISO 5807:1985 uma forma de representaros dados e os procedimentos a serem executados por um programa a partir da linha de

    raciocnio lgico de um programador para demonstrar o resultado final de um programa.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    10/20

    10

    Smbolo utilizado como ponto para indicar o incioe/ou fim do fluxo de um programa

    Permiti indicar o sentido do fluxo de dados. Serveexclusivamente para conectar os smbolos oublocos existentes

    Smbolo ou bloco que esse utiliza para indicar

    clculos a efetuar, atribuies de valores ouqualquer manipulao de dados que tenha umbloco especfico para sua descrio

    Utilizado para ler os dados necessrios aoprograma fora da linha sem interveno dedispositivos mecnicos

    Mostrar dados na tela do vdeo

    Mostrar dados na impressora

    Indica deciso que deve ser tomada, indicando apossibilidade de desvios para diversos outrospontos do fluxo

    Utilizado para particionar o diagrama.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    11/20

    11

    Display para informaes exibidas pordispositivos visuais, vdeo ou monitor.

    Operao manual fora de linha seminterveno de dispositivos

    Carto perfurado todas as variedadesapresentadas. Essa massa de cartes pode ser

    usada com documentos escritos anteriormente Preparao refere a um determinado grpo de

    operaes no includas na diagramao, bemcomo na elaborao de uma chave quemodificar a execuo de um determinadoprograma.

    Teclado informao inserida via teclado

    Disco magntico memria de massa paraarmazenamento de dados.

    Fita magntica

    Para que um diagrama de blocos seja desenvolvido de forma correta, deve-se levar emconsiderao como procedimentos prioritrios as seguintes regras:

    Diagrama de blocos devem ser feitos e quebrados em vrios nveis Para o desenvolvimento correto de um diagrama de bloco, ele deve ser iniciado de

    cima para baixo No se deve em hiptese alguma ocorrer cruzamentos de linhas de fluxo de dados

    entre os smbolos

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    12/20

    12

    Os diagramas de blocos podem ser representados de vrias formas e isso no impedeque a soluo seja entregue e sem erros, vejamos alguns exemplos.

    Linear

    A tcnica linear conhecida como um modelo tradicional de desenvolvimento eresoluo de problemas.

    Estruturada

    Essa tcnica mais utilizada pelos profissionais de processamento de dados. Asequencia, a seleo e a iterao so as trs estruturas bsicas para a construo do diagramade bloco.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    13/20

    13

    Modular

    A tcnica da lgica modular deve ser elaborada como uma estrutura de partesindependentes, denominadas de mdulos, cujo procedimento controlado por um conjuntode regras.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    14/20

    14

    Portugus estruturado

    Essa tcnica baseada no Program Design Language PDL, onde a liguagem apresentada e codificada na lngua portuguesa, ela foi desenvolvida com o propsito de serum ferramenta comercial que poderia se utilizada com qualquer linguagem, por ser um escritadidtica comeou a ser utilizada para o ensino de programao, exemplo:

    Programa MDIAVar

    Resultado: caractereN1, N2, N3, N4: realSOMA, MDIA: real

    InicioLeia N1, N2, N3, N4SOMA = N1 + N2 + N3 + N4MDIA = SOMA / 4SE (MDIA>=6) ENTO

    RESULTADO = APROVADOSENO

    RESULTADO = REPROVADOFIM_SEEscreva Nota 1: , N1Escreva Nota 2: , N2Escreva Nota 3: , N3Escreva Nota 4: , N4Escreva Soma: , SOMAEscreva Mdia: , MDIAEscreva Resultado: , RESULTADO

    fim

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    15/20

    15

    Explore

    Para complementar seus estudos indico a leitura do livro abaixo:

    WIRTH, N. Algoritmos e Estruturas de Dados.Rio de Janeiro: Ltc-Livros Tcnicos eCientficos, 1999.

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    16/20

    16

    FARRER, H. Algoritmos Estruturados. 3. ed. Rio de Janeiro: Ltc-Livros Tcnicos eCientficos, 1999.

    FORBELLONE, A. L. V.; EBERSPACHER, H. F. Logica de Programacao: A Construcaode Algoritmos e Estrutura de Dados.3. ed. Sao Paulo: Pearson Prentice Hall, 2008.

    OLIVEIRA, J. F e MANZANO, J. A. N. G., Algoritmos Lgica para desenvolvimentode programao de computadores. Ver o contedo de Parte II Tcnicas Bsica deProgramao - Captulo 3 Tipo de Dados e Instrues Primitivas

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    17/20

    17

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

    _________________________________________________________________________________

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    18/20

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    19/20

  • 7/24/2019 TCNICAS DE DESENVOLVIMENTO DE ALGORITMOS 1.pdf

    20/20