Baixe o app para aproveitar ainda mais
Prévia do material em texto
12/02/2014 1 Conceito de Fluxogramas e Sequenciamento de Ações Prof. Thiers Sousa thiers.sousa@gmail.com 2014 Thiers SousaIntrodução a Programação WEB Fluxogramas •O que são 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 um problema •Utiliza uma sequência de símbolos indicada por linhas e setas com significados bem definidos •Facilita a visualização gráfica dos passos de um processamento 12/02/2014 2 Thiers SousaIntrodução a Programação WEB Fluxogramas •Permitem a tradução da sequência de execução para qualquer linguagem de programação •Por traduzir em formato gráfico algum procedimento ou normal, é uma ferramenta útil em diversas áreas do conhecimento humano •Na computação, tal propriedade facilita o entendimento de ideias contidas nos algoritmos, justificando assim sua popularidade Thiers SousaIntrodução a Programação WEB Principais Símbolos 12/02/2014 3 Thiers SousaIntrodução a Programação WEB Principais Símbolos Thiers SousaIntrodução a Programação WEB Regras de um fluxograma •Um fluxograma deve ser claro, simples e de fácil leitura •Não deve haver ambiguidade na interpretação •O texto dentro de cada símbolo deve se limitar a instrução 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 12/02/2014 4 Thiers SousaIntrodução a Programação WEB Regras do Fluxograma •Os símbolos de impressão e leitura devem possuir uma linha de fluxo chegando e outra saindo •O símbolo de processo admite que mais de uma linha de entrada de fluxo e apenas uma linha de saída Thiers SousaIntrodução a Programação WEB Regras do Fluxograma •O símbolo de decisão admite apenas uma linha de entrada de fluxo, permitindo duas ou três linhas de saída 12/02/2014 5 Thiers SousaIntrodução a Programação WEB Processamento de Fluxo •O Fluxo permite três ordens distintas de execução •Sequencial •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é atingirem uma condição de finalização Thiers SousaIntrodução a Programação WEB Sequência •Em uma sequencia, é 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 Passo 2 Passo 1 Passo N Início Fim 12/02/2014 6 Thiers SousaIntrodução a Programação WEB Exemplo de Sequê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 Pegar escova de dente Início Colocar creme dental Abrir a torneira Escovar os dentes Lavar a escova Fechar a torneira Fim Thiers SousaIntrodução a Programação WEB Exemplo de Sequência •Construir um fluxograma que descreva os passos para trocar uma lâmpada 1. Pegar uma lâmpada nova 2. Pegar uma escada 3. Posicionar a escada abaixo da lâmpada queimada 4. Subir na escada com a lâmpada nova na mão 5. Retirar a lâmpada queimada 6. Colocar a lâmpada nova 7. Descer da escada 8. Testar o interruptor 9. Guardar a escada 10. Jogar a lâmpada velha no lixo Pegar uma lâmpada nova Início Pegar uma escada Posicionar a escada Subir na escada Retirar a lâmpada Colocar a lâmpada nova Descer a escada Testar o interruptor Guardar a escada Jogar a lâmpada no lixoFim 12/02/2014 7 Thiers SousaIntrodução a Programação WEB 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 Thiers SousaIntrodução a Programação WEB Exemplo Seleção (1 Via) •Construir um fluxograma que descreva os passos para escovar os dentes 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 6. Lavar a escova 7. Fechar a torneira 12/02/2014 8 Thiers SousaIntrodução a Programação WEB Exemplo – Seleção (1 Via) Pegar escova de dente Colocar creme dental Abrir a torneira Escovar os dentes Lavar a escova Fechar a torneira Fim Início Tem Fio dental ? Passar fio dental V F Thiers SousaIntrodução a Programação WEB 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 colocar açúcar 12/02/2014 9 Thiers SousaIntrodução a Programação WEB Exemplo – Seleção (1 Via) Lavar as laranjas Partir as laranjas Espremer as laranjas Filtrar o suco Fim Início Com Açúca r? Adicionar Açúcar V F Thiers SousaIntrodução a Programação WEB Seleção duas vias •Utiliza o símbolo de decisão para escolher uma sequencia 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 VF 12/02/2014 10 Thiers SousaIntrodução a Programação WEB Exemplo – Seleção (1 Via) •Construir um fluxograma que verifica se um aluno foi aprovado na 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 maior ou igual a média mínima Foi aprovado Senão Foi Reprovado Thiers SousaIntrodução a Programação WEB Exemplo – Seleção (2 Vias) Início Obter 1ª Nota Obter 2ª Nota Calcular Média Média >= média Mínima Aprovad o VFReprovado Fim 12/02/2014 11 Thiers SousaIntrodução a Programação WEB Exemplo – Seleção (2 Vias) •Construir um fluxograma para indicar qual dentre dois números lidos é o maior; Thiers SousaIntrodução a Programação WEB 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 sequência de ações encontradas na via selecionada 12/02/2014 12 Thiers SousaIntrodução a Programação WEB Exemplo – Seleção N Vias •Uma empresa resolveu aumentar os 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 exiba seu salário ajustado Thiers SousaIntrodução a Programação WEB Exemplo – Seleção N Vias 1. Obter tipo 2. Obter salário 3. Se for técnico Aumentar 25% Se for analista Aumentar 20% Se for gerente Aumentar 15% Senão Aumentar 10% 4. Exibir o salário 12/02/2014 13 Thiers SousaIntrodução a Programação WEB Exemplo – Seleção N Vias Thiers SousaIntrodução a Programação WEB Repetição com teste à cabeça •Neste caso, tambémhá necessidade de tomar uma decisão com base no valor lógico de uma expressão •No entanto, a mesma sequê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 relação é chamado repetição com teste à cabeça 12/02/2014 14 Thiers SousaIntrodução a Programação WEB Repetição com teste à cabeça •O teste é importante porque funciona como uma condição de parada dos ciclos ou repetições V F Thiers SousaIntrodução a Programação WEB Repetição com teste à cabeça •Construir um fluxograma que demonstre os passos para comer todo um pacote já aberto de biscoito 1. Pegue o biscoito 2. Abrir o pacote 3. Se ainda existir biscoito Pegar um biscoito Comer o biscoito Vá para o passo 3 Senão Escovar os dentes 12/02/2014 15 Thiers SousaIntrodução a Programação WEB Repetição com teste à cabeça Tem Biscoito ? Pegar Biscoito sim não Comer o biscoito Escovar os dentes Inicio Pegar o pacote Abri o pacote Fim Thiers SousaIntrodução a Programação WEB Repetição com teste à cabeça •Construir um fluxograma que demonstre uma rodada de bingo 1. Pôr as bolas no globo 2. Se não há vencedor Girar o globo Sortear um bola Vá para o passo 2 Senão Entregar o prêmio 12/02/2014 16 Thiers SousaIntrodução a Programação WEB Repetição com teste à cabeça Há vencedo r? Girar o globo não Sim Sortear uma bola Entregar os Prêmios Inicio Por as bolas no globo Fim Thiers SousaIntrodução a Programação WEB 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 sequência de ações •A sequência de ações é executada pelo menos uma vez •Como o teste da expressão lógica sucede a sequência de ações. Este tipo de repetição é chamado repetição de cauda 12/02/2014 17 Thiers SousaIntrodução a Programação WEB Repetição com teste à Cauda V F Thiers SousaIntrodução a Programação WEB Repetição com teste à Cauda •Construir um fluxograma que demonstre os passos para comer um pacote novo 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 Escovar os dentes 12/02/2014 18 Thiers SousaIntrodução a Programação WEB Repetição com teste à Cauda Thiers SousaIntrodução a Programação WEB Repetição com teste à Cauda •Construir um fluxograma que demonstre uma rodada em um bingo 1. Por as bolas no globo 2. Girar o globo 3. Sortear uma bola 4. Se não houver vencedor Vá para o passo 2 Senão Entregar o prêmio 12/02/2014 19 Thiers SousaIntrodução a Programação WEB Repetição com teste à Cauda Há vencedo r? Girar o globo não Sim Sortear uma bola Entregar os Prêmios Inicio Por as bolas no globo Fim Thiers SousaIntrodução a Programação WEB Exercícios •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 média é calculada com base em três notas • O aluno será reprovado se sua média for menor que 5,0 • O aluno será aprovado se sua média for igual ou superior a 7 • O aluno fará uma nova avaliação caso sua média esteja entre 5 e 7 12/02/2014 20 Thiers SousaIntrodução a Programação WEB Exercícios •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 condição de aprendiz, a partir de quatorze anos”. Elaborar um fluxograma que, obtida a idade de um certo indivíduo, exiba qual o tipo de trabalho que o mesmo pode exercer. Thiers SousaIntrodução a Programação WEB Exercícios •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é as 10:00 horas e outra é que não pode estar chovendo. Não atendidas essas condições, Zezinho vai estudar. Sendo assim, crie um fluxograma que represente os passos que Zezinho realiza ao acordar até ir ou não a praia aos domingos.
Compartilhar