Puden definir multiples variables en la misma linea asi:
var (a, b, c) = (false, true, false);
Introducción a C#
¿Por qué aprender C#? ¿Para qué sirve?
Instalación de Visual Studio Community
Conoce .NET 6
Introducción a Visual Studio y nuestro primer "Hola, mundo" en consola
¡Nuestro primer "Hola, mundo" en una aplicación gráfica!
¿Cómo funcionan los Namespaces en C#?
Lógica de programación
Tipos de datos
Variables
Manejo de strings
Trabajando con números y operadores aritméticos
Operadores lógicos
Operadores relacionales
Cómo leer datos de un usuario en C#
Arreglos en C#
Listas
Métodos o methods
Métodos de strings
Cómo crear tus propios métodos
Bucles y estructuras de control en C#
La sentencia if
La sentencia switch
Ciclo for
Ciclo while
Proyecto
Introducción del proyecto: sistema de registros de usuarios
Creando la búsqueda y el registro de usuarios
Finalizado del proyecto: mostrando la lista de usuarios registrados
Tus siguientes pasos con C#
POO: tu siguiente paso con C#
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Ricardo Celis
Aportes 29
Preguntas 5
Puden definir multiples variables en la misma linea asi:
var (a, b, c) = (false, true, false);
Lo que comenta el profe Celis es muy interesante a la hora entender sobre operadores lógicos
.
Por ejemplo en los robots seguidores de línea (Los más básicos como el de la imagen) su objetivo es seguir una línea, puede ser color negro o blanco, sin salirse de la línea. 😃
.
Se colocan 2 sensores infrarrojos en los extremos de la parte inferior frontal del robot 🤖
.
Supongamos un ejemplo, el sensor de la derecha es sensor1 y el sensor de la izquierda es sensor2
y estos solo pueden tener dos valores: 0 (Linea negra) ⬛ y 1 (Linea blanca) ⬜.
.
Entonces… Se puedes hacer varias condiciones, para este ejemplo solo usaré el operador AND (&&), pero se pueden usar cualquiera de los operadores según tu lógica, por ejemplo:
.
Le falto el XOR, es de los más usados, es el equivalente a preguntar si los argumentos A y B son diferentes, en C# el operador es ^
True ^ True = False
True ^ False = True
False ^ True = True
False ^ False = False
Les comparto la documentación oficial de los Operadores Lógicos en C#
Comparto mis notas
![](
Codigo de la Clase
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Operadores Logicos en C#");
bool value1 = true;
bool value2 = true;
bool value3 = false;
Console.WriteLine("The Valor1 is: " + value1);
Console.WriteLine("The Valor2 is: " + value2);
Console.WriteLine("The Valor3 is: " + value3);
bool result = value1 && value2 && value3;
Console.WriteLine("The result of the logical AND (y) is: " + result);
bool result2 = value1 || value2 || value3;
Console.WriteLine("The result of the logical OR (o) is: " + result2);
bool result3 = !value1;
Console.WriteLine("The result of the logical ! (Negacion) is: " + result3);
bool result4 = value1 ^ value3;
Console.WriteLine("The result of the logical XOR (Diferente) is: " + result4);
}
}
Operadores Lógicos
Acá no hay mucha variedad. Los operadores lógicos dan como resultado True o False y se pueden dar mediante tres operaciones:
&& -> AND : “ESTO Y AQUELLO se tienen que cumplir o morimos todos”
|| -> OR : “Si ESTO o AQUELLO pasa, morimos todos”
! -> NOT : “Esto NO ES ASÍ, es todo lo contrario”
"No entiendo, Maginer"
Ahí vamos, Timmy. Vamos con un ejemplo en código:
bool value1 = true;
bool value2 = false;
bool value3 = false;
bool value4 = true;
bool result1 = value1 && value2;
Console.WriteLine(result1);
// False
bool result2 = value1 && value4;
Console.WriteLine(result2);
// True
bool result3 = value1 || value4;
Console.WriteLine(result2);
// True
bool result3 = !value2;
Console.WriteLine(result3);
// True
Según la terminal result1 dará False. Por qué? Porque el operador && EXIGE que AMBOS resultados sean verdaderos, que TODAS las condiciones se cumplan (o morimos todos), mientras que || es más permisivo y le basta con que UNA CONDICIÓN SE CUMPLA (result3 = True). Por su lado el operador NOT, el !, simplemente da el resultado opuesto (value2 es False, así que NOT lo señala como True, algo así como “Puede ser que value2 NO SEA VERDADERO?” y no, no es verdadero, así que True).
Un ejemplo prático?
Si Timmy puso un mail válido (True) YYYY un nick disponible (True) podrá registrarse en Platzi (True)
Timmy se registró (True) pero NO confirmó su mail (False), lo que es obligatorio (&&), así que no podrá usar Platzi (False)
Si a Timmy le regalan el plan Expert OOO lo adquiere él, podrá ver todos los cursos de Platzi. Timmy no lo pagó (False) pero se lo regalaron (True), asi que puede usar Platzi al completo (True)
Timmy NO ES una referencia a los Simpsons? False. Entonces sí es una referencia a los Simpsons (True)
Console.WriteLine("Hello, World!");
bool value1 = true;
bool value2=true;
bool value3=false;
//&&,||,!
bool result = value1 && value2 && value3;
Console.WriteLine("The result of the logical AND is " + result);
bool result2 = value1 || value2 || value3;
Console.WriteLine("The result of the logical OR is " + result2);
bool result3 = !value3 ;
Console.WriteLine("The result of the logical ! is " + result3);
Le dejo este enlace que explica el origen y comportamiento de las operaciones lógicas Operaciones Logicas
Operadores lógicos:
&& = AND
|| = OR
! = NOT
Muy buena clase y muy clara
Los operadores lógicos en C# son utilizados para comparar y combinar valores booleanos. Los operadores lógicos disponibles en C# incluyen:
&&
(and): Devuelve verdadero si ambos operandos son verdaderos.||
(or): Devuelve verdadero si al menos uno de los operandos es verdadero.!
(not): Invierte el valor booleano del operando.^
(xor): Devuelve verdadero si sólo uno de los operandos es verdadero.Ejemplo:
bool a = true;
bool b = false;
bool c = (a && b); // c es false
bool d = (a || b); // d es true
bool e = !b; // e es true
bool f = (a ^ b); // f es true
bool resul = value1&& value2 && value3;
Console.WriteLine($"The result of logical AND is: {resul}");
bool resul2 = value1 || value2 || value3;
Console.WriteLine($"The result of logical OR is: {resul2}");
bool resul3 = !value3;
Console.WriteLine($"The result of logical ! is: {resul3}");
bool resul = value1&& value2 && value3;
Console.WriteLine($“The result of logical AND is: {resul}”);
bool resul2 = value1 || value2 || value3;
Console.WriteLine($“The result of logical OR is: {resul2}”);
bool resul3 = !value3;
Console.WriteLine($“The result of logical ! is: {resul3}”);
// && || ! operadores logicos
// un ejemplo de && , por ejemplo, es como una contrasenha, si no es todo true, te trae false, o en lenguaje humano, error. (definicion tecnica) se usa para validar si todos los caracteres son correctos.
// || el or puede usarse oara indentificar un true entre falses, si hay un true entre muchos , sale true, porque encontro, es como palabra clave. (definicion tecnica) se usar para validar si uno de los caracteres son correctos.
// ! es como psicologia inversa, se usa para encontrar la respuesta de manera inversa.(al menos asi lo entendi ahora)
(Comentario de Quique Olazarán) // Lo que comenta el profe Celis es muy interesante a la hora entender sobre operadores lógicos . Por ejemplo en los robots seguidores de línea (Los más básicos como el de la imagen) su objetivo es seguir una línea, puede ser color negro o blanco, sin salirse de la línea. 😃 . Se colocan 2 sensores infrarrojos en los extremos de la parte inferior frontal del robot 🤖 . Supongamos un ejemplo, el sensor de la derecha es sensor1 y el sensor de la izquierda es sensor2 y estos solo pueden tener dos valores: 0 (Linea negra) ⬛ y 1 (Linea blanca) ⬜. . Entonces… Se puedes hacer varias condiciones, para este ejemplo solo usaré el operador AND (&&), pero se pueden usar cualquiera de los operadores según tu lógica, por ejemplo: . Condición 1: Si sensor1 == 1 && sensor2 == 1 Entonces: Avanzar(); ⏭️ . Condición 2: Si sensor1 == 0 && sensor2 == 1 Entonces: Izquierda(); ⬅️ . Condición 3: Si sensor1 == 1 && sensor2 == 0 Entonces: Derecha(); ➡️ . Condición 4: Si sensor1 == 0 && sensor2 == 0 Entonces: Detenerse(); ⏹️ ❌
Es muy importante aprender los booleanos , a veces se usan bastante 😃
Un poco de mi avance
bool valor_1 = true;
bool valor_2 = false;
bool valor_3 = false;
//los operadores son &&, ||, !
bool result = valor_1 && valor_3;
bool result_2 = valor_1 || valor_2 || valor_3;
bool result_3 = !valor_1;
Console.WriteLine("El valor es: " + result + "\nEl valor 2 es: " + result_2 + "\nEl valor 3 es: "+ result_3);
Les dejo mi codigo:
using System;
namespace _11_OperadoresLogicos
{
class Program
{
static void Main()
{
bool value1 = true;
bool value2 = true;
bool value3 = false;
/*
**** Operadores ****
&& -> y
|| -> o
! -> Invierte elvalor original del bool
*/
bool resultAnd = value1 && value2 && value3; // true && true && false = false
Console.WriteLine($"result: { resultAnd }");
bool resultOr = value1 || value2 || value3; // true || true || false = true
Console.WriteLine($"result: { resultOr }");
bool result3 = !value1; // Invierte el valor original del bool
Console.WriteLine($"result: { result3 }"); // false
}
}
}
Esto es fácil de entender, y con el siguiente video se profundiza mas.
using System;
namespace LogicOperators
{
internal class Program
{
static void Main(string[] args)
//Operadores < > ==
{
bool greatherThan = 9 > 10;
bool lessThan = 9 < 10;
bool equalTo = 9 == 10;
Console.WriteLine($"9 > 10 {greatherThan}.\n9 < 10 {lessThan}.\n9 == 10 {equalTo}");
//Operadores && || !(diferente o negación)
bool greather = 9 > 10 || 9 > 3; //OR operator
bool less = 9 < 10 && 10 < 9; //AND operator
bool different = 9 != 10; //DIFFERENT operator
bool not = !different || !greather; //NOT operator with OR op. False + True = False
Console.WriteLine(
$"9 > 10 || 9 > 3 {greather} greather." +
$"\n9 < 10 && 10 < 9 {less} less" +
$"\n9 != 10 {different} different" +
$"\nNegation of (the opposite result) 9 != 10 || 9 > 10 || 9 > 3; {not}. " +
$"Because False + False = False." +
$"\nTo reach True it must be True + True = True (two conditions)"
);
}
}
}
El profe dice que esta “pensando”, acabamos de crear vida XD
static void Main(string[] args)
{
// varibles for the program
bool value1 = true;
bool value2 = false;
// &&, || and ! operators
// operator &&
// if value1 is true and value2 is false, the result is false
bool result1 = value1 && value2;
// operator ||
// if value1 is true or value2 is false, the result is true
bool result2 = value1 || value2;
// operator !
// if value1 is true, the result is false
bool result3 = !value1;
// output the results
Console.WriteLine("value1: " + value1);
Console.WriteLine("value2: " + value2);
Console.WriteLine("result && is: " + result1);
Console.WriteLine("result || is: " + result2);
Console.WriteLine("result ! is: " + result3);
// wait for user to press a key
Console.ReadKey();
}
El operador ! lo que hace es negar el valor de verdad de la variable (de tipo bool), si es falso al negarlo se convierte en verdadero y si es verdadero al negarlo lo convierte en falso.
!True = False
!False = True
using System;
namespace OperadoresLogicos
{
internal class Program
{
static void Main(string[] args)
{
//Probando todos los operadores lógicos
/* Operadores
* && = AND
* || = OR
* ! = NOT negación
*/
bool valor1 = true;
bool valor2 = false;
bool result = valor1 && valor2;
Console.WriteLine("El resultado logico AND es: " + result);
result = valor1 || valor2;
Console.WriteLine("El resultado logico OR es: " + result);
result = !valor1;
Console.WriteLine("La negacion de valor1 es: " + result);
result = !valor2;
Console.WriteLine("La negacion de valor2 es: " + result);
}
}
}
Salida:
Repasando ando
bool value1 = true;
bool value2 = true;
bool value3 = false;
//&& , || , !, ^
Console.WriteLine(
"The value of Value1 is: " + value1);
Console.WriteLine(
"The value of Value2 is: " + value2);
Console.WriteLine(
"The value of Value3 is: " + value3);
bool result = value1 && value2;
Console.WriteLine(
"The result of the Logical AND (value1 && value2) is: " + result + "\n " );
result = value1 && value2 && value3;
Console.WriteLine(
"The result of the Logical AND (value1 && value2 && value3) is: " + result + "\n ");
result = value1 || value2;
Console.WriteLine(
"The result of the Logical OR (value1 || value2) is: " + result + "\n ");
result = value1 || value2 || value3;
Console.WriteLine(
"The result of the Logical OR (value1 || value2 || value3) is: " + result + "\n ");
result = !value1;
Console.WriteLine(
"The result of the Logical NOT (!value1) is: " + result + "\n ");
result = !value3;
Console.WriteLine(
"The result of the Logical NOT (!value3) is: " + result + "\n ");
result = value1 ^ value2;
Console.WriteLine(
"The result of the Logical XOR (value1 ^ value2) is: " + result + "\n ");
result = value1 ^ value2 ^ value3;
Console.WriteLine(
"The result of the Logical XOR (value1 ^ value2 ^ value3) is: " + result + "\n ");
Tantos lenguajes de programacion, C# me parece interesante y breve.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?