티스토리 뷰

package com.ktds.smahn;

 

public class Calculator {

 

       public boolean isValidOperator( String operator ){

            

             String operators[] = new String[5];

             operators[0] = "+";       

             operators[1] = "-";

             operators[2] = "*";

             operators[3] = "X";

             operators[4] = "/";

            

             for( int i = 0; i < operators.length ; i++ ){

                    if( operator.equalsIgnoreCase( operators[i]) ) {

                           return true;

                    }

             }     

            

             return false;

            

       }

      

       public void calculateAndPrintResult(int numberOne, int numberTwo, String operator) {

      

             double result = 0;

                   

             if(operator.equals("+")){

                    result = numberOne + numberTwo;

             }

             else if(operator.equals("-")){

                    result = numberOne - numberTwo;

             }

             else if(operator.equals("*")){

                    result = numberOne * numberTwo;              

             }

             else if(operator.equals("/")){

                    result = (double)numberOne / numberTwo;

             }

            

            System.out.println(numberOne + operator + numberTwo + " = " + result + "입니다.");

             System.out.println("=========================================");

            

       }

 

      

      

}

 


package com.ktds.smahn;

 

import java.util.Scanner;

 

public class CalculatorMain {

 

       public static void main(String[] args) {

 

             Scanner input = new Scanner(System.in);

             Calculator calculator = new Calculator();

 

             int numberOne = 0; // 첫번째 정수 초기화

             int numberTwo = 0; // 두번째 정수 초기화

             String operator = ""; // 연산자 초기화

             String userChoice = ""; // 사용자 선택 초기화

 

             while (true) {

 

                    System.out.println("사칙연산 계산기 프로그램입니다.");

                    System.out.println("사칙연산을 하시려면 yes, 종료하시려면 exit 입력하세요.");

                    userChoice = input.next();

 

                    if (userChoice.equals("yes")) {

 

                           System.out.println("정수 두개를 입력하세요. ");

                           numberOne = input.nextInt();

                           numberTwo = input.nextInt();

 

                           while (true) {

                                

                                

                                 System.out.println("연산자를 입력하세요. ");

                                 operator = input.next();

 

                                 if (calculator.isValidOperator(operator)) {

                                       

                                        calculator.calculateAndPrintResult(numberOne, numberTwo, operator);

                                       

                                        break;

                                 }

                                 else {

                                        System.out.println("연산자를 잘못 입력하셨습니다. ");

                                 }

                                

                                

                           }

 

                    }

                    else if (userChoice.equals("exit")) {

 

                           System.out.println("프로그램을 종료합니다. ");

                           break;

 

                    }

 

             }

 

       }

 

}

 

 


결과

 

사칙연산 계산기 프로그램입니다.

사칙연산을 하시려면 yes, 종료하시려면 exit 입력하세요.

yes

정수 두개를 입력하세요.

89 5

연산자를 입력하세요.

/

89/5 = 17.8입니다.

=========================================

사칙연산 계산기 프로그램입니다.

사칙연산을 하시려면 yes, 종료하시려면 exit 입력하세요.

exit

프로그램을 종료합니다.

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   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
글 보관함