-
邏輯或
鎖定
- 中文名
- 邏輯或
- 外文名
- OR
- 別 名
- 邏輯相加
- 性 質
- 如果任意一個為真,輸出則為真
- 輸 入
- 0或1
邏輯或定義
如果任一操作數或兩個操作數為true,則邏輯“或”運算符 (||) 返回布爾值true;否則返回false。操作數在計算之前隱式轉換為類型bool,結果的類型為bool。兩個操作數可以是變量、常量和表達式。邏輯“或”具有從左向右的關聯性。
[2]
or運算符是||的等效文本。
邏輯“或”運算符的操作數不需要是同一類型,但是它們必須是整型或指針類型。操作數通常為關係或相等表達式。
第一個操作數將完全計算,並且在繼續計算邏輯“或”表達式之前將完成所有副作用。
僅當第一個操作數的計算結果為 false (0) 時計算第二個操作數。在邏輯“或”表達式為 true 時,這將消除對第二個操作數的不必要的計算。
在決定一事物的若干條件中,只要有一個條件能滿足時,結果就會出現;只有當所有條件都不滿足是,結果才不出現,這種因果關係就稱為“邏輯或”。
邏輯或真值表
A | B | ∨ |
真 | 真 | 真 |
真 | 假 | 真 |
假 | 真 | 真 |
假 | 假 | 假 |
邏輯或運算性質
結合律: A||(B||C)= (A||B)||C
交換律: A||B = B||A
分配律: A||(B∧C) = ((A||B)∧(A||C))
A∧(B||C) = ((A∧B)||(A∧C))
A||(B=C) = ((A||B)=(A||C))
冪等律: A||A = A
單調性: (A→B)→((C||A)→(C||B))
(A→B)→((A||C)→(B||C))
保真性:所有變量的真值皆為“真”的命題在邏輯或運算後的結果為真。
保假性:所有變量的真值皆為“假”的命題在邏輯或運算後的結果為假。
邏輯或示例
0 || 0 = 0;
1 || 0 = 1;
0 || 1 = 1;
1 || 1 = 1;
邏輯或應用拓展
邏輯或C/C++中|與|| 的區別
(1)||:表示邏輯或
邏輯或,是邏輯運算符,符號是“||”。表示當兩個條件中有任一個條件滿足,“邏輯或”的運算結果就為“真”。
(2)|:表示按位或
128: (0001 0000 0000)
127: (0000 1111 1111) (高位用0補齊)
按位或就是(0001 1111 1111)=255。
邏輯或邏輯表達式求值運算
C語言中進行邏輯表達式求值運算,不但要注意邏輯運算符本身的運算規則,而且還必須要遵循下面的兩條原則:
●對邏輯表達式從左到右進行求解。
●短路原則:在邏輯表達式的求解過程中,任何時候只要邏輯表達式的值已經可以確定,則求解過程不再進行,求解結束。
具體理解邏輯表達式運算規則時,可以採用這樣的步驟:
①找到表達式中優先級最低的邏輯運算符,以這些運算符為準將整個邏輯表達式分為幾個計算部分。
②從最左邊一個計算部分開始,按照算術運算、關係運算和邏輯運算的規則計算該部分的值。每計算完一個部分就與該部分右邊緊靠着的邏輯運算符根據真值表進行邏輯值判斷。