ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 학원 DAY9. 메소드(2)
    기록 2022. 9. 17. 22:38

    package day9;

    public class Sample3 {

    /* 
     * 정수 2개를 전달받아서 그 합계를 화면에 출력하는 메소드
     * 반환타입 : void
     * 메소드명 : plus
     * 매개변수 : int x, int y
     */
    
    public void plus(int x, int y) {
        int z = x + y;
        System.out.println("합계: " + z);
    }
    
    /* 
     * 정수 2개를 전달받아서 더 큰 정수를 반환하는 메소드
     * 반환타입 : int
     * 메소드명 : max
     * 매개변수 : int x, int y
     * if문을 사용해서 구현하세요.
     */
    
    public int max(int x, int y) {
        if (x >= y) {
            return x;
        } else {
        return y;
        }
    }
    
    /* 
     * 정수 3개를 전달받아서 더 큰 정수를 반환하는 메소드
     * 반환타입 : int
     * 메소드명 : max
     * 매개변수 : int x, int y, int z
     * if문을 2번 사용해서 구현하세요
     */
    
    public int max(int x, int y, int z) {
        int max = x;
    	if (y > x) {
    			max = y;
    		} else if (z > max) {
    			max = z;
    		}
        return max;
    }
    
    	/*
    	 * 정수 2개를 전달받아서 첫번째 정수부터 두번째 정수사이 정수들의 합계를 반환하는 메소드
    	 * 반환타입 : int
    	 * 메소드명 : sum
    	 * 매개변수 : int start, int end 
    	 * for문을 사용해서 구현하세요. 합계를 저장할 변수를 먼저 정의하세요
    	 */
    	
    	public int sum(int start, int end) {
    		int total = 0;
    		for (int num = start; num <= end; num++) {
    			total = total + num;
    		}
    		return total;
    	}
    	
    	/*
    	 * 정수배열 객체를 전달받아서 배열객체에 저장된 정수의 총합을 반환하는 메소드
    	 * 반환타입 : int
    	 * 메소드명 : sum
    	 * 매개변수 : int[] numbers
    	 * 향상된 for문을 사용해서 구현하세요. 합계를 저장할 변수를 먼저 정의하세요
    	 */
    	public int sum(int[] numbers) {
    		int total = 0;
    		
    		for (int value : numbers) {
    			total += value;
    		}
    		
    		return total;
    	}	
    	
    	/*
    	 * 정수 2개를 전달받아서 첫번째 정수부터 두번째 정수 사이의 숫자들이 저장된 배열객체를 반환하는 메소드
    	 * 반환타입 : int[] 정수가 여러 개 저장된 배열객체의 주소값을 반환한다.
    	 * 메소드명 : createArray
    	 * 매개변수 : int begin, int end
    	 * 첫번째 정수와 두번째 정수도 포함됩니다. 두 정수를 이용해서 배열의 크기를 먼저 구하고, 그 크기만큼 배열을 생성하세요.
    	 * for문을 사용해서 배열의 0번째부터 값을 저장하세요.
    	 */
    	public int[] createArray(int begin, int end) {
    		int[] numbers = new int[end - begin + 1];  // 빈 배열 준비된 것임
    		
    		int index = 0;
    		for (int i = begin; i <= end; i++) {
    			numbers[index] = i;
    			index++;
    		}
    		
    		return numbers;
    	}

    구현해 놓은 메소드 사용하기

    package day9;

    import java.util.Arrays;

    public class SampleApp4 {

    public static void main(String[] args) {
    Sample3 sample = new Sample3();   // 객체 생성이 선행되어야 한다. 객체의 참조변수를 통해 기능을 사용할 수 있다.

    // void plus(int x, int y) 실행하기
    sample.plus(10, 30);
    sample.plus(34538, 9584765);
    //반환타입이 없는 메소드여서 별도의 변수를 준비할 필요가 없다.

    // int max(int x, int y) 실행하기
    int max1 = sample.max(10, 14);
    int max2 = sample.max(10, 10);
    int max3 = sample.max(-4, 0);
    System.out.println("큰 값: " + max1);
    System.out.println("큰 값: " + max2);
    System.out.println("큰 값: " + max3);

    // int max(int x, int y, int z) 실행하기
    int max4 = sample.max(10, 2, 31);
    int max5 = sample.max(10, 10, 10);
    int max6 = sample.max(-32, -4, -7);
    System.out.println("큰 값: " + max4);
    System.out.println("큰 값: " + max5);
    System.out.println("큰 값: " + max6);

    // int sum(int start, int end) 실행하기
    int sum1 = sample.sum(10, 100);
    int sum2 = sample.sum(-10, -1);
    int sum3 = sample.sum(0, 0);
    System.out.println("합계: " + sum1);
    System.out.println("합계: " + sum2);
    System.out.println("합계: " + sum3);

    // int sum(int[] numbers) 실행하기
    int[] numbers1 = {10, 2, 6, 8, 5, 6};
    int[] numbers2 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int[] numbers3 = {2, 3, 5, 7, 11, 13, 17, 19};
    int sum4 = sample.sum(numbers1);
    int sum5 = sample.sum(numbers2);
    int sum6 = sample.sum(numbers3);
    System.out.println("합계: " + sum4);
    System.out.println("합계: " + sum5);
    System.out.println("합계: " + sum6);

    // int[] createArray(int begin, int end) 실행하기
    int[] number4 = sample.createArray(1, 10);
    int[] number5 = sample.createArray(100, 1000);
    int[] number6 = sample.createArray(1000, 2000);
    System.out.println(Arrays.toString(number4));
    System.out.println(Arrays.toString(number5));
    System.out.println(Arrays.toString(number6));

           }
    }

    메소드를 만드는 목적은 메소드에 구현해 놓은 기능을 반복적으로 사용하기 위함이다.

    +) Arrays.toString기능은 배열 안에 들어가있는 값들을 보여주는 기능이다. 

     

    댓글

Designed by Tistory.