Tabela Verdade
Primeiramente é bom dá uma revisada nos conceitos de tabela verdade, para entender como valores de entrada e booleanos funcionam.
A Tabela verdade nada mais é que um mecanismo de lógica que para determinada entrada ou valor e é calculado sua saída de acordo com predeterminações lógicas, funcionais e booleanas
AND e OR
Recentemente me deparei com uma falta de conhecimento em relação a booleanos eu não sabia como converter um &&(AND) para ||(OR) na linguagem que estava utilizando (JavaScript), teria que fazer uma validação convertendo AND para OR por isso o foco nesses dois operadores lógicos nesse post.
Operadores lógicos são nada a menos que funções e expressões matemáticas, sim aquelas que você estudou provavelmente na escola.
- O Operador lógico AND também chamado de Conjunção lógica, ele é utilizado para dados dois inputs de valores onde produz um valor verdadeiro se ambos os operandos forem verdadeiros. Em lógica de programação existem dois valores em bits que representam verdadeiro ou falso que são: 1 e 0
- Operador lógico OR também chamado de Disjunção lógica, dado dois inputs com valores ele produz um valor verdadeiro se pelo menos um de seus operandos for verdadeiro.
Operador Lógico XOR
O operador lógico XOR ele representa a função de desigualdade ou seja se ambas as entradas forem verdadeiras ou falsas a saída será falsa (0) se ambas entradas se distinguirem ele retornará verdadeiro. Uma frase legal para lembrar a lógica do XOR é :
"deve ter um ou outro, mas não ambos"A apresentação analítica desse operador lógico se dar pela expressão:
f(a,b)=a+b-2ab
- Uma curiosidade interessante que você deve ainda não ter percebido é que o operador lógico XOR é a conversão dos operadores AND e OR, e assim quando você tiver uma lógica AND e quiser transformá-la em uma lógica OR usará o XOR.
Operador lógico XOR em JavaScript
- Depois de um breve resumo sobre operadores lógicos e tabela verdade agora podemos voltar a resolução do problema que desencadeou esse post.
- Assim como na tabela verdade também existem nas linguagens de programação operadores lógicos, e como seria o operador XOR em JavaScript?
Simples, já que não temos um símbolo de fato desse operador podemos representá-lo com a conversão dos operadores AND para OR que ficaria desde modo:
bCondition1 && bCondition2
para
!(!bCondition1 || !bCondition2)
Espero que esse post tenha lhe ajudado ou agregado em algo \o/
Para feedbacks sobre fale comigo pelo Twitter
Se quiser continuar apoiando meus conteúdos Patreon
Meu GitHub https://github.com/biantris
Versão em en 🇺🇸: https://dev.to/beatrizoliveira/converting-and-to-or-in-javascript-30jc
Top comments (0)