Kotlin으로 계산기를 만들어보자!
Kotlin 강의를 듣고 개인과제를 받았는데 Level이 1단계 ~ 4단계까지 있었다!
우선 오늘은 1단계와 2단계를 작성해보고자한다.
◼ 1단계
1단계는 더하기, 빼기, 나누기, 곱하기 연산을 수행할 수 있는 Calculator 클래스를 만들고, 클래스를 이용하여 연산을 진행하고 출력하기이다.
처음에 어떻게 할까 고민하면서 여러 번 시도를 해봤는데 생각보다 잘 풀리지 않아서 Hint를 보고 완성했다.
fun main() {
Calculator().Operation()
}
class Calculator() {
val print = "숫자와 연산기호를 작성해주세요."
var num1 = readLine()!!.toInt()
var operator = readLine()!!.toString()
var num2 = readLine()!!.toInt()
fun Operation() {
if(operator == "+") {
println(num1 + num2)
} else if(operator == "-") {
println(num1 - num2)
} else if(operator == "*") {
println(num1 * num2)
} else if(operator == "/") {
println(num1 / num2)
}
}
}
이 정도를 작성해준 뒤 정상적으로 작동하는 것을 확인했다.
◼ 2단계
2단계는 Lv1에서 만든 Calculator 클래스에 나머지 연산을 가능하도록 코드를 추가하고, 연산 진행 후 출력하기였다.
2단계도 어려운 것 없이 잘 마무리 지었는데 계산기가 시작 한 것은 알렸지만 중간 중간 안내를 해주는 것도 좋을 것 같아서 중간에 글을 작성해서 넣어주고 조금 다듬어준 뒤 마무리지었다.
class Calculator() {
val welcome = println("계산기를 실행했습니다.")
val gate = println("==============================")
val first = println("첫 번째 숫자를 작성해주세요.")
var num1 = readLine()!!.toInt()
val second = println("연산 기호를 작성해주세요.")
var operator = readLine()!!.toString()
val last = println("두 번째 숫자를 작성해주세요.")
var num2 = readLine()!!.toInt()
fun Operation() {
if(operator == "+") {
println("결과는 ${num1 + num2} 입니다.")
} else if(operator == "-") {
println("결과는 ${num1 - num2} 입니다.")
} else if(operator == "*") {
println("결과는 ${num1 * num2} 입니다.")
} else if(operator == "/") {
println("결과는 ${num1 / num2} 입니다.")
} else if(operator == "%") {
println("결과는 ${num1 % num2} 입니다.")
} else {
println("잘못된 부분이 있습니다. 다시 입력해주세요.")
}
}
문제는 3단계인데...
3단계는 AddOperation(더하기), SubstractOperation(빼기), MultiplyOperation(곱하기), DivideOperation(나누기) 연산 클래스를을 만든 후 클래스간의 관계를 고려하여 Calculator 클래스와 관계를 맺기
글만 읽어봐도 전체적으로 다 손을 봐야 하는 것 같다!
금요일까지 제출해야하는데 벌써부터 눈물만 난다...
너무 어렵지만 시도는 해보자구...!!
많은 도움이 되었습니다, 감사합니다.