ALGORITMOS E PROGRAMAÇÃO Flávio Euripedes de Oliveira Esp. em Analise de Sistemas Esp. em Segurança da Informação [email protected] Tema central: Introdução ao conceito de operadores relacionais e lógicos Flávio Euripedes Apresentação – Slide 2 Algoritmos e Programação Objetivos: Apresentar os conceitos básicos sobre os operadores relacionais e lógicos Mostrar a tabela verdade dos seguintes operadores lógicos: not, and e or Apresentar as prioridades de todos os operadores (aritméticos, relacionais e lógico). Flávio Euripedes Apresentação – Slide 3 Algoritmos e Programação Referencias Bibliográficas: FORBELLONE, André Luiz Villar; EBERSPACHER, Henri. Lógica de Programação: a construção de algoritmos e estruturas de dados. 3 ed. São Paulo: Pearson Education, 2005. MANZANO, Jose Augusto N G. Algoritmos: logica para desenvolvimento de programação de computadores. São Paulo: Érica, 2001.’ Flávio Euripedes Apresentação – Slide 4 Algoritmos e Programação Operadores Relacionais: Utilizamos para realizar comparações entre dois valores de mesmo tipo primitivo. Tais valores são representados por constantes, variáveis ou expressões aritméticas. Flávio Euripedes Apresentação – Slide 5 Algoritmos e Programação Operadores usados na linguagem algoritma Operador Função Exemplos = Igual a 4 = 4, X = W > Maior que 6 > 0, t > m < Menor que 0 < 8, q < p >= Maior ou igual a 5 >= 4, i >= y <= Menor ou igual a 4 <= 5, j <= u <> Diferente de 6 <> 9, x <> y OBS: O Resultado de uma relação é sempre um valor lógico Flávio Euripedes Apresentação – Slide 6 Algoritmos e Programação Exemplos: 4 *3 + 2 = 20/2 + 4 2 + 8 mod 7 >= 3*6 – 15 3*5 div 4 <= pot(3,2) / 0,5 Flávio Euripedes Apresentação – Slide 7 Algoritmos e Programação Operadores lógicos: Utilizaremos três operadores lógicos básicos para a formação de novas proposições lógicas compostas a partir de outras proposições lógicas simples. Os operadores estão descritos na Tabela a seguir. Flávio Euripedes Operador Função não negação e conjunção ou disjunção Apresentação – Slide 8 Algoritmos e Programação Tabelas - verdade É o conjunto de todas as possibilidades combinatórias entre os valores de diversas variáveis lógicas, as quais se encontram em apenas duas situações (V ou F), e um conjunto de operadores lógicos. Flávio Euripedes Apresentação – Slide 9 Algoritmos e Programação Tabela verdade da operação negação (não): Flávio Euripedes A não A V F F V Apresentação – Slide 10 Algoritmos e Programação Tabela verdade da operação conjunção (and): Flávio Euripedes A B AeB V V V V F F F V F F F F Apresentação – Slide 11 Algoritmos e Programação Tabela verdade da operação de disjunção (or): Flávio Euripedes A B A ou B V V V V F V F V V F F F Apresentação – Slide 12 Algoritmos e Programação Exemplos : Se chover e relampejar, eu fico em casa. Quando eu fico em casa? Se chover ou relampejar eu fico em casa. Quando eu fico em casa? Flávio Euripedes Apresentação – Slide 13 Algoritmos e Programação Prioridades: Precedência entre os operadores lógicos: Flávio Euripedes Prioridade Operadores 1ª não 2ª e 3ª ou Apresentação – Slide 14 Algoritmos e Programação Exemplos: Calcule o resultado de cada uma das expressões abaixo: 2 < 5 e 15/3 = 5 2 < 5 ou 15/3 = 5 F ou 20 div (18/3) <> (21/3) div 2 não V ou pot(3,2)/3 < 15 – 35 mod 7 Flávio Euripedes Apresentação – Slide 15 Algoritmos e Programação Precedência entre todos os operadores Prioridade Operadores 1ª Parênteses mais internos 2ª Operadores aritméticos 3ª Operadores relacionais 4ª Operadores lógicos OBS: Vale a pena ressaltar que essa última convenção de precedência não é comum em todas as linguagens, mais foi adotada por ser considerada a mais didática. Flávio Euripedes Apresentação – Slide 16 Algoritmos e Programação Exemplos: não (5 <> 10/2) ou V e 2 – 5 > 5 – 2 ou V pot(2,4) <> 4 + 2 ou 2 + 3 * 5/3 mod 5 < 0 Flávio Euripedes Apresentação – Slide 17 Algoritmos e Programação