Baixe o app para aproveitar ainda mais
Prévia do material em texto
EXPRESSÕES LÓGICAS E RELACIONAIS Profa. Simone Amorim Email: simone.amorim@ifba.edu.br Operadores Relacionais ¨ São aqueles que operam sobre dois valores (valores, variáveis, constantes ou chamadas de funções) e/ou expressões e verificam a magnitude (qual é maior ou menor) e/ou igualdade entre eles ¨ Como resultado, esse tipo de operador retorna: ¨ O valor TRUE, se a expressão relacional for considerada verdadeira ¨ O valor FALSE, se a expressão relacional for considerada falsa Operadores Relacionais em C ¨ O operador de atribuição é definido por UM símbolo de igual (:=), enquanto o operador de comparação é definido pelo símbolo de igual (=) ¨ Se você tentar colocar o operador de comparação em uma operação de atribuição, o compilador acusará um erro Operadores Relacionais Expressoes Lógicas ¨ São aquelas cujos operadores são lógicos ou relacionais e cujo operandos são relações ou variáveis ou constatntes do tipo lógico ¨ Seus resultados são is valores VERDADEIRO ou FALSO Operadores Lógicos ¨ Para trabalhar com o relacionamento de duas ou mais condições ao mesmo tempo na mesma instrução usa-se operadores lógicos ¨ Os operadores lógicos são utilizados para se analisar duas ou mais expressões interrelacionadas Operador AND ¨ O operador do tipo AND é utilizado quando dois ou mais relacionamentos lógicos de uma determinada condição necessitam ser verdadeiros Operador AND ¨ Imagine que você possua dois os ligados a uma lâmpada e a uma bateria ¨ A lâmpada somente acenderá se você tiver ligado ambos os os aos pólos da bateria Operador OR ¨ O operador do tipo OR é utilizado quando pelo menos um dos relacionamentos lógicos (quando houver mais de um relacionamento) de uma condição necessita ser verdadeiro Operador OR ¨ Considere agora, como exemplo, que você deseja escrever uma carta. ¨ Se você tiver uma máquina de escrever ou (OR) um microcomputador, pode tranqüilamente satisfazer seu desejo. Operador NOT ¨ O operador do tipo NOT é utilizado quando houver necessidade de estabelecer a inversão do resultado lógico de uma determinada condição ¨ Se a condição for verdadeira, será considerada falsa ¨ Se a condição for falsa, será considerada verdadeira Operador NOT ¨ Considere agora, como exemplo, que se você possui um carro e o pneu está furado, você não (NOT) pode viajar Operadores Lógicos ¨ Combinando operadores relacionais e operadores lógicos criamos operações lógicas, que produzirão resultados lógicos (verdadeiro ou falso) ¨ Por exemplo, se A = 5, B = 8 e C = 1: ¨ (A = B) AND (B > C) false (f and t) ¨ (A <> B) OR (B < C) true (t or f) ¨ NOT (A > B) true (not f) ¨ (A < B) AND (B > C) true (t and t) ¨ (A >= B) OR (B = C) false (f or f) ¨ NOT (A <= B) false (not t) Testando… Considere a seguinte atribuição de valores para as variáveis: A=3,B=4, C=8 Avalie as expressões a seguir indicando o resultado final: verdadeiro ou falso. 1) A > 3 AND C = 8 ( ) 2) A <> 2 OR B <= 5 ( ) 3) A = 3 OR B >= 2 AND C = 8 ( ) 4) A = 3 AND NOT B <= 4 AND C = 8 ( ) 5) A <> 8 OR B = 4 AND C > 2 ( ) 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>=C) AND (D >= C) ( ) Operadores Lógicos ¨ Os operadores lógicos atuam sobre valores lógicos e retornam um valor lógico: ¨ true: se a expressão é verdadeira ¨ false: se a expressão é falsa Operadores Lógicos ¨ Operador AND: a expressão resultante só é verdadeira se ambas as expressões unidas por esse operador também forem ¨ A expressão (x >= 0 and x <= 9) será verdadeira somente se as expressões (x >= 0) and (x <= 9) forem verdadeiras Operadores Lógicos ¨ Operador OR: a expressão resultante é verdadeira se alguma das expressões unidas por esse operador também for ¨ A expressão (a = ‘F’ or b <> 32) será verdadeira se uma de suas duas expressões, (a = ‘F’) or (b <> 32), for verdadeira Operadores Lógicos ¨ Operador NOT: inverte o valor lógico da expressão à qual se aplica ¨ A expressão not(x = 10) se transforma em (x > 10 or x < 10) Prioridade de Operações ¨ Pode-se ter mais de um operador lógico na mesma expressão, além dos operadores de relação e dos operadores aritméticos ¨ Dica: use parênteses para definir a ordem de execução das operações Exercícios Exercício 1 ¨ Determine os resultados nas avaliações das expressões lógicas, sabendo que A, B e C são respectivamente 2, 7, e 3.5 e que existe uma variável lógica L cujo valor é FALSO a) B = A*C and (L or V) b) B > A or B = A*A c) L and B div A >= C or not A <= C d) B/A = C or B/A <> C e) L or BA <= C * 10 + A * B Resposta Exercício 1 a) 7 = 2*3.5 and (F or V) è V b) 7 > 2 or 7 = 2*2 è V c) F and 7 div 2 >= 3.5 or not 2 <= 3.5 è F d) 7/2 = 3.5 or 7/2 <> 3.5 è V e) F or 72 <= 3.5 * 10 + 2 * 7 è V Operadores Lógicos
Compartilhar