14.1 if
조건문
if
조건문은 조건식을 테스트하는 데 사용됩니다. test_expression
이TRUE
이면statement
가 실행됩니다. 하지만 FALSE
이면 아무 일도 일어나지 않습니다. 여기서 test_expression
은 논리형 벡터 또는 숫자형 벡터 일 수 있지만 첫 번째 요소 만 고려됩니다. 숫자형 벡터의 경우 0
은 FALSE
로, 나머지는 TRUE
로 간주됩니다.
if
조건문을 플로우 차트로 나타내면 다음과 같습니다.
if
조건문의 형식은 다음과 같습니다.
# if 조건문의 형식
if (test_expression) {
statement
}
다음은 벡터의 값이 음수인지 테스트하는 예입니다. 이if
문을 작성하는 방법에는 두 가지가 있습니다. 명령문의 본문은 한 줄이기 때문에 블럭을 나타내는 중괄호({}
)를 사용하거나 사용하지 않고 작성할 수 있습니다. 그러나 중괄호를 사용하는 습관을 들이는 것이 좋습니다. 이렇게하면 본문에 추가 함수가 있는 if
문을 작성하거나 나중에 else
문을 추가하면 예기치 않은 코드 절차와 관련된 문제가 발생하지 않습니다.
# 테스트할 벡터를 생성합니다.
<- c(8, 3, -2, 5)
x
# 명령문이 한 줄인 경우 중괄호 없이 if 조건문의 실행문을 작성할 수 있습니다.
if(any(x < 0)) print("x contains negative numbers") # x 요소 중 하나라도(any) 음수가 있다면 출력합니다.
## [1] "x contains negative numbers"
# 중괄호를 사용해도 같은 결과를 가져옵니다.
if(any(x < 0)){
print("x contains negative numbers")
}
## [1] "x contains negative numbers"
# 만일 조건문이 FALSE인 경우에는 어떠한 결과도 반환하지 않습니다.
<- c(8, 3, 2, 5) # y 요소가 모두 양수입니다.
y
if(any(y < 0)){ # any(y<0) 이 FALSE 입니다.
print("y contains negative numbers") # 이 명령문은 실행되지 않습니다.
}