programing

& & 로직 및 | 로직테이블의 True와 False

sourcetip 2023. 1. 20. 17:46
반응형

& & 로직 및 | 로직테이블의 True와 False

C 언어 표 true/false

C Language에 대해 true false라는 표를 들어본 적이 있습니다.또한 ||는 true+true=true와 false+true=false라고 하는 수학의 일종입니다.

좀 헷갈려서 조사를 해보려고 했는데 표를 찾을 수가 없었어요

C언어로 더 많이 할 것이기 때문에 이 표가 제 노트용이었으면 좋겠습니다.

만약 누군가가 사이트나 자료로 나를 데려와 이것에 대해 더 많이 설명해 준다면


저는 원래 질문을 제가 공부할 수 있는 메모로 수정했습니다.훌륭한 레퍼런스 및 기타 훌륭한 답변/리소스에 대해 @thiton 。

논리 AND(&)

false && false: false

false && true: false

true && false: false

true && true: true

논리 OR(||)

false || false: false

false || true: true

true || false: true

true || true: true

논리 없음(!)

!false: true

!true: false

보통 부울 연산자(&, ||)의 결과를 표시하는 부울 연산자의 진실 테이블을 의미합니다.이 표는 특정 언어에 한정되지 않지만 여기서 찾을 있습니다.

부울 대수를 생각하시는군요

진실 값은 부울 대수를 사용하여 설명할 수 있습니다.이 문서에는 다음 표도 포함되어 있습니다.and그리고.or. 이것은 시작하거나 더 혼란스럽게 만드는 데 도움이 될 것입니다.

당신은 부울 변수에 대해 수행된 다양한 연산의 출력을 설명하는 부울 대수를 요구한다고 생각합니다.위키피디아 기사를 보세요.

이미 좋은 답변에 추가하겠습니다.

불 대수에서 논리연산자 OR, and, AND, and, NOT의 일부 오래된 교과서에서 기호 '+', '*', '-'는 줄임말로 사용되기도 한다.물론 C/C++에서는 "and", "&" 및 "or", |" 및 "not"을 사용합니다.

주의: "true + true"는 true와 false의 내부 표현을 통해 C/C++에서 2로 평가되며, 암묵적인 캐스트는 int!

int main ()
{
  std::cout <<  "true - true = " << true - true << std::endl;
// This can be used as signum function:
// "(x > 0) - (x < 0)" evaluates to +1 or -1 for numbers.
  std::cout <<  "true - false = " << true - false << std::endl;
  std::cout <<  "false - true = " << false - true << std::endl;
  std::cout <<  "false - false = " << false - false << std::endl << std::endl;

  std::cout <<  "true + true = " << true + true << std::endl;
  std::cout <<  "true + false = " << true + false << std::endl;
  std::cout <<  "false + true = " << false + true << std::endl;
  std::cout <<  "false + false = " << false + false << std::endl << std::endl;

  std::cout <<  "true * true = " << true * true << std::endl;
  std::cout <<  "true * false = " << true * false << std::endl;
  std::cout <<  "false * true = " << false * true << std::endl;
  std::cout <<  "false * false = " << false * false << std::endl << std::endl;

  std::cout <<  "true / true = " << true / true << std::endl;
  //  std::cout <<  true / false << std::endl; ///-Wdiv-by-zero
  std::cout <<  "false / true = " << false / true << std::endl << std::endl;
  //  std::cout <<  false / false << std::endl << std::endl; ///-Wdiv-by-zero

  std::cout <<  "(true || true) = " << (true || true) << std::endl;
  std::cout <<  "(true || false) = " << (true || false) << std::endl;
  std::cout <<  "(false || true) = " << (false || true) << std::endl;
  std::cout <<  "(false || false) = " << (false || false) << std::endl << std::endl;

  std::cout <<  "(true && true) = " << (true && true) << std::endl;
  std::cout <<  "(true && false) = " << (true && false) << std::endl;
  std::cout <<  "(false && true) = " << (false && true) << std::endl;
  std::cout <<  "(false && false) = " << (false && false) << std::endl << std::endl;

}

수율:

true - true = 0
true - false = 1
false - true = -1
false - false = 0

true + true = 2
true + false = 1
false + true = 1
false + false = 0

true * true = 1
true * false = 0
false * true = 0
false * false = 0

true / true = 1
false / true = 0

(true || true) = 1
(true || false) = 1
(false || true) = 1
(false || false) = 0

(true && true) = 1
(true && false) = 0
(false && true) = 0
(false && false) = 0

언급URL : https://stackoverflow.com/questions/7583853/true-and-false-for-logic-and-logic-table

반응형