Lv2 : Lv1에서 만든 Calculator 클래스에 출력 이후 추가 연산을 가능하도록 코드를 추가하고, 연산 진행 후 출력하기

//Lv2 추가 연산 가능하게 하고 출력하기
fun main() {
    println("-------------------계산기-------------------")
    println("--------연산할 첫 번째 숫자를 입력하세요--------")
    var num1 = readLine()!!.toDouble()
    println("--------연산할 두 번째 숫자를 입력하세요--------")
    var num2 = readLine()!!.toDouble()
    println("-------연산자에 해당하는 숫자를 입력하세요-------")
    println("-----1(더하기) 2(빼기) 3(곱하기) 4(나누기)-----")
    var op = readLine()!!.toInt()
    var cal = Calculator()
    var result = cal.calculator(num1, num2, op)
    println("--------------연산 결과 : ${result} --------------")
    do {
        println("-이어서 연산 하시려면 1 종료하시려면 2 입력해주세요-")
        var keepOrExit = readLine()!!.toInt()
        if (keepOrExit == 2) {println("--------계산기 종료--------"); break}
        println("--------연산할 숫자를 입력하세요--------")
        num2 = readLine()!!.toDouble()
        println("-------연산자에 해당하는 숫자를 입력하세요-------")
        println("-----1(더하기) 2(빼기) 3(곱하기) 4(나누기)-----")
        op = readLine()!!.toInt()
        result = cal.calculator(result, num2, op)
        println("--------------연산 결과 : ${result} --------------")
    }while(true)
}
class Calculator {
    fun calculator(num1: Double, num2: Double, op: Int): Double {
        var result:Double = 0.0
        when (op) {
            1 -> {result = num1 + num2}
            2 -> {result = num1 - num2}
            3 -> {result = num1 * num2}
            4 -> {result = num1 / num2}
        }
        return result
    }
}

while문으로 무한 추가 연산 가능하게 만들기

if문으로 추가 연산 의사여부 확인 및 여부에 따른 진행 또는 종료 기능 추가

 

Lv3로 갈 때 입력값에 대한 안정성을 높여야겠다.

+ Recent posts