Algoritmos e Técnicas de Programação Prof. Msc. Raul Paradeda Aula 3 Fluxograma e Pseudocódigo Aula 3 Introdução; Fluxograma; Pseudocódigo. Introdução Existem várias formas de expressar os algoritmos que são criados para os computadores. Existem três formas mais utilizadas, que são: O fluxograma; O pseudocódigo (Portugol); Linguagem de programação. Fluxograma Forma de apresentar os algoritmos de maneira gráfica. Terminal – Representa o início e o final do fluxograma. Processamento – Representa operações ou ações. Decisão – Representa uma ação lógica. Seta de orientação de fluxo – Indica qual o sentido do fluxo. Fluxograma Qual a finalidade do fluxograma apresentado? início N1 <- 3 N2 <- 5 total <- N1 + N2 escreva (total) fim Qual a finalidade do fluxograma apresentado? Fluxograma Em algoritmos complexos e longos o uso de uma apresentação na forma de fluxograma se torna extremamente trabalhosa, podendo ocupar diversas páginas. início leia (num1, num2) V F num1>num2 maior <- num1 maior <- num2 escreva (maior) Não é necessário declarar variáveis em fluxograma! fim Qual a finalidade do fluxograma apresentado? Fluxograma início leia (num1, num2) V F num1>num2 maior <- num1 maior <- num2 escreva (maior) escreva (maior) fim Fluxograma - Exercícios 1. Faça um fluxograma que mostre o resultado da multiplicação entre o valor 4 e 15. 2. Faça um fluxograma que mostre o resultado da subtração entre o valor 3, 2, e 10. 3. Faça um fluxograma que verifique se a soma do valor 4 e 7 é maior que 13. Mostre a soma de 4 e 7 se for maior caso contrário mostrar o valor 13. Pseudocódigo Visa melhorar a interpretação do programador em relação ao algoritmo criado, eliminando o código compilável e apresentando um código mais limpo. Normalmente o pseudocódigo é escrito na linguagem natural do programador, no Brasil é chamado de Portugol. O código em Portugol pode ser compilado, ou seja, traduzido para linguagem de máquina por meio de um compilador chamado VisuAlg. Pseudocódigo A estrutura básica de um pseudocódigo é: Declaração das variáveis e/ou constantes Inicio_bloco_principal instruções_do_programa Fim_bloco_principal Pseudocódigo A declaração é “avisar ao computador para reservar um determinado espaço na memória para uso”. A sintaxe da declaração de variáveis e constantes irá variar de linguagem para linguagem. Em pseudocódigo será feita da seguinte maneira: VAR nome_variavel:Tipo nome_variavel:Tipo Exemplo: VAR numero1,numero2,numero3: inteiro n4: real Pseudocódigo O bloco de instruções principal delimita as instruções pertencentes aquele programa. Pode-se haver vários blocos de instruções, entretanto, EXISTE APENAS UM BLOCO DE INSTRUÇÕES PRINCIPAL. Os blocos de instruções são utilizados para delimitar as instruções que fazem parte de determinado comando. Em pseudocódigo utiliza-se as palavras de início e fim para delimitar os blocos de instruções. Portugol • Exemplo de Portugol: var n1, n2, total: inteiro início n1 <- 4 n2 <- 7 total <- n1 + n2 escreva(total) fimalgoritmo Portugol • Exemplo de Portugol: var num1, num2, maior: inteiro início escreva(“Informe dois valores inteiros:”) leia(num1, num2) se(num1 > num2) entao maior <- num1 senao maior <- num2 fimse escreva(maior) fimalgoritmo Obs-> importante é a utilização de uma identação para facilitar o próprio entendimento e o entendimento de outros programadores. Pseudocódigo- Exercícios 1. Faça um Portugol que mostre o resultado da multiplicação entre o valor 4 e 15. 2. Faça um Portugol que mostre o resultado da subtração entre o valor 3, 2, e 10. 3. Faça um Portugol que mostre a multiplicação de um valor pré-definido por outro valor pré-definido, em seguida divida o resultado por 100. Exemplos reais de algoritmos • Problema 1.1: Calcular a soma de dois números inteiros pré-definidos. Problema 1.2: Calcular a soma de dois números inteiros definidos pelo usuário. Problema 1.3: Calcular a soma de dois números inteiros definidos pelo usuário e mostrar o resultado. • Problema 2: Realizar a soma entre dois números inteiros pares e entre dois números inteiros ímpares pré-definidos, depois multiplicar o total dessas somas. • Problema 3: Calcular a taxa de juros de um determinado valor pré-definido. (Juros de 1.8%). Exemplos reais de algoritmos • Problema 1.1: Calcular a soma de dois números inteiros. var n1, n2, total: inteiro início n1 <- 5 n2 <- 8 total <- n1 + n2 fimalgoritmo Exemplos reais de algoritmos • Problema 1.1: Calcular a soma de dois números inteiros. var n1, n2, total: inteiro início leia(n1,n2) total <- n1 + n2 fimalgoritmo Exemplos reais de algoritmos • Problema 1.2: Calcular a soma de dois números inteiros. var n1, n2, total: inteiro início leia(n1,n2) total <- n1 + n2 escreva(total) fimalgoritmo Exemplos reais de algoritmos • Problema 2: Calcular a taxa de juros de um determinado valor. (Juros de 1.8%). var n1: inteiro total, JUROS: real início JUROS <- 1.8 n1 <- 80 total <- (juros * n1) / 100 fimalgoritmo Exemplos reais de algoritmos • Problema 3: Realizar a soma entre dois números inteiros pares e entre dois números inteiros ímpares, depois multiplicar a o total dessas somas. var np1, np2, ni1, ni2, nptotal, nitotal, total: inteiro início np1 <- 4 np2 <- 12 ni1 <- 13 ni2 <- 7 nptotal <- np1 + np2 nitotal <- ni1 + ni2 total <- nptotal * nitotal fimalgoritmo Exemplos reais de algoritmos • Problema 4: Calcular o número de vértices de um cubo. • Sabendo que a relação entre vértices, arestas e faces de um objeto geométrico é dada pela fórmula: vértice + faces = arestas +2, • calcule o número de vértices de um cubo (6 faces e 12 arestas). Exemplos reais de algoritmos • Problema 5: Encontrar as raízes de uma equação de segundo grau. • Toda equação que pode ser escrita na forma: ax2 + bx + c, em que x é a variável “a”, “b” e “c” são os coeficientes da equação do segundo grau. Para encontrar as raízes podemos utilizar a fórmula de Baskara: • Faça um algoritmo que encontre as raízes da equação: 2x2 + 4x – 3. Exemplos reais de algoritmos • Problema 4: Calcular o número de vértices de um cubo. • Sabendo que a relação entre vértices, arestas e faces de um objeto geométrico é dada pela fórmula: vértice + faces = arestas +2, calcule o número de vértices de um cubo (6 faces e 12 arestas). var vértices, faces, arestas: inteiro início faces <- 6 arestas <- 12 vértices <- arestas + 2 – faces fimalgoritmo Exemplos reais de algoritmos • Solução Problema 5 para a equação igual a 2x2 + 4x – 3. var delta, x1, x2, a, b, c: real início a <- 2 b <- 4 c <- -3 delta <- b pot 2 – 4 * a * c x1 <- (-b +(delta raiz 2)) / 2 * a x2 <- (-b -(delta raiz 2)) / 2 * a fimalgoritmo