2.1 – Princípios de Resolução de Problemas
Primeiramente, é importante entender a palavra “problema”. Pode-se dizer que problema é uma proposta
duvidosa, que pode ter numerosas soluções, ou questão não solvida e que é objeto de discussão, segundo
definição encontrada no dicionário Aurélio.
Do ponto de vista deste trabalho, problema é uma questão que foge a uma determinada regra, ou melhor, é
o desvio de um percurso, o qual impede de atingir um determinado objetivo com eficiência e eficácia.
Diferente das diagramações clássicas, que não fornecem grandes subsídios para análise, os diagramas de
blocos são realmente o melhor instrumento para avaliação do problema do fluxo de informações de um
dado sistema. Por esse motivo deve-se resolver um problema de lógica (principalmente se for da área de
processamento eletrônico de dados) usando um procedimento de desenvolvimento.
Para desenvolver um diagrama correto, deve-se considerar como procedimentos prioritários os itens
seguintes:
- Os diagramas devem ser feitos e quebrados em vários níveis.
- Os primeiros devem conter apenas
as ideias gerais, deixando para as etapas posteriores os detalhamentos necessários;
- Para o desenvolvimento correto de um fluxograma, sempre que possível, deve ser desenvolvido de
cima para baixo e da esquerda para direita;
- É incorreto e “proibido” ocorrer cruzamento das linhas de fluxo de dados
Tomo como exemplo uma escola qualquer, cujo cálculo da média é realizado com as quatro notas
bimestrais que determinam a aprovação ou reprovação dos seus alunos. Considere ainda que o valor da
média deve ser maior ou igual a 7 para que haja aprovação. A primeira etapa deste problema via diagrama
de blocos está na figura a seguir.
Diagrama de bloco para cálculo de média escolar
A segunda etapa apresenta um detalhamento no que se refere à entrada e saída, ou seja, deve-se entrar
com as quatro notas bimestrais para se obter, como resultado, o cálculo da média e assim definir a
aprovação ou reprovação do aluno. A figura a seguir apresenta o diagrama de blocos com mais detalhes.
Diagrama apresentando a entrada das notas e a saída se houver aprovação.
A terceira etapa consiste em trabalhar o termo “determinar a aprovação”. Para ser possível determinar algo,
é necessário estabelecer uma condição. Assim sendo, uma condição envolve uma decisão a ser tomada
segundo um determinado resultado. No caso, a média. Desta forma, a condição de aprovação: média maior
ou igual a 7, deve ser considera no algoritmo.
Uso de uma condição em um diagrama de blocos
Muitas vezes é preferível construir o diagrama de blocos trabalhando com variáveis. Este assunto será
estudado mais adiante. A figura a seguir apresenta um exemplo de um algoritmo utilizando variáveis.
2.2 - Particularidades entre Lógicas
As representações gráficas de um diagrama de blocos podem ser feitas de várias maneiras e possuírem
estruturas diferenciadas, porém isto não impede que a maneira de solucionar o problema seja eficiente.
Segundo Verzello nos diz em uma de suas obras, assim como um arquiteto desenha e escreve especificações para descrever como uma tarefa (por exemplo, construção de um edifício) deverá ser
efetuada e o engenheiro do projeto desenvolve um esquema detalhado das atividades de construção, um
especialista em informação desenvolve um plano, que será comunicado a outros, de como o problema de
processamento de dados deve ser resolvido.
Para auxiliarmos na sua compreensão, mostraremos como estes conceitos de estruturas, bem como as
particularidades de conexões e dos procedimentos entre o método lógico, encaixam-se ou não na resolução
dos problemas de processamento de dados.
2.2.1 Linear
A técnica lógica linear é conhecida como um modelo tradicional de desenvolvimento e resolução de um
problema. Não está ligada a regras de hierarquia ou de estruturas de linguagens específicas de
programação de computadores. Devemos entender que este tipo de procedimento está voltado à técnica
matemática, a qual permite determinar a atribuição de recursos limitados, utilizando uma coleção de
elementos organizados ou ordenados por uma só propriedade, de tal forma que cada um deles seja
executado passo a passo de cima para baixo, em que tenha um só “predecessor” e um só “sucessor”. A
próxima figura apresenta um exemplo deste tipo de lógica.
Exemplo de lógica linear
2.2.2 - Estruturada
A técnica da lógica estruturada é a mais usada pelos profissionais de processamento eletrônico de dados.
Possui características e padrões particulares, os quais diferem dos modelos das linguagens elaboradas por
seus fabricantes. Tem como pontos fortes para elaboração futura de um programa, produzi-lo com alta
qualidade e baixo custo.
A sequência, a seleção e a iteração são as três estruturas básicas para a construção do diagrama de
blocos. A figura seguinte apresenta um exemplo do tipo de lógica estruturada.
Exemplo de lógica estruturada
2.2.3 - Modular
A técnica da lógica modular deve ser elaborada como uma estrutura de partes independentes, denominada
de módulos, cujo procedimento é controlado por um conjunto de regras. Segundo James Martin, suas metas
são as seguintes:
- Decompor um diagrama em partes independentes;
- Dividir um problema complexo em problemas menores e mais simples;
- Verificar a correção de um módulo de blocos, independentemente de sua utilização como uma
unidade em um processo maior.
A modularização deve ser desenvolvida, se possível, em diferentes níveis. Poderá ser utilizada para separar
um problema em sistemas, um sistema em programas e um programa em módulos. A figura seguinte
apresenta um exemplo do tipo de lógica modular.
Exemplo de lógica modular
2.2.4 - Diagrama de Chapin
O diagrama foi desenvolvido por Nassi e Shneiderman e ampliado por Ned Chapin, os quais resolveram
substituir o diagrama de blocos tradicional por um diagrama de quadros que permite apresentar uma visão
hierárquica e estruturada da lógica do problema. A grande vantagem de usar este tipo de diagrama é a
representação das estruturas que tem um ponto de entrada e um ponto de saída e são compostos pelas
estruturas básicas de controle de sequência, seleção e repetição. Enquanto é difícil mostrar o embutimento
e a recursividade com o diagrama de blocos tradicional, torna-se mais simples mostrá-los com o diagrama
de Chapin, bem como codifica-los futuramente na conversão de pseudocódigos (português estruturado) ou
qualquer linguagem de programação estruturada. A figura seguinte apresenta um exemplo do tipo de
diagrama de Chapin para o algoritmo do cálculo da média escolar. Este tipo de diagrama também é
denominado diagrama de Shneiderman ou diagrama N-S.
Exemplo de diagrama de Chapin
2.2.5 - Português Estruturado
Como foi visto até agora, o diagrama de blocos é a primeira forma de notação gráfica, mas existe outra, que
é uma técnica narrativa denominada pseudocódigo, também conhecida com português estruturado ou
chamada por alguns de portugol.
Esta técnica de algoritmização é baseada em uma PDL – Program Design Language (Linguagem de Projeto
de Programação). Neste trabalho, estamos apresentando-a em português. A forma original de escrita é
conhecida como inglês estruturado, muito parecida com a notação da linguagem PASCAL. A PDL (neste
caso, o português estruturado) é usado como referência genérica para uma linguagem de projeto de
programação, tendo como finalidade mostrar uma notação para elaboração de algoritmos, os quais serão
utilizados na definição, criação e desenvolvimento em uma linguagem computacional (Cobol, Fortran, C,
Pascal, Delphi, Visual-Basic, etc.). A seguir vemos um exemplo deste tipo de algoritmo.
Comentários
Postar um comentário