23/02/2015 O diagrama de blocos ou fluxograma é uma forma padronizada eficaz para representar os passos lógicos de um determinado processamento. Com o diagrama podemos definir uma sequencia de símbolos, com significado bem definido. Portanto, sua principal função é a de facilitar a visualização dos passos de um processamento. Gilvan Vieira Moura E-mail: [email protected] Símbolo Fluxograma: é o algoritmo descrito com o uso de símbolos geométricos (retângulos, losangos, etc.) enfatizando interconexões; seus passos individuais e suas Significado Descrição FLUXO DE DADOS Indica o sentido do fluxo de dados. Conecta os demais símbolos TERMINAL Indica o INÍCIO ou FIM de um processamento Exemplo: Início do algoritmo PROCESSAMENTO Processamento em geral Exemplo: Calculo de dois números ENTRADA/SAÍDA (Genérica) Operação de entrada e saída de dados Exemplo: Leitura e Gravação de Arquivos DESVIO (conector) Permite o desvio para um ponto qualquer do programa ENTRADA MANUAL Indica entrada de dados via Teclado Exemplo: Digite a nota da prova 1 DECISÃO Permite elaborar processos de decisão EXIBIR/SAÍDA Mostra informações ou resultados Exemplo: Mostre o resultado do cálculo 1 23/02/2015 O processo de desenvolvimento (programação), normalmente, baseado em duas etapas de trabalho, que INÍCIO são análise de sistemas e programação, quando são feitos os fluxogramas; FIM Os símbolos gráficos do fluxograma permitem demonstrar de forma a linha de raciocínio lógico utilizada pelo programador; de cima para baixo esquerda para a direita O que é feito? Para que serve essa fase? Por que essa fase é necessária? Onde essa fase deve ser feita? Quando essa fase deve ser feita? Quem deve executar a fase? Há alguém mais bem qualificado para executála? Como a fase está sendo executada? É uma forma simples para quem não conhece programação entender; SEQUÊNCIA SIMPLES IF-THENELSE DO-WHILE 2 23/02/2015 VANTAGENS DO USO DE FLUXOGRAMAS Visão de conjunto e integrada de todo o processo; Visualização dos detalhes críticos do processo; Identificação dos pontos de controle potenciais; Verificação e aprimoramento do processo decisório; EXEMPLO: SOMAR TRÊS NÚMEROS Identificação das inconsistências e pontos frágeis, como falhas processuais, problemas de comunicação e retrabalho; D Verificação de etapas burocratizadas em excesso. Consiste em analisar o enunciado do problema e escrever, por meio de regras predefinidas, os passos a serem seguidos para sua resolução. 3 23/02/2015 A A passagem do algoritmo para qualquer linguagem de estrutura geral de um algoritmo é: Algoritmo "<nome do algoritmo>" programação é quase imediata, bastando conhecer as palavras reservadas dessa linguagem que serão utilizadas. Var < declaração de variáveis> inicio < lista de comandos> fimalgoritmo LINHAS DE COMENTÁRIO Para “colocar” um valor em uma variável dentro de um algoritmo, utilizamos o operador de atribuição. O podem conter qualquer informação textual que você queira operador de atribuição é representado por uma seta (<-) adicionar ao código-fonte para referência e documentação apontando para a esquerda. de seu programa. Ex: Peso <- 78.7 // Este comando atribui à variável Peso o valor 78.7. Os comentários são declarações não compiladas que Nome <- "João da Silva" // Este comando atribui à variável Nome o valor "João da Silva". São representados por duas barras normais ( // ). Todo o texto que você digitar após as duas barras será comentário. Ex: // Este método calcula o fatorial de n...x <- y; // Inicializa a variável x com o valor de y 4 23/02/2015 COMANDO DE SAÍDA É utilizado para receber dados digitados pelo usuário, Este comando é representado pela palavra ESCREVA, e que serão armazenados em variáveis. Este comando é os dados podem ser conteúdos de variáveis ou representado pela palavra LEIA. mensagens. Ex: leia (X) // O valor digitado pelo usuário será Ex: escreva (“O valor de X é: “) // mostra a mensagem “O valor de X é:” armazenado na variável X. É utilizado para mostrar dados na tela ou na impressora. Ex: leia (Y) // O valor digitado pelo usuário será Ex: escreva (“Conteúdo de Y = “, Y) // mostra a mensagem “Conteúdo de Y = ” e em seguida o valor armazenado na variável Y. armazenado na variável Y PORTUGUÊS ESTRUTURADO DIVISÃO DE DOIS NÚMEROS Exemplo: Somar três números ALGORITMO Soma var A, B, C, D: inteiro inicio escreva (“Digite o valor de A: ”) leia (A) escreva (“Digite o valor de B: ”) leia (B) escreva (“Digite o valor de C: ”) leia (C) D <- A + B + C escreva (“D= ”, D) fimalgoritmo ALGORITMO Divisao var M, N1, N2: inteiro Inicio escreva (“Digite o valor de N1: ”) leia (N1) escreva (“Digite o valor de N2: ”) leia (N2) M <- N1 / N2 escreva (“M = ”, M) fimalgoritmo 5 23/02/2015 PORTUGUÊS ESTRUTURADO 1.Faça um algoritmo para mostrar o resultado da multiplicação de dois números ( Fluxograma e português estruturado): Fluxograma ALGORITMO Multiplicacao var M, N1, N2: inteiro Descrição Narrativa: Inicio escreva (“Digite o valor de N1:”) Receber os números que serão multiplicados Multiplicar os números escreva (“Digite o valor de N2: ”) Mostrar o resultado obtido na multiplicação leia (N2) leia (N1) M M <- N1 * N2 escreva (“M = ”, M) fimalgoritmo EXERCÍCIO Crie um algoritmo para calcular a média de consumo de combustível de um veículo qualquer. O usuário deverá informar: quilometragem inicial, quilometragem final e a quantidade de litros abastecida. Represente seu algoritmo utilizando português estruturado código e fluxograma crie um algoritmo para calcular a velocidade média atingida por um veículo durante uma viagem. reflita sobre os dados que serão necessários solicitar ao usuário. represente seu algoritmo utilizando português estruturado e fluxograma. 6