This is an old revision of the document!


Algoritmos e fluxogramas

Um algoritmo é geralmente descrito como uma receita, ou um conjunto de regras ou instruções passo-a-passo, para executar uma dada tarefa ou alcançar uma solução para um problema específico. Um fluxograma é um método de representação gráfico de um algoritmo. O fluxograma recorre a elementos gráficos como caixas, quadrados, círculos e setas que representão a ligação entre os vários elementos e o fluxo de controlo do próprio algoritmo. Cada um destes elementos, representa uma única instrução no conjunto de instruções que compõem um algoritmo.

Elementos de um fluxograma:

Início

Círculo.

Fim

Círculo preenchido no interior de outro círculo maior.

Ação ou expressão

Retângulo. Dentro do retângulo está o nome da instrução, tarefa, sub-rotina ou uma pequena descrição da ação a executar. Tarefas e instruções similares são podem ser agregadas numa única ação genérica.

Sequência

Seta, aponta para a próxima instrução.

Condição / Decisão

“Diamante” (losângulo). Dentro do losângulo encontra-se uma expressão lógica de onde geralmente partem duas setas distintas. Uma delas resulta no fato da expressão lógica ser Verdade (Sim / 1), a outra no caso de a expressão lógica ter resultado Falso (Não / 1). Cada uma destas setas deve ser identificada com o respetivo resultado da expressão que se pretende representar. Em alguns casos particulares, uma única seta pode ser utilizada num bloco de condição/decisão (losângulo), nesse caso a expressão lógica apresenta claramente apenas uma possível solução, por exemplo Verdadeiro. Este é o caso do ciclo interminável que é usado como controlo de fluxo de um programa (tópico que será abordado mais adiante - while true).

 

Fluxo de dados

Trapezóide. No interior do trapezóide encontra-se a descrição de uma tarefa. Em robótica é geralmente utilizado, por exemplo, para representar a comunicação de dados entre valores de um sensor e o utilizador. Para termos de simplificação, geralmente também é utilizado o elemento retangular já antes descrito, em vez de o tradicional trapézio.

Exemplos

Para a construção de fluxogramas, são muitas vezes utilizadas programas da suite de Office comuns, como o MS Word ou o MS Excel ou OpenOffice/LibreOffice Writer ou Calc. Mas existem outros programas específicos para estas tarefas que nos permitem obter melhores resultados, é o caso do MS Visio, OpenOffice/LibreOffice Draw, Google Draw ou qualquer outro tipo de software destinado a esta tarefa.

Flowcharts describing microcontroller software usually do not have ends, instead whole main activity in an endless cycle. The exit condition of the endless cycle will never be true and therefore this is the case where condition block (diamond) can be represented only on exiting arrow. Condition it self can be notes simply True or 1. Creating diagrams it is important to keep in eye on the fact that if the program has forks, it can be done only through the diamond object. Junctions (two arrows are joining) can be described by special symbol, but in simple cases, one may simply have an arrow point to another arrow instead.

 
Following examples illustrate the use of flowchart elements for describing simple algorithm. First example is simple routine by describing one way flow without any cycle or decision points.

 
Following example describes a system which detects 1 m area and if an object entering into inspected area an alarm is triggered for a 10 seconds. Alarm is working until the object is left from the inspected area.

pt/programming/algorithms.1414074604.txt.gz · Last modified: 2020/07/20 09:00 (external edit)
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0