C++에서 여러 조건으로 if 문 구현

Aditya Raj 2023년10월12일
  1. C++에서 여러 조건이 있는 if 문 구현
  2. C++에서 && 논리 연산자를 사용하여 여러 조건으로 if 문 구현
  3. ||를 사용하여 여러 조건으로 if 문을 구현합니다. C++의 논리 연산자
  4. &&||를 사용하여 여러 조건으로 if 문 구현 C++의 논리 연산자
  5. 결론
C++에서 여러 조건으로 if 문 구현

C++ 논리 연산자 && 또는 ||if 문에서 여러 조건을 동시에 확인하는 데 사용할 수 있습니다.

이 기사에서는 관련 예제와 함께 C++에서 여러 조건이 포함된 if 문을 사용하는 방법에 대해 자세히 설명합니다.

C++에서 여러 조건이 있는 if 문 구현

C++에서는 두 가지 방식으로 여러 개의 if 문을 가질 수 있습니다. 다른 조건을 확인하기 위해 하나의 프로그램에 중첩된 if 문과 여러 개의 if 문이 있을 수 있습니다.

두 가지 경우에 대해 자세히 살펴보겠습니다.

중첩된 if 문을 사용하여 여러 조건을 확인해야 하는 상황이 있을 수 있습니다. 예를 들어 숫자가 45에서 60 사이인지 확인하고 싶다고 가정합니다.

중첩된 if 문을 사용하여 주어진 조건을 확인하는 코드는 다음과 같습니다.

// C++ program demonstrating nested if-statement

#include <iostream>
using namespace std;

int main() {
  cout << "Enter a number: ";
  int num;
  cin >> num;

  if (num > 45) {
    if (num < 60) {
      cout << "Entered number is between 45 and 60";
    }

    else {
      "Entered number is not in between 45 and 60";
    }
  }

  else
    cout << "Entered number is not in between 45 and 60";

  return 0;
}

여기서 우리는 중첩된 if 문 형태로 모든 조건에 대해 하나의 if 문을 사용했습니다. 중첩된 if 문에서는 더 긴 코드를 작성해야 합니다.

대신 단일 if 문에서 여러 개의 논리 && 연산자를 사용하여 코드를 더 간단하게 만들고 불필요한 코드 줄을 작성하지 않도록 할 수 있습니다.

C++에서 && 논리 연산자를 사용하여 여러 조건으로 if 문 구현

C++에서 여러 조건을 확인하기 위해 논리 && 연산자와 함께 if 문을 사용하는 방법에 대해 논의해 보겠습니다.

논리 연산자 &&는 이항 연산자입니다. 두 개의 부울 값 또는 부울 값을 피연산자로 평가하는 표현식을 사용합니다.

실행 후 이 연산자는 if 문의 모든 피연산자가 참이면 참을 반환합니다. 그렇지 않으면 false를 반환합니다.

예를 들어 다음 코드에서 (num_1 < num_2)(num_2 > num_3) 조건이 모두 true로 평가되면 && 연산자가 true를 반환하고 if 블록 내부의 명령문이 실행됩니다. . 피연산자가 거짓이면 전체 표현식이 거짓으로 평가되고 if 블록 내부의 코드가 실행되지 않습니다.

int num_1 = 5;
int num_2 = 12;
int num_3 = 10;

if( (num_1 < num_2) && (num_2 > num_3) //if condition1 "and" condition2 is true
   {
  statement_1;  // then execute the statements
  statement_2;
  ..............statement_n;
    }

숫자가 45와 60 사이인지 확인하기 위해 if 문에서 논리 연산자 &&를 사용하는 다음 예제를 고려하십시오.

// C++ program demonstrating the use of Logical "and" (&&) operator

#include <iostream>
using namespace std;

int main() {
  cout << "Enter a number: ";
  int num;
  cin >> num;

  if (num > 45 && num < 60)
    cout << "Entered number is between 45 and 60";
  else
    cout << "Entered number is not in between 45 and 60";

  return 0;
}

위의 예에서 논리 연산자 &&는 주어진 숫자가 45보다 큰지 또는 60보다 작은지 확인합니다. 두 피연산자가 모두 참이면 if 조건 아래의 명령문이 실행되고 출력은 다음과 같습니다.

Entered number is between 45 and 60

피연산자 결과 중 하나라도 false이면 else 섹션 아래의 명령문이 실행되고 출력은 다음과 같습니다.

Entered number is not in between 45 and 60

논리 && 연산자에서는 거짓일 확률이 높은 조건이 첫 번째 피연산자로 선호됩니다. 피연산자 중 하나라도 거짓이면 표현식의 다른 피연산자가 검사되지 않으므로 프로그램의 계산 시간이 단축됩니다.

따라서 계산 시간을 줄이기 위해서는 if 조건에서 실패 확률이 높은 피연산자를 먼저 선언해야 합니다.

위의 예에서는 if문의 모든 표현이 참인지 확인해야 했습니다. 그러나 조건 중 하나가 참인지 확인만 하면 되는 상황이 있을 수 있습니다.

예를 들어, 주사위를 던져서 2 또는 5가 나오면 게임에서 이기는 주사위 예를 생각해 보십시오.

#include <iostream>
using namespace std;

int main() {
  cout << "Enter number on the dice: ";
  int num_1;
  cin >> num_1;

  if (num_1 == 2) {
    cout << "Game is Won";
    return 0;
  }

  if (num_1 == 5) {
    cout << "Game is Won";
    return 0;
  }

  else
    cout << "Game is Lost";

  return 0;
}

여기서 (num_1 == 2)(num_1 == 5) 조건 중 하나라도 참이면 Game is Won입니다. 이러한 경우 논리 ||를 사용할 수 있습니다. C++에서 여러 if 문 대신 연산자.

||를 사용하여 여러 조건으로 if 문을 구현합니다. C++의 논리 연산자

||를 사용하여 토론해 봅시다. 여러 if문 대신 연산자.

논리 || 연산자(||)도 이진수입니다. 두 개의 부울 값 또는 부울 값을 피연산자로 평가하는 표현식을 사용합니다.

실행 후 이 연산자는 if 문의 피연산자가 참이면 참을 반환합니다. 그렇지 않으면 false를 반환합니다.

|| 구문에 대해 논의해 봅시다. 예제의 도움으로 if 문의 연산자:

int num_1;
int num_2;
int num_3;

if ((num_1 == 0) || (num_2 == 0) || (num_3) == 0)  // if any condition is true
{
  statement_1;  // then execute the statements
  statement_2;
  ..............statement_n;
}

여기서 전체 표현식 (num_1 == 0) || (num_2 == 0) || (num_3)==0) 조건 (num_1 == 0), (num_2 == 0)(num_3 == 0) 중 하나가 참으로 평가되면 참으로 평가됩니다. if 블록 내의 명령문이 평가됩니다.

