티스토리 뷰

클래스를 활용한 계산 예제 입니다.


package J0429;


import java.util.Scanner;


public class J0429_1 {

public static void main(String[] args) {

Scanner scan = new Scanner(System.in);

int num1,num2;

char op;

System.out.println("두 정수와 연산자를 입력하세요 : ");

num1 = scan.nextInt();

num2 = scan.nextInt();

op = scan.next().charAt(0); //연산자를 문자로 변환 scan변수가 받은 0번째 인덱스를 문자로 변환한다.

switch (op) {

case '+' :

Add add = new Add();

add.setvalue(num1, num2);//Add 클래스로 변수값을 넘기는 과정(캡슐화 되어있음)

System.out.println(add.cal());

break;

case '-' :

Sub sub = new Sub();//Sub 클래스로 변수값을 넘기는 과정(캡슐화 되어있음)

sub.setvalue(num1, num2);

System.out.println(sub.cal());

break;

case '*' :

Mul mul = new Mul();//Mul 클래스로 변수값을 넘기는 과정(캡슐화 되어있음)

mul.setvalue(num1, num2);

System.out.println(mul.cal());

break;

case '/' :

Div div = new Div();//Div 클래스로 변수값을 넘기는 과정(캡슐화 되어있음)

div.setvalue(num1, num2);

System.out.println(div.cal());

break;

default : System.out.println("잘못된 연산자 입니다.");

}

}

}


class Add{

private int a,b;

public void setvalue(int a, int b){//연산 대상을 설정하는 세터 메소드

this.a = a;

this.b = b;

}

public int cal(){

return a+b;

}

}


class Sub{

private int a,b;

public void setvalue(int a, int b){//연산 대상을 설정하는 세터 메소드

this.a = a;

this.b = b;

}

public int cal(){

return a-b;

}

}


class Mul{

private int a,b;

public void setvalue(int a, int b){//연산 대상을 설정하는 세터 메소드

this.a = a;

this.b = b;

}

public int cal(){

return a*b;

}

}


class Div{

private int a,b;

public void setvalue(int a, int b){//연산 대상을 설정하는 세터 메소드

this.a = a;

this.b = b;

}

public int cal(){

return a/b;

}

}

실행 결과는






공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함