10 de maio de 2016

Algoritmo - Fluxograma e pseudocódigo

Fluxograma e pseudocódigo


Fluxogramas e pseudocódigos são formas simples e diagramadas de código pronto. O objetivo de um fluxograma ou pseudocódigo é mostrar de antemão a lógica usada na solução de um problema (algoritmo).


Pseudocódigo


O pseudocódigo é um código simplório, ou seja, não é um código real, mas um código imaginário que lembra o código de programação.
O pseudocódigo é muito utilizado em cursos de programação e faculdades para apresentar a lógica algorítmica de forma mais simples, sem ter que se preocupar muito com o aspecto técnico das linguagens reais.
O pseudocódigo não segue um padrão definido, portanto, qualquer um pode escrever seu pseudocódigo da forma que bem entender desde que ele transmita a idéia central da lógica da programação. Por exemplo, abaixo estão dois pseudocódigos que descrevem o mesmo algoritmo:
pseudocódigo 1
INICIO
    entrada de dado : grava em VAR1
    verificar var1 : letra ?
        verdade : imprimir dado -> "Você digitou uma letra"
        falso : imprimir dado -> "Você digitou um número"
FIM
pseudocódigo 2
INICIO: procedimento
    VARIÁVEIS var1
    var1 <- entrada de dados:TECLADO
    se (var1 É letra) então
        imprimir dado:MONITOR -> "Você digitou uma letra"
    caso contrário
        imprimir dado:MONITOR -> "Você digitou um número"
FIM: procedimento
Como podemos ver, ambos lembram a forma de programar, mas nenhum dos dois são linguagens de programação reais. Porém, dessa forma evidencia seu maior ponto fraco que é a falta de portabilidade. Como qualquer um pode criar se próprio código, nem sempre o outro entenderá.


Fluxograma


Fluxogramas têm o mesmo objetivo dos pseudocódigos, a única diferença é que os fluxogramas são representações gráficas.
A vantagem principal dos fluxogramas é que, diferentemente dos pseudocódigos, eles são padronizados. Ou seja, cada símbolo representa uma ação específica e sempre representará.
Um fluxograma usa linhas para ligar seus elementos, criando assim, um caminho que deve ser seguido.
Abaixo está uma tabela com as representações do fluxograma e o que são.
fluxograma: processofluxograma: processo alternativofluxograma: decisãofluxograma: dados
ProcessoProcesso AlternativoDecisãoDados
fluxograma: processo pré-definidofluxograma: armazenamento internofluxograma: documentofluxograma: vários documentos
Processo Pré-definidoArmazenamento InternoDocumentoVários Documentos
fluxograma: terminaçãofluxograma: preparaçãofluxograma: entrada manualfluxograma: operação manual
TerminaçãoPreparaçãoEntrada ManualOperação Manual
fluxograma: conectorfluxograma: conector fora de páginafluxograma: cartãofluxograma: fita perfurada
ConectorConector Fora de PáginaCartãoFita Perfurada
fluxograma: somadorfluxograma: oufluxograma: agruparfluxograma: classificar
SomadorOuAgruparClassificar
fluxograma: extrairfluxograma: mesclarfluxograma: dados armazenadosfluxograma: atraso
ExtrairMesclarDados ArmazenadosAtraso
fluxograma: armazenamento de acesso sequencialfluxograma: disco magnéticofluxograma: armazenamento de acesso diretofluxograma: exibir
Armazenamento de Acesso SequencialDisco MagnéticoArmazenamento de Acesso DiretoExibir
Apesar do número de representações assustar a princípio, a maior parte das representações são utilizadas raramente ou não são utilizadas. Por exemplo, nós raramente - o mais provável é que nunca - utilizaremos o símbolo fita perfurada, porque não são mais utilizadas aplicações que realmente necessitem de entrada de dados por fita perfurada como ocorria há 20 ou 30 anos atrás. Porém, outros são utilizados com muito mais frequência como o exibir, entrada manual, processo e assim por diante.
Outra vantagem que os fluxogramas têm em relação aos pseudocódigos é que existem programas que reproduzem essas representações de forma simples e intuitiva como, por exemplo, o Microsoft Visio, o BizAgi Modeler e o open source Star UML.
Então, vejamos abaixo a representação do pseudocódigo já utilizado nesta página no formato de fluxograma.
fluxograma de um algoritmo