안녕하세요, 여러분! 오늘은 프로그래밍 세계에서 빈번히 사용되는 조건문 OR 연산자에 대해 설명드릴 거예요. 매트랩(MATLAB)을 사용하다 보면 여러 조건을 결합해서 복잡한 로직을 구성해야 할 때가 많은데요, 이럴 때 OR 연산자가 유용하게 사용됩니다. 이 글을 읽으시면 매트랩의 OR 연산자에 대해 보다 명확하게 이해하고 쉽게 적용할 수 있을 거예요.
조건문 OR 연산자란?
조건문 OR 연산자는 두 개 이상의 논리식을 결합하여, 하나 이상의 조건이 참(True)일 때 전체 연산 결과를 참으로 만들어 주는 논리 연산자입니다. 매트랩에서는 OR 연산자를 사용하는 방법이 크게 두 가지가 있습니다: |
(비트단위 OR) 연산자와 ||
(논리 OR) 연산자입니다.
비트단위 OR 연산자(|)
비트단위 OR 연산자는 벡터나 행렬의 각 요소를 비교하여 두 요소 중 하나라도 1이면 결과가 1이 되는 방식입니다. 아래 예제를 통해 살펴보겠습니다:
a = [1 0 1];
b = [0 1 1];
result = a | b;
disp(result); % 출력: [1 1 1]
위 예제에서 a
와 b
라는 두 벡터의 요소들을 OR 연산하여 result
에 저장했습니다. **비트단위 OR 연산자는 각 요소별로 확인하여 적어도 하나가 참이면 참으로 결과가 나옵니다**.
논리 OR 연산자(||)
반면에 논리 OR 연산자 ||
는 스칼라 조건문에서만 사용할 수 있습니다. 이 연산자는 두 논리 값 중 하나라도 참이면 전체 결과를 참으로 돌려줍니다. 예를 들어 보겠습니다:
x = 5;
y = 10;
if x > 3 || y < 15
disp('조건 충족!'); % 출력: 조건 충족!
end
위의 경우, x > 3
이 참이기 때문에 '조건 충족!'
이 출력됩니다. **이처럼 논리 OR 연산자는 주로 if문과 같은 조건문에서 사용됩니다**.
OR 연산자 사용 예제
매트랩에서 OR 연산자를 활용한 몇 가지 예제를 살펴보겠습니다.
벡터 조건 결합
array = [1, 2, 3, 4, 5];
index = (array > 2) | (array < 5);
filtered = array(index);
disp(filtered); % 출력: [1 2 3 4 5]
여기서 우리는 array
의 요소가 2보다 크거나 5보다 작은 요소들을 필터링했습니다. **비트 OR 연산자를 사용하여 여러 조건을 결합함으로써 특정한 요소를 쉽게 선택할 수 있습니다**.
행렬 조건 결합
matrix = [1, 2; 3, 4];
result = matrix > 1 | matrix < 4;
disp(result); % 출력: [1 1; 1 1]
이 예제에서는 행렬의 각 요소가 1보다 크거나 4보다 작은지를 확인했습니다. **비트 OR 연산자를 사용하면 행렬 각 요소에 조건을 걸 수 있습니다**.
테이블에서의 OR 연산자 사용
매트랩에서는 테이블 데이터와 조건문을 함께 사용할 수 있습니다. 다음은 학생 데이터 테이블에서 특정 조건을 만족하는 학생들을 필터링하는 예입니다:
학생 이름 | 수학 점수 | 과학 점수 |
---|---|---|
홍길동 | 85 | 91 |
김철수 | 74 | 81 |
이영희 | 62 | 78 |
students = table({'홍길동'; '김철수'; '이영희'}, [85; 74; 62], [91; 81; 78], ...
'VariableNames', {'Name', 'MathScore', 'ScienceScore'});
selectedStudents = students(students.MathScore > 80 | students.ScienceScore > 80, :);
disp(selectedStudents);
여기서는 수학 점수나 과학 점수가 80점 이상인 학생들만 필터링하였습니다. 테이블과 OR 연산자를 결합해 데이터의 **조건 필터링을 손쉽게** 할 수 있습니다.
결론
지금까지 매트랩에서의 **조건문 OR 연산자** 사용법에 대해 알아보았습니다. 각종 연산에서 OR 연산자를 적절히 사용하면 복잡한 조건문도 간단하게 구현할 수 있습니다. 예제를 통해 OR 연산자가 다양한 경우에 어떻게 활용될 수 있는지 감이 오셨을 거라 생각합니다. 매트랩 프로그래밍에서 OR 연산자를 적극 활용해 보세요!