정수가 0보다 큰 정수는 그 값보다 작거나 같은 모든 정수의 곱입니다.
3의 계승은 3 곱하기 2 곱하기 1 또는 6입니다. 수학 표기법에서 : 3! = 3 * 2 * 1 = 6.이 메소드의 구현은 동일한 프로세스를 수행합니다. 현재 값에서 시작하여 값에서 1을 뺀 값을 곱합니다. 현재 값이 2가 될 때까지 프로세스가 완료됩니다. 반환 할 결과를 하나씩 곱할 필요는 없습니다.
public class Factorial { public static long factorial(int number) { long result = 1; for (int factor = number; factor >= 2; factor--) { result *= factor; } return result; } public static void main(String[] argv) { int[] tab = {0,1,2,3,4,5,6,7,8,9}; for(int i : tab){ long out = factorial( i ); System.out.println("n = "+ i + " n! = " + out); } } }
이 예제는 0부터 9까지의 모든 정수로 테이블을 생성합니다. 모든 테이블을 반복하고 계승 방식을 호출합니다. 그런 다음 메서드의 결과가 출력에 기록됩니다. 예를 들어 6의 계승은 720입니다.
n = 0 n! = 1 n = 1 n! = 1 n = 2 n! = 2 n = 3 n! = 6 n = 4 n! = 24 n = 5 n! = 120 n = 6 n! = 720 n = 7 n! = 5040 n = 8 n! = 40320 n = 9 n! = 362880