[스마트인재개발원 : 빅데이터 13차] JAVA Festival 개인 문제 풀이 - 11번

 Q.두 개의 정수를 매개변수로 받아 앞의 정수가 뒤의 정수로 나누어지는지를 판별하는 메소드 isDivide()를 작성하세요. 이때, 나누어지면 true, 나누어지지 않으면 false 반환함.

※false 출력 main
public static void main(String[] args) {
int num1 = 10;
int num2 = 3;
boolean result = isDivide(num1, num2);
System.out.println("결과 확인 : "+ result);
}
※true 출력 main
public static void main(String[] args) {
// TODO Auto-generated method stub
int num1 = 10;
int num2 = 2;
boolean result = isDivide(num1, num2);
System.out.println("결과 확인 : "+ result);
}

※제약 조건

-main에 별도의 알고리즘 삽입 및 수정 금지


-문제 해석 및 풀이

'false', 'true'를 반환하므로 'boolean'타입을 리턴 할 수 있도록 함수를 작성

접근제한자(public, private, protected, default) [static](void static main의 경우에만) 반환자료형 함수명([인자1],[인자2],...){         .....

                    [return 반환 값]
                    }

step1. 함수 명 및 인자 확인

정수형 인수 num,1, num2 를 입력 받고, 논리형(boolean) 값을 반환하므로

public static boolean isDivide(int num1, int num2) (이때 인수는 서로 중복만 아니라면 어떤 이름도 가능)


step2. 단순히 약수의 여부를 확인하면 되므로

return num1 % num2 == 0(0으로 나누어 떨어지면 약수)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package test_1;
 
public class q11 {
 
    public static void main(String[] args) {
        int num1 = 10;
        int num2 = 3;
        //step1
        boolean result = isDivide(num1, num2);
        System.out.println("결과 확인 : "+ result);
    }
 
    private static boolean isDivide(int num1, int num2) {
        //step2.2의 약수 일 때 true, 아닌 경우 false 반환
        return num1 % num2 == 0;
    }
 
}
cs

댓글