TA 345/531 TP 257 Informática Aplicada à Engenharia de Alimentos.
TÉCNICA DA ELABORAÇÃO DE PROGRAMAS ESTRUTURADOS
Antecedentes
A realização de um programa pode ser feita de forma intuitiva, colocando a seqüência de passos, um a um, conforme vão aparecendo e colocando os desvios necessários quando isto for indispensável. As linguagens de programação denominadas interpretadores permitem isso. Tal é caso da linguagem Basic, adequada para iniciantes. Nos interpretadores não é necessário que o programa inteiro este totalmente terminado e depurado para poder rodar (que é o caso das linguagens denominadas compiladores). Esta abordagem de "ir fazendo" é viável apenas para programas simples.
O interpretador lê o programa e executa comando após comando, até que encontre um erro, após o qual pára, mostrando a linha onde o erro foi encontrado. É possível ver parte do programa funcionando e mostrando resultados, mesmo sem estar completo.
Quando os programas são grandes e complicados, a abordagem intuitiva falha, não se consegue visualizar o que o programa faz quando se lê a listagem do programa. O programador pode-se confundir "num emaranhado de desvios incondicionais (gotos)". As dificuldades de entendimento do programa aumentam exponencialmente com o tamanho do programa e o tempo dedicado a sua elaboração. Sobretudo, quando não se faz a documentação do mesmo.
Para resolver este tipo de situações, às vezes de difícil solução (os pequenos dramas dos programadores novatos), foi desenvolvida a técnica denominada Programação Estruturada. E foram criadas linguagens orientadas a este tipo de programação, as chamadas linguagens estruturadas, como os compiladores Pascal e C.
Tanto a nova técnica quanto as linguagens tiveram um sucesso arrasador, o que obrigou as firmas responsáveis pelas linguagens ultrapassadas a desenvolver novas versões que permitiam oferecer aos usuários as mesmas vantagens que as linguagens de programação estruturada ofereciam:
ALGORITMO - FLUXOGRAMA - LISTAGEM DE CÓDIGO FONTE
A Programação Estruturada é uma técnica de programação que permite estabelecer uma correspondência perfeita entre o algoritmo, o diagrama de programação (fluxograma) e a listagem de um programa.
O algoritmo mostra a seqüência de passos de processamento, em prosa. Pode ser chamado também de pseudo-código.
O fluxograma permite visualizar os caminhos ("fluxos") e as etapas de processamento de dados possíveis (e dentro destas os passos da programação).
A listagem de um programa antigamente era oculta, feita em código binário. Hoje a listagem das instruções usadas no programa é feita em texto ASCII ou ANSI, para facilitar a sua portabilidade entre máquinas diferentes e permitir a revisão e contínua renovação do programa.
POSSIBILIDADES PARA O FLUXO DE INFORMAÇÃO
Os dados podem:
|
|
|
|
||
| SEQUÊNCIA | BIFURCAÇÃO (SELEÇÃO) | LAÇO CONTADO (PREFIXADO) | LAÇO NÃO PREFIXADO | ||
PROGRAMA CLÁSSICO
|
SEQÜÊNCIA COM CONEXÕES
|
|
| Página 1 | Página 2 |

PROGRAMAÇÃO ESTRUTURADA:
DUAS TÉCNICAS INOVADORAS:
O DESENHO DESCENDENTE E - A SEGMENTAÇÃO EM MÓDULOS:
O desenho descendente permite apresentar um módulo ou função principal bastante enxuto (5-25 linhas), que articula de forma seqüencial, um certo número de blocos lógicos denominados simplesmente módulos ou funções que podemos classificar em módulos periféricos, auxiliares e mínimos.
Estes módulos periféricos podem (devem) representar processos complexos de tratamento de dados.
Os módulos periféricos podem conter outros módulos auxiliares, cujo campo seria apenas o módulo.
Pode-se projetar módulos mínimos (utilitários) para serem usados por diversos outros.
VANTAGENS DO USO DO DESENHO DESCENDENTE E A SEGMENTAÇÃO EM MÓDULOS:
DESENHO DESCENDENTE
Módulo principal com módulos operacionais |
Decomposição de um módulo operacional em sub-módulos e em módulos mínimos |
Módulo mínimo com código básico |
|
||
OUTRA FORMA DE VER A PROGRAMAÇÃO

|
DIAGRAMAS DAS POSSIBILIDADES DO FLUXO DA INFORMAÇÃO
SEQUÊNCIA LINEAR SIMPLES

ESTRUTURAS DE CONTROLE
BIFURCAÇÕES (Desvio Condicional)
Alternativa simples

Alternativa dupla

Alternativa tripla parcial

Alternativa tripla completa

Opção multipla

OUTRA FORMA DA ALTERNATIVA MÚLTIPLA (Apenas um caminho é usado)

LAÇOS DE PROCESSAMENTO COM REPETIÇÃO
(1) LAÇO WHILE Se o teste indica que a condição se cumpre, então faça o laço (tarefa). |
|
|
|
(2) LAÇO DO WHILE Faça o laço (e as tarefas) até que o teste indique que a condição se cumpriu |
|
Laço de repetição indeterminada com teste intermediário para forçar saída antecipada de um laço que pode ser "infinito" ou muito demorado na execução total.
|
|
(3) LAÇO FOR com número determinado de repetições (realiza a tarefa "n" vezes).
|
|
for (expressão1;expressão2;expressão3) instrução
expressão de inicialização expressão para teste de condição expressão de incremento |
Exemplos de fluxogramas |
Ir para o topo da Página |
Ir para o Menu das Aulas |
|---|