인풋에 문제가 있었었는데 숫자 연산자를 따로 입력 받는 방식으로 바꾸니 간단해졌다!
수정한 부분
- toCharArray.digitToInt().toDouble()을 이용해서 문자열을 수정했었는데 바로 .toDouble()로 수정할 수 있다는 사실을 배웠다.
- 인풋 간단히 바꾸었다!
package com.example.mycalculator
// Level 2
// Lv1에서 만든 Calculator 클래스에 출력 이후 추가 연산을 가능하도록 코드를 추가하고, 연산 진행 후 출력하기
fun main(){
print("숫자를 입력하세요 : ")
var number1 = readLine()!!.toDouble()
print("연산자를 입력하세요 : ")
var operator = readLine()!!
print("숫자를 입력하세요 : ")
var number2 = readLine()!!.toDouble()
// 첫번째 계산
var finalResult = calculation(number1, number2, operator)
// 추가 계산
while (true) {
print("추가적인 계산을 하시겠습니까? (yes/no) : ")
var readIteration = readLine()!!
when (readIteration) {
in "no" -> break
in "yes" -> {
print("연산자를 입력하세요 : ")
operator = readLine()!!
print("숫자를 입력하세요 : ")
number2 = readLine()!!.toDouble()
finalResult = calculation(finalResult, number2, operator)
println("계산 결과는 $finalResult 입니다.")
}
}
}
}
fun calculation(number1: Double, number2: Double, operator: String): Double {
var result = 0.0
when (operator) {
in "+" -> result = number1 + number2
in "-" -> result = number1 - number2
in "/" -> result = number1 / number2
in "*" -> result = number1 * number2
}
return result
}
'Android (Kotlin) > mini projects' 카테고리의 다른 글
[Hotel Reservation] 호텔 예약 프로그램 lv.1.0 (0) | 2023.12.01 |
---|---|
[Calculator] 계산기 만들기 lv.4 (0) | 2023.11.30 |
[Calculator] 계산기 만들기 lv.3 (0) | 2023.11.30 |
[Calculator] 계산기 만들기 lv.2.0 (0) | 2023.11.29 |
[Calculator] 계산기 만들기 lv.1 (0) | 2023.11.28 |