본문 바로가기
IT 스터디/자바(JAVA)

BigInteger 사용하기

by Ryan Kim 2016. 2. 14.

[문제] 키보드로부터 N을 입력받아 1~N까지의 곱을 구하시오(단, 0<N<9001)

 


[해결답안]키보드로부터 N을 입력받아 1~N까지의 곱을 구하시오(단, 0<N<9001)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class Exam7
{
    public static void main(String args[])
    {
        int j = 1;
        BigInteger bi = null;
        BigInteger bi2 = new BigInteger("1");
 
        System.out.println("키보드로 부터 N을 입력받아 1~N까지의 곱");
        System.out.println("---------------------------");
        System.out.println("N값을 입력하세요:");
        Scanner sc = new Scanner(System.in);
        
        try
        {
            j = sc.nextInt();
            
            if(j<1||j>9000)
            {
                System.out.println("N의 범위는 0<N<9001 입니다");
            }
            else
            {
                for(int i=1; i<=j; i++)
                {
                    bi = new BigInteger(String.valueOf(i));
                    bi2 = bi2.multiply(bi);
                }
                System.out.println("1~"+j+"까지 곱의 결과 : ");
                System.out.println(bi2);
            }
        }
        catch(Exception e)
        {
            System.out.println("1이상 9000이하 양의 정수만 입력해주세요");
        }
        finally 
        {
            sc.close();
        }
    }
}
cs

(위 소스만 이상하게 SyntaxHighlighter가 에러 먹어서 colorscripter로 넣었습니다)

 


참조:http://hoit89.tistory.com/entry/Java1N까지의-곱데이터타입-BigInteger

'IT 스터디 > 자바(JAVA)' 카테고리의 다른 글

Java 문자 입력  (1) 2016.04.06
DecimalFormat 클래스  (0) 2016.02.14
BigIntger 클래스  (0) 2016.02.14
List에 값이 없는 경우를 판별하는 방법은 null이 아닌,  (0) 2015.06.12