Fluxogramas
O diagrama de blocos ou fluxograma é uma forma padronizada e eficaz para representar os passos lógicos de um determinado processamento, indicando as diversas ações e decisões que devem ser executadas para resolver o problema
Utiliza uma seqüência de símbolos indicada por linhas e setas com significados bem definidos
Facilita a visualização gráfica dos passos de um processamento
Fluxogramas
Permitem a tradução da seqüência de execução para qualquer linguagem de programação
Por traduzir em formato gráfico algum procedimento ou norma, é uma ferramenta útil em diversas áreas do conhecimento humano
Na computação, tal propriedade facilita o
entendimento das idéias contidas nos algoritmos, justificando assim sua popularidade
Fluxogramas
Possui sintaxe e semântica bem definidas Sintaxe
Corresponde ao emprego correto de seus elementos
Semântica
Corresponde ao significado dos símbolos utilizados
Cada ação (passo) deve ser descrita de forma clara, sem ambigüidade
Principais Símbolos
Símbolo Nome Função
terminador Representa o início ou o fim do processamento
fluxo Representa o fluxo dos dados ou do controle de execução
processo
Representa uma ação (ou passo)
decisão Representa uma condição a ser avaliada, permitindo duas ou mais alternativas de execução
Principais Símbolos
Símbolo Nome Função
impressão Representa a saída de informações.
conector Representa o conector entre dois fluxogramas contidos ou não na mesma página
Regras do Fluxogramas
Um fluxograma deve ser claro, simples e de fácil leitura
Não deve haver ambigüidade na interpretação
O texto dentro de cada símbolo deve se limitar à instrução a ser executada
Deve-se evitar o cruzamento de linhas para não comprometer o entendimento
Apenas uma linha de fluxo deve partir ou chegar a um terminador ou conector.
Regras do Fluxogramas
Os símbolos de impressão e leitura devem possuir uma linha de fluxo chegando e uma outra saindo
O símbolo de processo admite mais de uma linha de entrada de fluxo e apenas uma linha de saída
Regras do Fluxogramas
O símbolo de decisão admite apenas uma linha de entrada de fluxo, permitindo duas ou três linhas de saída
F V > 0 < 0
Processamento de Fluxo
O fluxograma permite três ordens distintas de execução
Seqüencial
As atividades são executadas uma após a outra
Por seleção
Ocorre quando uma via de processamento é escolhida em um
ponto de bifurcação, de forma que cada via conduz a um processamento distinto
Por repetição
Faz com que a execução ocorra em ciclos de processamento até
Seqüência
Em uma seqüência, é processado um conjunto de ações (passos) em série
Não há qualquer possibilidade de alterar a ordem de processamento das ações
Após processar o 1ª passo, processa-se o 2ª, e assim sucessivamente início fim Passo 1 Passo 2 Passo N
Exemplo de Seqüência
Construir um fluxograma que
descreva os passos para
escovar os dentes
1) Pegar a escova de dente 2) Colocar creme dental 3) Abrir a torneira
4) Escovar os dentes 5) Lavar a escova
6) Fechar a torneira
início
Colocar creme dental
Abrir a torneira
Escovar os dentes
Lavar a escova
Exemplo de Seqüência
Construir um fluxograma
que descreva como
cozinhar o arroz refogado. 1) Lavar o arroz
2) Colocar água para ferver 3) Adicionar óleo a panela
(fritar)
4) Colocar o arroz na panela 5) Adicionar a água
6) Cozinhar até secar
Colocar água para ferver
Adicionar óleo a panela (fritar)
Colocar o arroz na panela
Adicionar a água Lavar o arroz início
Seleção (1 via)
Utiliza o símbolo de decisão para escolher um caminho de processamento a ser seguido
Na seleção (1 via), o passo (ação) somente será processado caso a expressão lógica avaliada for verdadeira
Logo, se a expressão lógica for falsa, nenhuma ação é processada
V
F
Exemplo - Seleção (1 via)
Construir um fluxograma que descreva os passos para escovar os dentes com o uso ou não do fio dental
1) Se tem fio dental, passe-o nos
dentes
2) Pegar a escova de dente 3) Colocar creme dental 4) Abrir a torneira
5) Escovar os dentes
início
Pegar a escova de dente
Colocar creme dental
Abrir a torneira
Escovar os dentes Tem fio
dental?
Passar o fio dental Sim Não
Exemplo - Seleção (1 via)
Construir um fluxograma que descreva os passos para preparar um suco de laranja 1) Lavar as laranjas 2) Partir as laranjas 3) Espremer as laranjas 4) Filtrar o suco 5) Se desejar, adicionar açúcar início Partir as laranjas Lavar as laranjas Espremer as laranjas Filtar o suco Com açúcar? Adicionar açúcar Sim Não
Seleção (2 vias)
Utiliza o símbolo de decisão para escolher uma seqüência de ações a ser executada
O fluxo de processamento segue por uma das duas vias, dependendo do valor lógico (verdadeiro ou falso) da expressão avaliada no início da estrutura
Somente serão executados os passos encontrados na via selecionada
?
Exemplo - Seleção (2 vias)
Construir um fluxograma que verifica se um aluno
foi aprovado em uma
disciplina
1) Obter a nota da 1ª unidade 2) Obter a nota da 2ª unidade 3) Calcular a média
4) Se a média for igual ou
superior a média mínima Informar que foi aprovado Senão início Calcular a média Média obtida ≥ Média mínina ? Sim Aprovado Não Reprovado
Obter a nota da 2ª unidade Obter a nota da 1ª unidade
Exemplo - Seleção (2 vias)
Construir um fluxograma indo para “Balada”
1) Escovar os dentes 2) Se for homem Fazer a barba Senão Depilar as pernas 3) Tomar banho 4) Aplicar desodorante 5) Se for mulher Aplicar maquiagem Aplicar perfume início Escovar os dentes É homem ? Sim Fazer barba Não Depilar as pernas Tomar banho Aplicar desodorante É mulher? Não Sim
Seleção (N vias)
Neste caso, a decisão não é feita com base em uma expressão lógica, porque há mais do que dois resultados possíveis
Como na seleção de 2 vias, só é processada a seqüência de ações encontrada na via selecionada
?
Exemplo - Seleção (N vias)
Uma empresa resolveu aumentar o salários de seus funcionários com base em alguns critérios
Técnicos receberão 25% de aumento
Analistas receberão 20% de aumento Gerentes receberão 15% de aumento E os demais 10% de aumento
É possível elaborar um fluxograma que dado um determinado funcionário, calcule e exibia seu salário ajustado
Exemplo - Seleção (N vias)
1) Obter funcionário 2) Se for técnico Aumentar 25% Se for analista Aumentar 20% Se for gerente Aumentar 15% Senão Aumentar 10%3) Exibir novo salário
início Tipo de funcionário ? Técnico Aumentar 25% Aumentar 20% Analista Aumentar 15% Gerente Aumentar 10% Demais
Exibir novo salário Obter funcionário
Repetição com Teste à Cabeça
Neste caso, também há a necessidade de tomar uma decisão com base no valor lógico de uma expressão
No entanto, a mesma seqüência de ações será
executada repetidamente enquanto o resultado da expressão lógica se mantiver verdadeiro
Um teste com uma expressão lógica precede a ação
Por isso, esse tipo de repetição é chamado repetição com teste à cabeça
Repetição com Teste à Cabeça
O teste é importante porque funciona como uma condição de parada dos ciclos ou repetições
F
V ?
Exemplo - Repetição (Cabeça)
Construir um fluxograma que demonstre os passos
para comer todo um
pacote de biscoito
1) Pegar o pacote
2) Abrir o pacote
3) Se ainda existir biscoito
Pegar um biscoito Comer o biscoito Vá para o passo 3 início fim Abrir o pacote Comer o biscoito Escovar os dentes Não Tem biscoito ? Pegar o pacote Sim Pegar um biscoito
Exemplo - Repetição (Cabeça)
Construir um fluxograma
que demonstre uma
rodada em um bingo
1) Pôr as bolas no globo
2) Se não há vencedor
Girar o globo
Sortear uma bola Vá para o passo 2 Senão
Entregar o prêmio
início
fim
Sortear uma bola Há vencedor ? Pôr as bolas no globo Não Girar o globo Sim Entregar o prêmio
Repetição com Teste à Cauda
Essa estrutura de repetição tem um papel similar a anterior, sendo que a diferença está no fato do teste ser feito após o processamento da seqüência de ações
A seqüência de ações é executada pelo menos uma vez
Como o teste da expressão lógica sucede a seqüência de ações. esse tipo de repetição é chamado repetição com teste à cauda
Exemplo - Repetição (Cauda)
Construir um fluxograma que demonstre os passos
para comer todo um
pacote de biscoito
1) Pegar o pacote
2) Abrir o pacote
3) Pega um biscoito
4) Comer o biscoito
5) Se ainda existir biscoito
Vá para o passo 3 Senão início Pegar o pacote Abrir o pacote Pegar um biscoito Comer o biscoito Escovar os dentes Não Tem biscoito ? Sim
Exemplo - Repetição (Cauda)
Construir um fluxograma
que demonstre uma
rodada em um bingo
1) Pôr as bolas no globo
2) Girar o globo
3) Sortear uma bola
4) Se não há vencedor Vá para o passo 2 Senão Entregar o prêmio início Pôr as bolas no globo Girar o globo
Sortear uma bola
Entregar o prêmio Sim
Há vencedor ?
Exercícios
1) Construir o fluxograma com os passos necessários para troca de um pneu furado em um carro
2) Construir um fluxograma que informe se um aluno foi aprovado, reprovado ou fará uma nova avaliação (recuperação) em uma determinada disciplina, sabendo que:
a) A média é calculada em cima de três notas;
b) O aluno será reprovado se sua média for menor que 5,0;
c) O aluno será aprovado se sua média for igual ou superior a 7,0; d) O aluno fará uma nova avaliação (recuperação) caso sua média
Exercícios
3) O inciso XXXIII do artigo 7º da constituição federal diz o seguinte: “É proibido o trabalho noturno, perigoso ou
insalubre a menores de dezoito e de qualquer trabalho a menores de dezesseis anos, salvo na condição de aprendiz, a partir de quatorze anos”.
Elaborar um fluxograma que, obtida a idade de um certo indivíduo, exibida qual o tipo de trabalho que o mesmo pode exercer.
Exercícios
4) Criar o fluxograma que simule várias partidas de bingo
5) Zezinho, um “surfista de carteirinha”, não perde um domingo de praia. Porém, existem duas condições necessárias para que ele vá à praia. Uma delas é que tem que ser até às 10:00 horas e a outra é que não pode está chovendo. Não atendidas essas condições, Zezinho vai estudar. Sendo assim, construir um fluxograma que represente os passos que Zezinho realiza ao acordar até ir ou não à praia aos domingos