This is an old revision of the document!
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:
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.
“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).
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.
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.