複製鏈接
請複製以下鏈接發送給好友

邏輯或

鎖定
邏輯運算符包含邏輯與、或、異或、非等邏輯運算符。
對於邏輯或,如果一個操作數或多個操作數為 true,則邏輯或運算符返回布爾值 true;只有全部操作數為false,結果才是 false [1] 
中文名
邏輯或
外文名
OR
別    名
邏輯相加
性    質
如果任意一個為真,輸出則為真
輸    入
0或1

邏輯或定義

如果任一操作數或兩個操作數為true,則邏輯“或”運算符 (||) 返回布爾值true;否則返回false。操作數在計算之前隱式轉換為類型bool,結果的類型為bool。兩個操作數可以是變量、常量和表達式。邏輯“或”具有從左向右的關聯性。 [2] 
or運算符是||的等效文本。
邏輯“或”運算符的操作數不需要是同一類型,但是它們必須是整型或指針類型。操作數通常為關係或相等表達式。
第一個操作數將完全計算,並且在繼續計算邏輯“或”表達式之前將完成所有副作用。
僅當第一個操作數的計算結果為 false (0) 時計算第二個操作數。在邏輯“或”表達式為 true 時,這將消除對第二個操作數的不必要的計算。
在決定一事物的若干條件中,只要有一個條件能滿足時,結果就會出現;只有當所有條件都不滿足是,結果才不出現,這種因果關係就稱為“邏輯或”。
圖1 圖1
如圖1所示兩個開關並聯電燈電路中,兩個開關S1、S2中只要有一個閉合時,電燈EL就會亮起;只有兩個開關都不閉合,電燈EL才不會亮。 [3] 

邏輯或真值表

A或B的真值表(也寫作A∨B(邏輯學),A || B(計算機科學),或A + B(電子學))。 [3] 
A
B

邏輯或運算性質

邏輯或滿足以下性質: [4] 
結合律: 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)|:表示按位或
按位或運算符“|”是雙目運算符。其功能是參與運算的兩數各對應的二進位相或。只要對應的二個二進位有一個為1時,結果位就為1。 [5] 
128: (0001 0000 0000)
127: (0000 1111 1111) (高位用0補齊)
按位或就是(0001 1111 1111)=255。

邏輯或邏輯表達式求值運算

C語言中進行邏輯表達式求值運算,不但要注意邏輯運算符本身的運算規則,而且還必須要遵循下面的兩條原則:
●對邏輯表達式從左到右進行求解。
●短路原則:在邏輯表達式的求解過程中,任何時候只要邏輯表達式的值已經可以確定,則求解過程不再進行,求解結束。
具體理解邏輯表達式運算規則時,可以採用這樣的步驟:
①找到表達式中優先級最低的邏輯運算符,以這些運算符為準將整個邏輯表達式分為幾個計算部分。
②從最左邊一個計算部分開始,按照算術運算、關係運算和邏輯運算的規則計算該部分的值。每計算完一個部分就與該部分右邊緊靠着的邏輯運算符根據真值表進行邏輯值判斷。
③如果已經能夠判斷出整個邏輯表達式的值則停止其後的所有計算;只有當整個邏輯表達式的值還不能確定的情況下才進行下一個計算部分的計算。 [2] 
參考資料
  • 1.    黃龍泉,王磊,林程華. MySQL數據庫原理及應用:中國鐵道出版社 ,2017.2:98
  • 2.    熊壯.C語言程序設計基礎 第2版:重慶大學出版社,2016.8:41
  • 3.    閻石.數字電子技術基礎: 高等教育出版社 ,2006.5
  • 4.    胡禮和.一級考試:計算機基礎及應用:華中理工大學出版社,1994.6:14
  • 5.    胡學鋼.C程序設計:安徽大學出版社,2016.2:203