Notice
Recent Posts
Recent Comments
Link
DY N DY
실력키우기 소수와 합성수(JAVA) 본문
2811 : 소수와 합성수
제한시간: 1ms 메모리제한: 64MB
해결횟수: 358회 시도횟수: 997회
소수(prime number)란 1보다 큰 자연수 중 1과 자기 자신 두 개만을 약수로 갖는 수를 말한다.
합성수(composite number)란 1보다 큰 자연수 중 소수가 아닌 수를 말하며 3개 이상의 약수를 갖는다.
1은 소수도 합성수도 아니다.
5개의 자연수를 입력받아 소수인지 합성수인지를 판단하는 프로그램을 작성하시오.
[Copy]3 10 1 55 127 | [Copy]prime number composite number number one composite number prime number |
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 | /************************************************************** Problem: 2811 User: a132034 Language: Java Result: Success Time:175 ms Memory:9128 kb ****************************************************************/ import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int []arr = new int [ 5 ]; for ( int i = 0 ; i < 5 ; ++i) arr[i] = sc.nextInt(); for ( int i = 0 ; i < 5 ; ++i) System.out.println(isPrime(arr[i])); } public static String isPrime( int num){ if (num == 1 ) return "number one" ; for ( int i = 2 ; i <= Math.sqrt(num); ++i) { if (num % i == 0 ) return "composite number" ; } return "prime number" ; } } |
최근 소수 관련 문제를 연속으로 풀었더니 어렵지 않았다.
소수 구하는 공식에 대한 설명은 이전 알고리즘에 설명했기 때문에 생략.
'PARK > ALGORITHM' 카테고리의 다른 글
실력키우기 섞기수열(C++) (0) | 2016.06.28 |
---|---|
실력키우기 문자열변환(JAVA) (7) | 2016.06.03 |
실력키우기 소수의개수(JAVA) (0) | 2016.06.02 |
실력키우기 소수(JAVA) (0) | 2016.06.01 |
알고리즘 로봇(JAVA) (0) | 2016.05.26 |