O Paradigma Estruturado

Um dos problemas no Paradigma Não-Estruturado é que podemos ir de qualquer parte do algoritmo para outra, dificultado o seu entendimento. Para resolver isso, no Paradigma Estruturado são impostas algumas restrições em como o fluxo do algoritmo pode seguir. Essas restrições dão origem às seguintes estruturas:

  • Sequenciais: são as operações elementares que o computador pode realizar em seu nível básico como operações aritméticas, de atribuição, etc. Nesse caso, também levamos em consideração as operações de entrada e saída de dados.
  • De decisão: são as estruturas que permitem o computador desviar, de forma condicional, o fluxo a ser seguido. As mais conhecidas são: “se-então”, “se-então-senão” e “escolha-caso”.
  • De repetição: como o próprio nome diz, são as estruturas que permitem o algoritmo a repetir um conjunto de comandos. Também são chamados de loops ou laços. As mais conhecidas são: “enquanto”, “para”, “faça-enquanto” e “repita-até”.

Em princípio, são nas estruturas de repetição que vemos as restrições acontecendo de fato, pois não podemos “voltar” para qualquer parte do algoritmo de qualquer forma. Por exemplo: na estrutura de repetição “enquanto”, o fluxo sempre volta para o comando de decisão, conforme podemos ver na figura abaixo:

Estrutura "enquanto"

Na estrutura “enquanto” o fluxo sempre volta para a condição.

Uma outra característica das estruturas é que elas criam uma espécie de template ou modelo que podem ser utilizados como se fossem diferentes peças de Lego a serem encaixadas umas nas outras para formar o algoritmo final completo. Por exemplo: a estrutura “escolha-caso” é, na verdade, um conjunto de decisões cujas condições são sempre verificadas em relação a uma mesma variável. A figura abaixo mostra em exemplo disso:

Estrutura "escolha-caso"

Modelo em fluxograma da estrutura “escolha-caso”.

No programa fictício abaixo, é mostrada a mesma situação do fluxograma da imagem anterior, usando a estrutura “escolha-caso”:

[code language=”csharp”]
switch (v)
{
case v1:
/* … */
break;
case v2:
/* … */
break;
case vn:
/* … */
break;
default:
/* … */
break;
}
[/code]

No post Comandos Portugol vs Fluxograma podemos ver uma tabela em que mostro um paralelo entre os comandos do Portugol e a respectiva estrutura feita em fluxograma.

Tendo em vista as restrições impostas pelo Paradigma Estruturado, podemos perceber que, ao desenvolver um algoritmo com as estruturas criadas por essas restrições, ganhamos em:

  • Expressividade no momento de escrever os algoritmos.
  • Clareza no entendimento dos mesmos.

No próximo post iremos ver o que são abstrações e encapsulamento e como eles se relacionam com os paradigmas de programação.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *