본문 바로가기

국비교육/국비교육 복습

Day03_condition_Test02 : if ~ else 조건문

(Q) NCS 능력단위인 프로그래밍 언어 활용 평가를 진행했습니다

서술형, 문제해결 시나리오 두 과목을 응시한 학생의 점수가 다음과 같습니다

- 서술형 : 85점

- 문제해결 시나리오 : 52점

평균 60점 이상이면 통과라고 했을 때, 이 학생이 통과인지 재시험인지 판정하여 출력

(true, false가 아닌 글자로 결과가 출력되도록 조건을 구현하세요)

 

package day03;

import java.lang.*;

public class Day03_condition_Test02 {

	public static void main(String[] args) {

		int test1 = 85;
		int test2 = 52;
		
		double avg = (test1 + test2) / 2.0;
        
		if(avg >= 60) {
			System.out.println("통과");
		}

		if(avg < 60) {
			System.out.println("재시험");
		}
        
	}

}

 

1) 평균 구하기

- 평균은 항상 정수로 나오지는 않는다 (예를 들어 a = 1, b = 2일 때 평균은 1.5)

- 따라서 평균 변수 avg를 선언할 때 실수형을 사용해야 한다

 

2) boolean을 통해 if의 조건문을 간략화할 수 있다

- boolean 변수 avgTF를 'avg가 60점을 넘는다'로 선언하여 avgTF가 true인지와 그렇지 않다면(else)로 쓸 수 있다

- if의 조건부에 boolean 변수를 이용할 때 산술연산자인 '같다(==)'를 사용한다

 

3) if문과 else문을 사용하면 조건식을 2번 쓰지 않아도 된다

- if(조건) {} 에서 조건을 만족하지 않는다면 else(그 외 나머지)에서 출력이 이루어진다

boolean avgTF = avg >= 60;

if(avgTF == true) {
	System.out.println("통과");
}

else {
	System.out.println("재시험);
}