Android App Track⛺-008

MunkiJeon·2024년 6월 9일

TIL

목록 보기
25/59
post-thumbnail

TIL (Today I Learned)

오늘 공부한거!

  • Kotlin 문법 계발 과제 - 🧮계산기🛠️맹글기

    Lv1
    더하기, 빼기, 나누기, 곱하기 연산을 수행할 수 있는 Calculator 클래스를 만들고,
    클래스를 이용하여 연산을 진행하고 출력하기

    • Calculator.kt
      fun main(){
         print("계산할 첫번째 숫자 :")
         var numA = readLine()!!.toInt()
         print("\n계산할 두번째 숫자 :")
         var numB = readLine()!!.toInt()
         println("\n$numA$numB 를 어떤 연산 하시겠습니까? \n |1. + | 2. - | 3. * | 4. / | 5. % |  ")
         var operator = readLine()
         when(operator){
             "1","+" ->{ print("${Operator().plus(numA,numB)}") }
             "2","-" ->{ print("${Operator().subtract(numA,numB)}") }
             "3","*" ->{ print("${Operator().multiply(numA,numB)}") }
             "4","/" ->{ print("${Operator().divide(numA,numB)}") }
             "5","%" ->{ print("${Operator().remain(numA,numB)}") }
         }
      }
    • Operator.kt
      class Operator {
         fun plus(numA :Int, numB :Int) :Int = numA + numB
         fun subtract(numA :Int, numB :Int) :Int = numA - numB
         fun multiply(numA :Int, numB :Int) :Int = numA * numB
         //나누기와 나머지는 연산후 실수로 변환
         fun divide(numA :Int, numB :Int) :Double = numA.toDouble() / numB.toDouble()
         fun remain(numA :Int, numB :Int) :Double = numA.toDouble() % numB.toDouble()
      }

    Lv2
    Lv1에서 만든 Calculator 클래스에 출력 이후 추가 연산을 가능하도록 코드를 추가하고,
    연산 진행 후 출력하기
    > Lv1에서 만든 Calculator 클래스에 나머지 연산자(%)를 추가하기.
    그리고 -1을 입력 할 때까지 계산을 반복합니다.(-1 입력 시 반복 종료)
    콘솔에서 (1번 +, 2번 -, 3번 *, 4번 /, 5번 %)을 입력하면 연산 진행합니다.

    • Calculator.kt
      fun main(){
          var run = true
         var numB = 0
         print("계산할 숫자 :")
         var numA = readLine()!!.toInt()
         while (run){
             println("\n$numA 에 어떤 연산 하시겠습니까? \n >> 1. + | 2. - | 3. * | 4. / | 5. % |  -1. 종료 <<")
             var operator = readLine()
             if (operator == "-1" || operator == "종료"){ run = false;}
             else{
                 print("계산할 숫자 :")
                 numB = readLine()!!.toInt()
             }
             when(operator){
                 "1","+" ->{
                     println("= ${Operator().plus(numA,numB)}")
                     numA = Operator().plus(numA,numB)
                 }
                 "2","-" ->{
                     println("= ${Operator().subtract(numA,numB)}")
                     numA = Operator().subtract(numA,numB)
                 }
                 "3","*" ->{
                     println("= ${Operator().multiply(numA,numB)}")
                     numA = Operator().multiply(numA,numB)
                 }
                 "4","/" ->{
                     println("= ${Operator().divide(numA,numB)}")
                     numA = Operator().divide(numA,numB).toInt()
                 }
                 "5","%" ->{
                     println("= ${Operator().remain(numA,numB)}")
                     numA = Operator().remain(numA,numB).toInt()
                 }
                 "-1","종료" ->{
                     println("-------- 계산기를 종료 합니다 --------")
                 }
                 else ->{ println("잘못된 값을 입력 했습니다: ${operator}") }
             }
         }
      }

Today Review

  • 엄...워 음 어 레벨2 했다!
profile
공장자동화와 웹 개발을 핥아 먹다 앱 개발로 전향한 개발자의 키보드의 낡은 키캡⛑️

0개의 댓글