티스토리 뷰

컴퓨터활용능력 2006년도 1회 필기 기출 문제 25번을 풀이한 것이다. 엑셀 바른 함수식 사용을 묻고있다. IF 함수를 주함수로 하여 다른 함수들의 중첩도 포함되어 있다. 이런 함수식 찾기는 문제를 제대로 이해하는 것이 가장 중요하다.

25. 아래의 시트에서 컴퓨터일반, 스프레드시트, 평균이 모두 60점 이상일 때에만 "양호"를 표시하고 나머지의 경우에는 "불량"을 표시하기 위한 수식으로 올바른 것은?

 [그림0] 컴활2급 기출풀이 2006년1회-25번 IF 함수 중첩



① =IF(OR(B2>=60, C2>=60, D2>=60), "양호", "불량")
② =IF(NOT(AND(B2>=60, C2>=60, D2>=60)), "양호", "불량")
③ =IF(NOT(OR(B2>=60, C2>=60, D2>=60)), "양호", "불량")
=IF(MIN(B2, C2, D2)>=60, "양호", "불량")

풀이:

문제를 간단히 표현하면 세 과목이 모두 60점 이상이면 '양호' 아니면 '불량' 을 반환하는 수식을 IF 함수를 중심으로 작성하라는 것이다. 점수를 비교하여 조건 처리하기에 IF 함수가 사용되었다.

엑셀 논리 함수 IF 로 조건 비교후 참 거짓 반환 :
http://secstart.tistory.com/682

비교 조건은 몇 개가 생기는가?

간단히 생각한다면 '컴퓨터일반' 이 60 이상인지, '스프레드시트' 가 60 이상인지, '평균' 이 60 이상인지를 비교하는 3개의 조건이 필요하다. 그리고 이 3가지 비교를 모두 만족하여야 하기에 AND 로 묶어준다. 모두 60 이상인지를 확인해야 하기 때문이다.

=IF( AND( B2>=60, C2>=60, D2>=60 ), "양호", "불량" ) 이런 수식이 완성되었다.

엑셀 AND 함수로 모든 조건의 만족(논리곱) 테스트 :
http://secstart.tistory.com/691

그런데 위의 보기에는 이와 같은 함수식이 보이지 않는다. 그럼 1번 보기부터 차례로 수식을 살펴보자.

[그림1] 엑셀 IF 함수의 중첩, 다중 비교 처리[그림1] 엑셀 IF 함수의 중첩, 다중 비교 처리



1번) 중첩된 OR 함수로 세 조건을 연결하였고 60 이상인지 비교하고 있다. 이는 1개 과목만 60점 이상이어도 참이 되어 양호를 반환한다. 따라서 틀린 답이다. OR 함수가 AND 로 바뀐다면 바른 답일 것이다.

엑셀 OR 함수로 논리합의 조건 만족 테스트 :
http://secstart.tistory.com/692

2번) 위에서 작성한 수식을 NOT 함수로 중첩하였다. '모두가 60점 미만이라면' 과 같은 조건이 된다. AND 앞의 NOT 함수를 없애거나 '양호' 와 '불량' 의 위치를 바뀌어야 바른 답이 될 것이다. 이대로라면 정답과는 반대의 답이 보여질 것이다.

엑셀 NOT 함수로 논리 부정 반환하기 :
http://secstart.tistory.com/693

3번) =IF( NOT( OR( B2<60, C2<60, D2<60 ) ), "양호", "불량" ) 과 같이 보기의 수식에서 3개의 비교 조건식이 이상을 묻지 않고 미만을 묻는다면 바른 답이 된다. '3개의 조건중 하나라도 60점 미만이 아니라면' 은 '모두가 60 이상이라면' 과 동일한 물음이기 때문이다.

4번) 이 보기를 살펴보면 MIN 이란 함수가 보인다. MIN 함수는 인수들 중 최소값을 찾는 함수이다. MIN(B2, C2, D2) 함수식이 최소값을 찾고 그 값을 IF 함수로 '>=60' 인지 비교한다. 3개의 과목 중 가장 작은 값이 60 이상이라는 것은 모두가 60 이상이라는 의미다. 질문과 일치하는 함수식을 가진 정답이다.

엑셀 MIN 함수로 최소값 계산하기 - 통계 :
http://secstart.tistory.com/759

이 문제에서 배워야 할 것은 이것이다. 같은 값과 비교되는 여러 셀 값들은 4번 보기와 같이 최소값이나 최대값으로 중첩 처리하여 비교한다면 3개를 모두 비교할 필요가 없어진다는 것이다.

참고1 : 사용된 함수 요약

- IF(조건, 인수1, 인수2) : 조건을 비교하여 참이면 인수1, 거짓이면 인수2를 반환
- NOT(인수) : 인수와 반대되는 논리값을 표시함
- AND(인수1, 인수2, …) : 인수가 모두 참이어야 참( TRUE ), 인수중 하나라도 거짓이면 거짓
- OR(인수1, 인수2, …) : 인수가 모두 거짓이어야 거짓( FALSE ), 인수 중 하나라도 참이면 참
- MIN( 인수1, 인수2, ... ) : 인수 중 최소값 반환

정답 : 4번

[필기 풀이] 컴활2급 기출문제 2006년1회-24번 엑셀 그리기 도구 :
http://secstart.tistory.com/785

마늘빵.


댓글