Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 論理演算子 | 制御構造
C#の基礎

book論理演算子

メニューを表示するにはスワイプしてください

論理演算子は、2つの論理式または論理値を組み合わせるために使用されます。以下の3つの論理演算子があります。

注意

オペランドとは、文や式の中で演算子の入力として使用される値または式を指します。例えば、式 1 + 2 では、値 12 がオペランドです。論理演算子の場合、オペランドは常にブール式またはブール値となります。

これらのオペランドの使用例は、以下の例で確認できます。

それでは、実際に使ってみましょう:

AND(&&)演算子は2つのオペランドを取り、両方のオペランドがtrueの場合にのみtrueを返します。以下のコードで示されています。

main.cs

main.cs

copy
123456789101112131415
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { Console.WriteLine(true && true); // Output: True Console.WriteLine(true && false); // Output: False Console.WriteLine(false && true); // Output: False Console.WriteLine(false && false); // Output: False } } }

true および false のリテラル(値)を直接使用する代わりに、一般的に式を使用。

main.cs

main.cs

copy
123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { /* A program to check if the variable `value` is in the range specified by `range_start` and `range_end` variables.*/ int value = 7; int range_start = 0; int range_end = 10; Console.WriteLine(range_start < value && value < range_end); // Output: True } } }

OR(||)演算子は、いずれかのオペランドがtrueの場合にtrueを返します。

main.cs

main.cs

copy
123456789101112131415
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { Console.WriteLine(true || true); // Output: True Console.WriteLine(true || false); // Output: True Console.WriteLine(false || true); // Output: True Console.WriteLine(false || false); // Output: False } } }

以下は、OR(||)演算子を使用した例です。

main.cs

main.cs

copy
12345678910111213141516
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int val1 = 5; int val2 = 7; int val3 = 9; Console.WriteLine(val2 > val1 || val2 > val3); // Output: True } } }

NOT(!)演算子は、論理式または論理値を単純に否定(反転)します。したがって、式が true を返す場合、それを false に変換します。

main.cs

main.cs

copy
1234567891011121314151617
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { Console.WriteLine(!true); // Output: False Console.WriteLine(!false); // Output: True // We need to enclose expressions in brackets () before negating them Console.WriteLine(!(5 < 0)); // Output: True Console.WriteLine(!(0 < 5 && 5 < 10)); // Output: False } } }
question mark

(0 < 5 || 5 < 10) は何と等しいですか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 3.  2

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 3.  2
some-alt