오늘은 3주차 강의를 들으면서 한번 계산기 만들기 과제를 진행 해 보았다.
힌트를 들어가니
var operator = '+'
if(##답안##) {
// 덧셈일 때
} else if(##답안##) {
// 뺄셈일 때
} else if(##답안##) {
// 곱셈일 때
} else if(##답안##) {
// 나눗셈일 때
} else {
// 잘못된 연산자 일 때
}
이거를 넣으라고 한다.
음...강의를 들어도 솔직히 이걸 대입 못할거 같다.
다시 처음으로 돌아가서 생각해봤다. 우선 텍스트가 나오게끔 printIn을 써서 계산기와 숫자를 입력하라는 칸을 집어넣고 위 코드에 나와있듯이 +,-,*,/ 이런 부호를 넣었을 때 값이 나오게끔 하면 좋겠지만 그거까진 솔직히 모르겠다.
그래서 이걸 +는 1, -는 2, *는 3, /는 4로 생각하고 값을 나오게 해보기로 했다.
fun main() {
println("계산기")
println("숫자를 입력하시오")
var num1 = readLine()!!.toInt()
println("숫자를 입력하시오")
var num2 = readLine()!!.toInt()
println("1.더하기, 2.빼기, 3.곱하기, 4.나누기 중에서 고르시오.")
var oper = readLine()!!.toInt()
}
부호는 oper로 이름을 짓고 일단 lv1에 나와있는 calculator라는 class를 만들어서 저기 if절에 해당하는 덧셈 뺄셈 등을 넣어보았다.
class Calculator {
fun calculator (num1: Int, num2: Int, oper : Int) : Int {
var answer : Int = 0
if(oper == 1) {
return num1 + num2
// 덧셈일 때
} else if(oper == 2) {
return num1 - num2
// 뺄셈일 때
} else if(oper == 3) {
return num1 * num2
// 곱셈일 때
} else if(oper == 4) {
return num1 / num2
// 나눗셈일 때
} else {
println("다시 눌러주세요")
// 잘못된 연산자 일 때
}
}
}
이정도면 진짜 열심히 짜내서 한거 같다.
는 무슨...
역시나 에러가 뜨고 나오질 않는다. 물론 이 전에도 fun calculator 뒤에 뭐가 들어갈지 몰라서 일단 ()만 넣어뒀는데 친절하게 num1, num2, oper를 집어 넣으라고 떠서 이건 바로 감사합니다 하면서 넣었다.
대충 저 자리에 return이 필요하다는 것 같은데 위에 var answer 라는 것을 넣었으니 저자리에 return answer를 넣어보았다.
크 이제 간단한 계산이 되는 계산기가 되긴 했다.
이 이상은 솔직히...lv2 부터는 건들기 좀 무섭다...
일단 그래도 오늘 과제 1단계 원래 이렇게 가는게 맞는건지는 모르겠지만 일단 늦었으니 여기서 마무리해야겠다.