들어가기 전에
우리가 참외를 수확해서 팔기 전에 검사하는 일을 하고 있다고 해 봅시다.
물에 뜨는 참외만 상품성이 있기 때문에 수확한 참외는 분류를 해야 합니다.
물에 뜨는 참외는 잘 포장해서 소비자에게 팔고, 물에 가라앉는 참외는 폐기해야 합니다.
이렇게 참외의 상품성에 따라 다르게 작업을 처리해야 하는 것처럼
우리도 조건에 따라 일을 다르게 처리해야 할 때가 있습니다.
학습 목표
조건문을 이용해서 문제를 해결해 봅니다.
핵심 단어
강의 듣기
조건문
제어문은 프로그램의 실행 과정을 조건에 따라 바꾸는 것입니다.
서울 지하철을 예로 들어 보면 같은 길로 가던 1호선 열차도 방향에 따라 구로역에서 인천 방향과 천안 방향 노선이 분기하고
2호선처럼 성수역이 나올 때까지 빙글빙글 돌기도 합니다.
자바에는 두 가지 제어문이 있습니다.
조건문과 반복문이 있는데 이번 시간에는 조건문을 이용하여 프로그램을 만들어 봅니다.
MyApp 프로젝트에 AccountingIFApp 클래스를 생성합니다.
AccountingIFApp.java
public class AccountingIFApp {
public static void main(String[] args) {
double valueOfSupply = Double.parseDouble(args[0]);
double vatRate = 0.1;
double expenseRate = 0.3;
double vat = valueOfSupply * vatRate;
double total = valueOfSupply + vat;
double expense = valueOfSupply * expenseRate;
double income = valueOfSupply - expense;
double dividend1;
double dividend2;
double dividend3;
if(income > 10000.0) {
dividend1 = income * 0.5;
dividend2 = income * 0.3;
dividend3 = income * 0.2;
} else {
dividend1 = income * 1.0;
dividend2 = income * 0;
dividend3 = income * 0;
}
System.out.println("Value of supply : " + valueOfSupply);
System.out.println("VAT : " + vat);
System.out.println("Total : " + total);
System.out.println("Expense : " + expense);
System.out.println("Income : " + income);
System.out.println("Dividend 1 : " + dividend1);
System.out.println("Dividend 2 : " + dividend2);
System.out.println("Dividend 3 : " + dividend3);
}
}
우리의 문제상황에 새로운 조건이 하나 생기게 되었다고 해 봅시다.
수익(income)이 1만원이 넘을 경우에만 동업자들에게 기존의 배당률대로 수익을 배당하고,
수익이 1만원 이하일 경우에는 1번 동업자에게만 모든 수익을 배당하게 되었습니다.
이를 우리가 배운 내용만 가지고 만들기 위해서는 수익이 1만원이 넘을 경우에 사용할 프로그램 하나,
수익이 1만원 이하일 경우에 사용할 프로그램 하나, 총 두개의 프로그램을 만들어야 할 것입니다.
이런 경우 조건문을 사용하게 되면 프로그램을 두 개 만들 필요 없이 하나의 프로그램으로 모든 문제를 해결할 수 있게 됩니다.
공급가가 5000일 경우와 50000일 경우 실행한 결과는 다음과 같습니다.


생각해보기
1) 조건문은 어떤 경우에 필요할 것 같은지 댓글로 토론해 보세요
참고자료
comment
다양한 경우의 수를 구현하기 위해
입력이 조건에 따라 다양한 결과가 나와야 하는 경우에
double Dividend1 = Income*1;
double Dividend2 = Income*0;
double Dividend3 = Income*0;
if(Income > 10000.0) {
Dividend1 = Income * 0.5;
Dividend2 = Income * 0.3;
Dividend3 = Income * 0.2;
}
이렇게 작성해도 작동하는게 재미있네요
조건문은 비슷한일 두가지를 하나로 합칠 때 유용하게 쓸 수 있는 명령문이라 생각되네요.
조건문은 프로그램에 적용해야 하는 조건이 2가지 이상인 경우에 필요하다.
-조건문은 어떤 경우에 필요할 것 같은지-
"여러가지 조건에 따라 각 조건별 적용안이 다른 경우"-를 코딩을 할 때 사용한다.
경우에 따라서 다른 코드를 실행해야 하는 경우에 조건문을 사용한다.
작업 과정에서 변수가 생길 경우 그것에 대한 결과 값 및 과정을 달리 하고자 할 경우