コンピューター プログラミングにおける論理演算子は、特定の条件の値に基づいてプログラム フローを制御するために使用される演算子です。オペランドは、true または false をもたらす条件値とみなすことができます。演算子は論理演算子と呼ばれますが、その使用はブール値に限定されず、すべての型で使用できます。論理演算子の主な機能は、関係ステートメントを条件値に変換することです。 C# では、論理演算子は 2 つ以上のオペランドに対して論理演算を実行するために使用されます。
これらの論理演算には、論理 AND、論理 OR、論理 NOT が含まれます。論理演算子は、論理条件演算子としても関係条件演算子としても使用でき、物理値またはブール値としてのオペランド値の使用は、操作での論理演算子の使用によって決まります。論理演算子は、論理 GATE 操作の基本的な変換であり、対応する論理 GATE のロジックに従います。
以下では、C# の上位 4 つの論理演算子について詳しく説明します。
論理 AND 演算子は、両方のオペランドの値が true である場合に true と評価されます。つまり、論理 AND 演算の値は、演算で使用されるオペランド自体が true と評価される場合にのみ true となります。 AND の論理演算は、2 つのアンパサンド && を使用して表されます。
Name | Description | Syntax | Symbol |
Logical AND | The logical operation yields true if and only if the value of the operand in non zero | a && b | && |
真理値表:
Logical AND | ||
A | B | OUTPUT |
TRUE | TRUE | TRUE |
TRUE | FALSE | FALSE |
FALSE | TRUE | FALSE |
FALSE | FALSE | FALSE |
Name | Description | Syntax | Symbol |
Logical OR | The logical operation yields true if the value of any of its operand in non zero. | a || b | || |
出力
Logical OR | ||
A | B | OUTPUT |
TRUE | TRUE | TRUE |
TRUE | FALSE | TRUE |
FALSE | TRUE | TRUE |
FALSE | FALSE | FALSE |
論理 NOT の物理的存在は否定原理に基づいています。論理 NOT 演算子は、その名前が示すように、主オペランドを論理的に反対の値に否定する場合に使用されます。
Name | Description | Syntax | Symbol |
Logical NOT | The logical operation yields true if the value of the operand is zero or False. | !a | ! |
論理 XOR 条件は、演算の両方のオペランドの値が等しくない場合にのみ true と評価されます。これは記号 ^ で表されます。これは、オペランドの同等性に基づいて分離が必要な条件で広く使用されています。
Name | Description | Syntax | Symbol |
Logical Exclusive OR | The logical operation yields true if the value of both of its operands is unequal. | a^ b | ^ |
真理値表:
Logical XOR | ||
A | B | OUTPUT |
TRUE | TRUE | FALSE |
TRUE | FALSE | TRUE |
FALSE | TRUE | TRUE |
FALSE | FALSE | FALSE |
論理積の例
以下は、C# の論理 AND 演算子の例です。using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int X = 11, Y = 10; bool logicalAND; // AND operator logicalAND = (X <= Y) && (X > 10); Console.WriteLine(" Result of AND Operation : " + logicalAND); Console.WriteLine("Press enter to Exit"); Console.ReadLine(); } } }
例 #1
コード:出力:
AND 演算の真の値は、y の値を変更すると得られます。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int x = 11, y = 20; bool logicalAND; logicalAND = (x <= y) && (x > 10); Console.WriteLine(" Result of AND Operation : " + logicalAND); Console.WriteLine("Press enter to Exit.."); Console.ReadLine(); } } }
例 #2
コード:出力:
論理和の例
以下は、C# の論理 OR 演算子の例です。using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int X = 11, Y = 20; bool logicalOR; // AND operator logicalOR = (X >= Y) || (X < 8); Console.WriteLine(" Result of OR Operation : " + logicalOR); Console.WriteLine("Press enter to Exit"); Console.ReadLine(); } } }
例 #1
コード:出力:
両方の論理オペランドが false の値に評価されるため、これは False に評価されます。 OR 演算子が実際に発生することを示すために、X の値を 21、つまり Y より大きい値に変更してみましょう。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int X = 21, Y = 20; bool logicalOR; // AND operator logicalOR = (X >= Y) || (X < 8); Console.WriteLine(" Result of OR Operation : " + logicalOR); Console.WriteLine("Press enter to Exit"); Console.ReadLine(); } } }
例 #2
コード:出力:
論理 NOT の例
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { bool a = true, logicalNOT; logicalNOT = !a; Console.WriteLine(" Result of NOT Operation : " + logicalNOT); Console.WriteLine("Press enter to Exit"); Console.ReadLine(); } } }
次に、C# の論理 NOT 演算子の例を示します。
コード:出力:
排他的論理和の例
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int X = 21, Y = 22; bool logicalXOR; logicalXOR = (X > Y) ^ (X < 22); Console.WriteLine(" Result of XOR Operation : " + logicalXOR); Console.WriteLine("Press enter to Exit"); Console.ReadLine(); } } }
以下は、C# の論理排他的 OR 演算子の例です。
コード:出力:
これにより、X > の値として true が得られます。 Y オペランドは false で、X 結論 上記の例から、C# のさまざまな論理演算子がわかりました。論理演算子の主な用途は意思決定フロー図であり、オペランドのステータスに基づく条件付き意思決定で使用されます。 AND、OR、NOT 演算子は条件評価で使用される伝統的な論理演算子ですが、XOR はむしろ最新の演算子です。論理演算子という用語は、論理演算子を含むすべての演算の出力がブール値、つまり true または false であるという事実に由来しています。
以上がC# の論理演算子の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。