Mudanças entre as edições de "Operadores Logicos"
(→Operador 'OU') |
|||
Linha 111: | Linha 111: | ||
Diferente do operador lógico 'E' que necessita que ambos os parâmetros lógicos sejam verdadeiros para a condição ser cumprida, o operador 'OU' precisa que apenas um deles seja verdadeiro. Esse operador lógico só será falso quando ambos os parâmetros lógicos forem falsos. | Diferente do operador lógico 'E' que necessita que ambos os parâmetros lógicos sejam verdadeiros para a condição ser cumprida, o operador 'OU' precisa que apenas um deles seja verdadeiro. Esse operador lógico só será falso quando ambos os parâmetros lógicos forem falsos. | ||
+ | |||
+ | <table border="1" cellpadding="2"> | ||
+ | <caption>A tarefa foi feita?</caption> | ||
+ | <tr><th> Eu fiz <th> Você fez <th> A tarefa foi feita? | ||
+ | <tr><th>Sim<td>Sim<td>Sim | ||
+ | <tr><th>Sim<td>Não<td>Sim | ||
+ | <tr><th>Não<td>Sim<td>Sim | ||
+ | <tr><th>Não<td>Não<td>Não | ||
+ | </table> | ||
<pre> | <pre> | ||
− | + | Pseudocódigo | |
+ | |||
+ | SE(euFiz OU voceFez) ENTÃO | ||
+ | ESCREVA("A tarefa foi feita"); | ||
+ | SE NÃO | ||
+ | ESCREVA("A tarefa não foi feita"); | ||
+ | |||
+ | ________________________ | ||
+ | |||
+ | Linguagem C | ||
+ | |||
+ | if(euFiz || voceFez){ | ||
+ | printf("A tarefa foi feita"); | ||
+ | }else{ | ||
+ | printf("A tarefa não foi feita"); | ||
+ | } | ||
+ | ________________________ | ||
+ | |||
+ | C++ | ||
+ | |||
+ | if(euFiz || voceFez){ | ||
+ | cout << "A tarefa foi feita"; | ||
+ | }else{ | ||
+ | cout << "A tarefa não foi feita"; | ||
+ | } | ||
+ | ________________________ | ||
+ | |||
+ | Python | ||
+ | |||
+ | if sol or calor: | ||
+ | print('A tarefa foi feita') | ||
+ | else: | ||
+ | print('A tarefa não foi feita') | ||
</pre> | </pre> | ||
+ | |||
==Operador 'NÃO'== | ==Operador 'NÃO'== | ||
− | |||
//Explicar necessidade do operadores NÃO | //Explicar necessidade do operadores NÃO | ||
Edição das 18h25min de 20 de junho de 2020
Operadores lógicos, como operadores ariméticos
As estruturas de programação, como a [Estruturas_de_Seleção | estrutura de seleção] e a [Estruturas_de_Repetição | estrutura de repetição] podem mudar o comportamento de um código, dependendo de como o código está montado essas estruturas permitem a execução (ou repetição) de parte do código apenas em determinadas situações.O que vai decidir se o código dentro daquela estrutura deve ser executado (como em estruturas de seleção) ou se deve ser repetido 1 ou 10 vezes (como em estruturas de repetição) é seu parâmetro lógico.
Os parâmetros lógicos podem ser verdadeiros ou falsos, se forem verdadeiros a condição é cumprida e o código dentro da estrutura é executado (ou repetido, dependendo da estrutura), se não, aquela area do código é ignorado ou redirecionada.
Por exemplo:
[Estruturas_de_Seleção || Estrutura de seleção]
SE chovendo ENTÃO ESCREVA("Melhor levar um guarda-chuva");
[Estruturas_de_Repetição | Estrutura de repetição]
ENQUANTO chovendo FAÇA ESCREVA("Não vou sair de casa, ainda está chovendo"); ESCREVA("Finalmente parou de chover!");
Os exemplos acima possuem em seu parâmetro uma variável que pode ser verdadeira ou falsa, porem, os parâmetros lógicos também podem ser construidos como expressões aritméticas.
Por exemplo:
SE idade MENOR QUE 18 ENTÃO ESCREVA("Você é menor de idade!");
SE preço MAIOR OU IGUAL QUE 10 ENTÃO ESCREVA("Isso é bem caro!");
Apesar de toda flexibilidade no código que os parâmetros lógicos possibilitam, é fácil se perder usando-os e criando um código confuso e difícil de entender. Por exemplo:
SE(sol) ENTÃO SE (calor) ENTÃO ESCREVA("Maria vai ao parque! :) ");
SE(preço <= 10) ENTÃO ESCREVA("eu posso comprar isso") SE NÃO SE(dinheiro > 10) ENTÃO escreva("eu posso comprar isso")
Para isso possuímos operadores lógicos:
Operador 'E'
//Explicar necessidade do operadores E O operador 'E', também chamado de conjunção, funciona como a palavra 'e', fornecendo a intercessão entre dois elementos. Para a condição ser cumprida os dois elementos precisam ser verdadeiros. Por exemplo: "Maria vai ao parque se estiver sol e calor", nesse exemplo Maria vai ao parque apenas se as duas condições forem cumpridas, se houver sol mas não estiver calor ou se não houver sol mas estiver calor Maria não vai ao parque.
//TABELA VERDADE
Sol | Calor | Ela vai ao parque? |
---|---|---|
Sim | Sim | Sim |
Sim | Não | Não |
Não | Sim | Não |
Não | Não | Não |
Pseudocódigo SE(sol E calor) ENTÃO ESCREVA("Maria vai ao parque! :) "); SE NÃO ESCREVA("Maria não vai ao parque! :( "); ________________________ Linguagem C if(sol && calor){ printf("Maria vai ao parque! :) "); }else{ printf("Maria não vai ao parque! :( "); } ________________________ C++ if(sol && calor){ cout << "Maria vai ao parque! :) "; }else{ cout << "Maria não vai ao parque! :( "; } ________________________ Python if sol and calor: print('Maria vai ao parque! :) ') else: print('Maria não vai ao parque! :( ')
Operador 'OU'
//Explicar necessidade do operadores OU
Diferente do operador lógico 'E' que necessita que ambos os parâmetros lógicos sejam verdadeiros para a condição ser cumprida, o operador 'OU' precisa que apenas um deles seja verdadeiro. Esse operador lógico só será falso quando ambos os parâmetros lógicos forem falsos.
Eu fiz | Você fez | A tarefa foi feita? |
---|---|---|
Sim | Sim | Sim |
Sim | Não | Sim |
Não | Sim | Sim |
Não | Não | Não |
Pseudocódigo SE(euFiz OU voceFez) ENTÃO ESCREVA("A tarefa foi feita"); SE NÃO ESCREVA("A tarefa não foi feita"); ________________________ Linguagem C if(euFiz || voceFez){ printf("A tarefa foi feita"); }else{ printf("A tarefa não foi feita"); } ________________________ C++ if(euFiz || voceFez){ cout << "A tarefa foi feita"; }else{ cout << "A tarefa não foi feita"; } ________________________ Python if sol or calor: print('A tarefa foi feita') else: print('A tarefa não foi feita')
Operador 'NÃO'
//Explicar necessidade do operadores NÃO
//resolver um exemplo nas linguagens C, c++, python, e pseudo código