모든 표현식이 false로 평가되면 전체 표현식은 false로만 평가됩니다. if 문 내부의 문은 실행되지 않습니다.

논리 ||를 사용하여 설명하는 다음 예를 고려하십시오. C++에서 여러 if문 대신 연산자.

// C++ program demonstrating the use of Logical "or" (||) operator

#include <iostream>
using namespace std;

int main() {
  cout << "Enter number on the dice: ";
  int num_1;
  cin >> num_1;

  if (num_1 == 2 || num_1 == 5)
    cout << "Game is Won";
  else
    cout << "Game is Lost";

  return 0;
}

이 예에서 || 연산자는 주어진 숫자가 2인지 5인지 확인합니다. 피연산자가 참이면 if 조건 아래의 명령문이 실행되고 Game is won이 됩니다.

모든 피연산자가 거짓으로 평가되면 else 섹션 아래의 명령문이 실행되고 Game is lost가 실행됩니다.

참일 확률이 가장 높은 조건이 첫 번째 피연산자에 언급되어야 합니다. 피연산자 결과 중 하나라도 true이면 if 조건이 true이고 나머지 조건은 확인되지 않습니다.

이러한 방식으로 프로그램의 계산 시간을 줄일 수 있습니다.

두 논리 연산자는 모두 왼쪽 결합입니다. 따라서 왼쪽에서 오른쪽 순서로 실행됩니다. 그러나 && 두 번째 피연산자는 첫 번째 피연산자가 false인 경우 평가되지 않습니다.

||에서 첫 번째 피연산자가 참이면 두 번째 피연산자는 평가되지 않습니다.

&&||를 사용하여 여러 조건으로 if 문 구현 C++의 논리 연산자

&&||를 사용할 수도 있습니다. 단일 if 문에서 C++에서 여러 조건을 확인합니다. 여러 조건을 확인하기 위해 하나의 if 문에서 두 연산자를 모두 사용할 때 올바른 순서로 평가를 수행해야 합니다.

우선 순위가 가장 높은 연산자는 식에서 첫 번째 피연산자와 함께 그룹화됩니다. 그런 다음 다음으로 높은 연산자가 피연산자와 그룹화됩니다.

논리 연산자의 우선 순위는 다음 표에 설명되어 있습니다.

논리 연산자 상위
아니다 (!) 높은
그리고 (&&) 중간
또는(`

표에서 다음을 확인할 수 있습니다.

  • 논리 ! 연산자는 식에서 가장 높은 우선 순위를 가지며 먼저 평가됩니다.
  • 논리 && 연산자는 식에서 중간 우선 순위를 가지며 ! 다음에 평가됩니다. 운영자.
  • 논리 || 연산자는 표현식에서 가장 낮은 우선 순위를 가지며 && 연산자 다음에 평가됩니다.

더 나은 이해를 위해 다음 코드를 고려하십시오.

if (num > 45 || num < 60 && num != 100) {
  cout << num;
}

num = 50을 고려하면 위 코드의 결과는 다음과 같은 이유로 참입니다.

  1. 숫자 < 60 && 숫자 ! = 100&&의 우선 순위가 높기 때문에 평가됩니다. 이 평가는 사실일 것입니다.
  2. 표현식 ( num > 45 || TRUE )가 평가되고 최종적으로 true가 됩니다.

결론

이 기사에서는 C++에서 여러 조건이 있는 if문의 사용에 대해 논의했습니다. if 문에서 논리 연산자의 구문, 진리표, 결합성 및 우선 순위 순서에 대해 몇 가지 예와 함께 자세히 배웠습니다.

작가: Aditya Raj
Aditya Raj avatar Aditya Raj avatar

Aditya Raj is a highly skilled technical professional with a background in IT and business, holding an Integrated B.Tech (IT) and MBA (IT) from the Indian Institute of Information Technology Allahabad. With a solid foundation in data analytics, programming languages (C, Java, Python), and software environments, Aditya has excelled in various roles. He has significant experience as a Technical Content Writer for Python on multiple platforms and has interned in data analytics at Apollo Clinics. His projects demonstrate a keen interest in cutting-edge technology and problem-solving, showcasing his proficiency in areas like data mining and software development. Aditya's achievements include securing a top position in a project demonstration competition and gaining certifications in Python, SQL, and digital marketing fundamentals.

GitHub

관련 문장 - C++ Operator