✅ 중첩 IF문 (Nested IF)이란?

한 조건이 참일 때, 그 안에서 또 다른 조건을 검사하는 구조다.
즉, 조건 안에 조건이 있는 구조!


📌 기본 구조

IF 조건1.
  IF 조건2.
    " 조건1 AND 조건2가 모두 참일 때 실행
  ELSE.
    " 조건1은 참이지만, 조건2는 거짓일 때 실행
  ENDIF.
ELSE.
  " 조건1이 거짓일 때 실행
ENDIF.

💡 예제 코드

 
DATA: surname  TYPE c LENGTH 10,
      forename TYPE c LENGTH 10.

surname  = 'SMITH'.
forename = 'JOHN'.

IF surname = 'SMITH'.
  IF forename = 'JOHN'.
    WRITE: 'You won a CAR!'.
  ELSE.
    WRITE: 'So close!'.
  ENDIF.
ELSE.
  WRITE: 'Better luck next time!'.
ENDIF.

 

출력:
You won a CAR!


✅ 포인트 정리


Nested IF IF 안에 또 다른 IF문을 넣는 구조
조건 분기 강화 가능 이름이 SMITH이고, 이름이 JOHN일 때만 등 복잡한 조건 검사 가능
Endif 중요 각각의 IF에는 반드시 ENDIF.가 있어야 해요
얼마든지 중첩 가능 2단, 3단 이상 중첩도 가능하지만 가독성은 주의해야 함

🔁 중첩 vs 논리연산자

 
IF surname = 'SMITH' AND forename = 'JOHN'. WRITE: 'CAR!'. ENDIF.

이렇게 논리 연산자(AND) 를 쓰면 중첩 없이도 가능하지만,
중간에 다른 조건별 분기 처리를 하고 싶을 땐 중첩 IF가 유리할 수 있다.

+ Recent posts