![article thumbnail image](https://blog.kakaocdn.net/dn/bzRh1Y/btrMKtgFKam/4BpP0QW2zdsAj2aJ1E3dk1/img.png)
728x90
예제1)
실습코드
package 메서드;
public class ex01메서드 {
public static void main(String[] args) {
// powerN()
int base = 2;
int n = 3;
int result = powerN(base,n);
System.out.println("결과 확인 : "+ result);
}
public static int powerN(int base, int n) {
int sum=1;
for(int i=1; i<=n; i++) {
sum=sum*base;
}
return sum;
}
}
예제2)
package 메서드;
public class ex02메서드 {
public static void main(String[] args) {
int num1 =10;
int num2 = 2;
boolean divisor = isDivisor(num1,num2);
System.out.println(divisor);
}
// 약수인지 아닌지를 구해주는 isDivisor 만들기
public static boolean isDivisor(int num1, int num2) {
// num1이 num2의 배수인지
// =num2가 num1의 약수인지
// =num1을 num2로 나누었을 때 나누어 떨어지는지
if(num1%num2==0) {
return true;
}else {
return false;
}
}
}
예제3)
실행코드
// getDivisor
public static void getDivisor(int num3) {
System.out.print(num3+"의 약수 : ");
for(int i=1; i<=num3; i++) {
if(num3%i==0) {
System.out.print(i+" ");
}
}
System.out.println();
}
예제2번의 메서드를 활용한 예제3의 코드
// getDivisor
public static void getDivisor(int num3) {
System.out.print(num3+"의 약수 : ");
for(int i=1; i<=num3; i++) {
if(isDivisor(num3,i)) {
System.out.print(i+" ");
}
}
System.out.println();
}
예제4)
실행 코드
// getSumOfDivisor
public static int getSumOfDivisor(int num) {
int result = 0;
// tip. int : 4byte ---> 32bit
// 2^32
for(int i=1; i<=num/2; i++) {
if(isDivisor(num,i)) {
result+=i;
}
}return result+num;
}
예제5)
실행코드
// 완전수인지 아닌지를 구해주는 isPerfectNumber 만들기
public static boolean isPerfectNumber(int num3) {
int result = 0;
for(int i=1; i<num3; i++) {
if(isDivisor(num3,i)) {
result+=i;
}
}
if(result==num3) {
return true;
}else {
return false;
}
}
예제4를 이용한 코드
// 완전수인지 아닌지를 구해주는 isPerfectNumber 만들기
public static boolean isPerfectNumber(int num3) {
if(getSumOfDivisor(num3)-num3==num3) {
return true;
}else {
return false;
}
}
예제6)
예제 코드(예제5 메소드를 활용)
// getPerfectNumber()
public static void getPerfectNumber(int startValue, int endValue) {
System.out.print(startValue+"~"+endValue+"까지의 완전수: ");
for(int i=startValue; i<=endValue; i++) {
if(isPerfectNumber(i)) {
System.out.print(i+" ");
}
}
}
PS.메소드안에 메소드를 잘생각해서 사용하면 가독성 편의성이 좋다!
응용력을 기르자!
728x90
'Study > JAVA' 카테고리의 다른 글
JAVA기초 12일차 <객체지향2> (0) | 2022.09.24 |
---|---|
JAVA기초 11일차 <객체지향> (1) | 2022.09.24 |
JAVA 기초 9일차 <메서드> (2) | 2022.09.24 |
JAVA기초 8일차 <이차원 배열> (1) | 2022.09.24 |
JAVA 기초 7일차 <배열> (1) | 2022.09.21 |