LÓGICA DE PROGRAMAÇÃO Vitor Valerio de Souza Campos Exemplos de algoritmos Faça um algoritmo para mostrar o resultado da multiplicação de dois números. Algoritmo em descrição narrativa Passo 1 – Receber os dois números que serão multiplicados. Passo 2 – Multiplicar os números. Passo 3 – Mostrar o resultado obtido na múltiplicação. Exemplos de algoritmos Algoritmo em fluxograma: Início N1, N2 M = N1 + n2 M Fim Operações Lógicas Operações Lógicas são utilizadas quando se torna necessário tomar decisões em um diagrama de bloco. Num diagrama de bloco, toda decisão terá sempre como resposta o resultado VERDADEIRO ou FALSO. Símbolo para operações lógicas Exemplos de algoritmos Faça um algoritmo para mostrar o resultado da divisão de dois números. Algoritmo em descrição narrativa. Passo 1 – Receber os dois números que serão divididos. Passo 2 – Se o segundo número for igual a zero, não poderá ser feita a divisão, pois não existe divisão por zero; caso contrario, dividir os números e mostrar o resultado da divisão Exemplos de algoritmos Algoritmo em fluxograma: Início N1, N2 Não N2 = 0 Sim D = N1/N2 Impossível dividir D Fim Exemplos de algoritmos Faça um algoritmo para calcular a média aritmética entre duas notas de um aluno e mostrar sua situação, que pode ser aprovado ou reprovado. Algoritmo em descrição narrativa: Passo 1 – Receber as duas notas. Passo 2 – Calcular a média aritmética. Passo 3 – Mostrar a média aritmética. Passo 4 – Se a média aritmética for maior ou igual a 7, então a situação do aluno é aprovado; caso contrario, a situação é reprovado. Exemplos de algoritmos Algoritmo em fluxograma: Início N1, N2 M = (N1 + N2)/2 M Aprovado Sim M >= 7 Fim Não Reprovado Constantes, Variáveis e Tipos de Dados CONSTANTES Constante é um determinado valor fixo que não se modifica ao longo do tempo, durante a execução de um programa. Conforme o seu tipo, a constante é classificada como sendo numérica, lógica e literal. Exemplo de Constante : N1 + N2 + N3 3 Constante VARIÁVEIS Variável é a representação simbólica dos elementos de um certo conjunto. Cada variável corresponde a uma posição de memória, cujo conteúdo pode se alterado ao longo do tempo durante a execução de um programa. Embora uma variável possa assumir diferentes valores, ela só pode armazenar um valor a cada instante. Constantes, Variáveis e Tipos de Dados VARIÁVEIS Exemplos de Variáveis: Constantes, Variáveis e Tipos de Dados DECLARAÇÃO DE VARIÁVEIS As variáveis só podem armazenar valores de um mesmo tipo, de maneira que também são classificadas como sendo numéricas, lógicas e literais. Var A é ALFANUMÉRICA Var B é NUMÉRICA Var C é LÓGICA A=1 A = “JOSÉ” B = “JOSÉ” B = 3,53 C = TRUE C = “banana” (CERTO) (CERTO) (ERRADO) (CERTO) (CERTO) (ERRADO) Constantes, Variáveis e Tipos de Dados TIPOS DE DADOS Os tipos de dados podem ser basicamente de três tipos: Numéricos, Caracteres ou literais e Lógicas. Constantes, Variáveis e Tipos de Dados Tipo de dados numérico Específicas para armazenamento de números, que posteriormente poderão ser utilizados para cálculos. Os dados numéricos de dividem em dois grupos: Inteiros São para armazenamento de números inteiros positivo ou negativos. E não possuem parte fracionárias. Exemplo de dados numéricos inteiros -23, 98, 0, -357, 237, -2 Constantes, Variáveis e Tipos de Dados Reais São para armazenamento de números positivos ou negativos e possuem parte fracionária. Números reais são números que possuam casas decimais. Números reais seguem a notação da língua inglesa, ou seja, a parte decimal é separada da parte inteira por um . (ponto) e não por uma , (vírgula). Exemplos de dados numéricos reais: 23.45, 346.89, 0.0, -247,0 Constantes, Variáveis e Tipos de Dados Tipo de dados literal ou caracter Específicas para armazenamento de conjunto de caracteres que não contenham números (literais). Esses caracteres podem ser letras maiúsculas, letras minúsculas, os números (não podem ser usados para cálculos) e os caracteres especiais (&, #, @, ?, +,...) Exemplos de dados literais: ‘aluno’ ‘1234’ ‘@ internet’ ‘0,34’ ‘1 + 2’ Constantes, Variáveis e Tipos de Dados Tipo de dados Lógicos Específicas para armazenamento de valores verdadeiro ou falso. Também são chamados de dados booleanos (por causa da álgebra de Boole). EXERCÍCIOS Classifique os dados especificados abaixo de acordo com seu tipo, assinalando com I os dados to tipo inteiro, com R os reais, com L os literais e com B os lógicos (booleanos). ( ( ( ( ( )0 )1 ) “a” ) “+3257” ) “+3257.” ( ( ( ( ( ) -0.001 ) 0.05 ) “abc” )F ) “V” ( ( ( ( ( ) 0.0 )V ) -1 ) -32 ) 36 Formação de identificadores Identificadores são os nomes: das variáveis, dos programas, das constantes,.... As regras básicas para formação dos identificadores são: Os caracteres que você pode utilizar são: os números, as letras maiúsculas, as letras minúsculas e o caractere underscore ( _ - sublinhado). Formação de identificadores As regras básicas para formação dos identificadores são: O primeiro caractere deve ser sempre uma letra ou o caractere underscore. Não são permitidos espaços em branco e caracteres especiais (@, $, +, -, %, !). Não se pode usar as palavras reservadas nos identificadores, ou seja, palavras que pertençam a uma linguagem de programação. Formação de identificadores Exemplos de identificadores válidos: A, a, nota, MATRICULA, nota_1, NOTA, X5 dia, IDADE Exemplos de identificadores inválidos 5b – por começar por número; E 12 – por conter espaço em branco; x-y – por conter caractere especial; case – por ser palavra reservada Operadores Os operadores são meios pelo qual incrementamos, decrementamos, comparamos e avaliamos dados dentro do computador. Temos três tipos de operadores: Operadores Aritméticos Operadores Relacionais Operadores Lógicos Operadores Aritméticos Os operadores aritméticos são os utilizados para obter resultados numéricos. Além da adição, subtração, multiplicação e divisão, podem utilizar também o operador para exponenciação. Operadores Os símbolos para os operadores aritméticos são: ( + ) ADIÇÃO ( - ) SUBTRAÇÃO ( * ) MULTIPLICAÇÃO ( / ) DIVISÃO (**) EXPONÊNCIAÇÃO Hierarquia das Operações Aritméticas 1 º ( ) Parênteses 2 º Exponenciação 3 º Multiplicação, divisão (o que aparecer primeiro) 4 º + ou – (o que aparecer primeiro) Operadores EXEMPLO: TOTAL = PRECO * QUANTIDADE 1 + 7 * 2 ** 2 –1 = 28 3 * (1 – 2) + 4 * 2 = 5 Exercícios: 1. 5 + (3 * 2) – 3 ** 3 = 2. 8 – 2**2 + 9 = 3. (2 * 3 * 5 - 1) / 4 = 4. 33 + 50 /2 – 1 = Operadores Relacionais Os operadores relacionais são utilizados para comparar String de caracteres e números. Os valores a serem comparados podem ser caracteres ou variáveis. Estes operadores sempre retornam valores lógicos (verdadeiro ou falso/ True ou False). Para estabelecer prioridades no que diz respeito a qual operação executar primeiro, utilize os parênteses. Operadores Relacionais Os operadores relacionais são: Igual a Diferente de Maior que Menor que Maior ou igual a Menor ou igual a = <> > < >= <= Operadores Relacionais Exemplo: Tendo duas variáveis A = 5 e B = 3 Os resultados das expressões seriam: A=B Falso A <> B Verdadeiro A>B Verdadeiro A<B Falso A >= B Verdadeiro A <= B Falso Operadores Relacionais Símbolo Utilizado para comparação entre expressões: Operadores Relacionais Operadores Lógicos Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso. Os operadores lógicos são: E (AND) OU (OR) NÃO (NOT) E / AND Uma expressão AND (E) é verdadeira se todas as condições forem verdadeiras. OR/OU Uma expressão OR (OU) é verdadeira se pelo menos uma condição for verdadeira. Operadores Relacionais NOT Um expressão NOT (NÃO) inverte o valor da expressão ou condição, se verdadeira inverte para falsa e vice-versa. A tabela abaixo mostra todos os valores possíveis criados pelos três operadores lógicos (AND, OR e NOT). Operadores Relacionais Exemplos: Suponha que temos três variáveis A = 5, B = 8 e C =1 Os resultados das expressões seriam: Exercícios 1) Tendo as variáveis SALARIO, IR e SALLIQ, e considerando os valores abaixo. Informe se as expressões são verdadeiras ou falsas: 2) Sabendo que A=3, B=7 e C=4, informe se as expressões abaixo são verdadeiras ou falsas: a) (A+C) > B ( ) b) B >= (A + 2) ( ) c) C = (B –A) ( ) d) (B + A) <= C ( ) e) (C+A) > B ( ) Exercícios 3) Sabendo que A=5, B=4 e C=3 e D=6, informe se as expressões abaixo são verdadeiras ou falsas: a) (A > C) AND (C <= D) ( ) b) (A+B) > 10 OR (A+B) = (C+D)( ) c) (A>=C) AND (D >= C) ( ) EXERCÍCIOS 3) Faça um teste de mesa no diagrama de bloco abaixo e preencha a tabela ao lado com os dados do teste: EXERCÍCIOS 4) Sabendo-se que José tem direito a 15% de reajuste de salário, complete o diagrama abaixo: Exercícios 1) Elabore um diagrama de blocos que leia um número. Se positivo armazene-o em A, se for negativo, em B. No final mostrar o resultado 2) Ler um número e verificar se ele é par ou ímpar. Quando for par armazenar esse valor em P e quando for ímpar armazenálo em I. Exibir P e I no final do processamento. Exercícios 3) Construa um diagrama de blocos para ler uma variável numérica N e imprimi-la somente se a mesma for maior que 100, caso contrário imprimila com o valor zero. 4) Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo que calcule seu peso ideal, utilizando as seguintes fórmulas: Para homens: (72.7*h) - 58 Para mulheres: (62.1*h) - 44.7 (h = altura)