Kotlin

Kotlin 공부 - 예제, 연습 - #6. Factorial(팩토리얼)

자다르 2022. 4. 16. 00:17

※ 인프런 강의: 개복치개발자님의 [입문편] 안드로이드를 위한 코틀린(Kotlin) 문법 강의 내 예제이며, solution #1은 제가 작성한 코드이고, soultion-#2는 강의 예제에서 제시한 코드입니다.


 

  • soultion - #1
// 숫자를 받아서 팩토리얼 값을 출력하는 함수를 만드세요
// 3! -> 3 x 2 x 1 = 6
// 4! -> 4 x 3 x 2 x 1 = 24
// 5! -> 5 x 4 x 3 x 2 x 1 = 120

fun main(){

    val result1 = solution(3)
    println(result1)
    // 6

    val result2 = solution(4)
    println(result2)
    // 24

    val result3 = solution(5)
    println(result3)
    // 120

}

fun solution( number : Int ) : Int {
	var result : Int = 1
    
    for(i in number downTo 1){
        result = result * i
    }
    return result
}

결과
=====================
6
24
120
  • solution -#2
// 숫자를 받아서 팩토리얼 값을 출력하는 함수를 만드세요
// 3! -> 3 x 2 x 1 = 6
// 4! -> 4 x 3 x 2 x 1 = 24
// 5! -> 5 x 4 x 3 x 2 x 1 = 120

fun main(){

    val result1 = solution(3)
    println(result1)
    // 6

    val result2 = solution(4)
    println(result2)
    // 24

    val result3 = solution(5)
    println(result3)
    // 120

}

fun solution( number : Int ) : Int {

    // 3 x 2 x 1 -> 6
    // 1 x 2 x 3 -> 6

    var result = 1

    for (i in 1..number){
        //println(i)
        result *= i // result = result * i
        // i = 1 -> result -> 1 * 1 = 1
        // i = 2 -> result -> 1 * 2 = 2
        // i = 3 -> result -> 2 * 3 = 6
        // i = 4 -> result -> 6 * 4 = 24
        // i = 5 -> result -> 24 * 5 = 120
    }
    return result
}

결과
====================
6
24
120