728x90
12!는 int의 범위를 벗어나므로 long으로 작성해야한다.
그리고 long result=0;으로 두면 반복문을 돌면서 result*=i;에서 무조건 0이되므로
long result=1;로 두어야 결과가 올바르게 출력된다.
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long n = sc.nextLong();
long result = 1;
for(long i=n; i>=1; i--) {
result*=i;
}
System.out.println(result);
}
}
728x90
'JAVA > 오류고민' 카테고리의 다른 글
[백준] 11365번 !밀비 급일 (0) | 2023.11.07 |
---|---|
[백준] 11006번 남욱이의 닭장 (0) | 2023.11.07 |
[백준] 10807번 개수 세기 (0) | 2023.11.06 |
[백준] 10178번 할로윈의 사탕 (1) | 2023.11.06 |
[백준] 2750번 수 정렬하기 (0) | 2023.11.06 |