[알고리즘] Swift -백준 #10872 (팩토리얼)

2022. 8. 9. 03:53ALGORITHM/Swift

728x90
반응형

문제링크

https://www.acmicpc.net/problem/10872

 

10872번: 팩토리얼

0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

 

문제

0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다.

출력

첫째 줄에 N!을 출력한다.

 

 


풀이

var input = Int(readLine()!)!
print(factorial(n: input))

func factorial(n: Int) -> Int {
    if n == 0 {
        return 1
    } else {
        return n * factorial(n: n-1)
    }
}

 

결과

 

 

 

재귀함수 쓰지 않고 작성하기

var input = Int(readLine()!)!

var result = 1

if input > 1 {
    for i in 2...input {
        result *= i
    }
}
print(result)

결과는 똑같네

 

 

 

 

 

 

 

 

 
728x90
반응형