JAVA 5강_2_Method 매개변수

열라뽕따히·2024년 2월 4일

JAVA

목록 보기
26/79

매개변수가 있는 메서드

  • 형식)
  [접근제한] 반환형 메서드이름(type 변수1, type 변수2){
          메서드 호출 시 실행 문장;
  }
  • 실인수와 가인수
    실인수 : 매개변수에 전달할 실제 값 ==> 메서드 호출 시 사용함
    가인수 : 매개변수(가인수) ==> 메서드에 정의
    ★실인수와 가인수는 반드시 type, 순서, 갯수일치해야 함★
    호출시에만 사용되고 초기화됨




============================코드============================

public class MethodExam_03 {

	private static void add(int su1, int su2) {  // 가인수  (스택에 su1과 su2가 저장됨 / 호출시에만 사용되고 초기화됨)
		
		System.out.println(su1 + " + " + su2 + " = " + (su1 + su2));
		
	}
	
	public static void main(String[] args) {
		
		add(150, 127);   // 150과 127은 실인수

	}

}

============================실행============================





[문제]
키보드로 입력받은 시작 정수와 마지막 정수의 합을 메서드로 호출하여 화면에 보여주세요




============================코드============================

public class MethodExam_04 {
	
	public static void sum(int start, int end) {  // 변수명은 데이터 값만 받는 것! ==> 변수명은 임의로 정해도 됨
		
		int sum = 0;
		
		for(int i = start; i <= end; i++) {
			
			sum += i;
		}
		
		System.out.println(start + " ~ " + end + "까지의 합 >>> " + (sum));
		
	}  // sum() 메서드 end

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		System.out.print("합을 구할 시작 정수 입력 : ");
		int startNo = sc.nextInt();
		
		System.out.print("합을 구할 마지막 정수 입력 : ");
		int endNo = sc.nextInt();
		
		sum(startNo, endNo);
		
		sc.close();

	}

}

============================실행============================





[문제]
키보드로 입력 받은 수까지의 홀수의 합과 짝수의 합을 구하는 메서드를 만들고 메서드를 호출하여 처리 후 화면에 보여주세요


============================코드============================
public class MethodExam_05 {
	
    public static void sum(int max) {
    	
    	int oddSum = 0, evenSum = 0;
    	
    	for(int i = 0; i <= max; i++) {
    		if((i % 2) == 1) {
    			oddSum += i;
    		}else {
    			evenSum += i;
    		}
    	}
    	System.out.println("홀수의 합 : " + oddSum);
    	System.out.println("짝수의 합 : " + evenSum);
    	
    } // max() 메서드 end
	
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		System.out.print("수를 입력하세요 : ");
		//int su = sc.nextInt();
		
		sum(sc.nextInt());
		
		sc.close();

	}

}

============================실행============================





[문제]
콘솔 창에서 간단하게 계산하는 계산기를 만들어보자
연산자를 하나 선택했을 때 계산이 되게끔 만들기!




============================코드============================

public static void plus(int su1p, int su2p) {
		System.out.println(su1p + " + " + su2p + "의 덧셈 : " + (su1p + su2p));
	}
	
	public static void minus(int su1m, int su2m) {
		System.out.println(su1m + " - " + su2m + "의 뺄셈 : " + (su1m - su2m));
	}
	
	public static void doub(int su1d, int su2d) {
		System.out.println(su1d + " * " + su2d + "의 곱셈 : " + (su1d * su2d));
	}
	
	public static void div(int su1div, int su2div) {
		System.out.println(su1div + " / " + su2div + "의 몫 : " + (su1div / su2div));
	}
	
	public static void nam(int su1n, int su2n) {
		System.out.println(su1n + " % " + su2n + "의 나머지 : " + (su1n % su2n));
	}

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		// 1. 키보드로 두 개의 정수와 연산자를 입력받자
		System.out.print("첫번째 정수 입력 : ");
		int su1 = sc.nextInt();
		
		System.out.print("두번째 정수 입력 : ");
		int su2 = sc.nextInt();
		
		System.out.print("연산자(+, -, *, /, % 중 하나를 입력 : ");
		String op = sc.next();
		
		// 2. 연산자 변수에 입력된 연산기호를 가지고 
		//    해당 기호에 맞는 메서드를 호출해 주자
		switch(op) {
		case "+" :
			plus(su1, su2);
			break;
		case "-" :
			minus(su1, su2);
			break;
		case "*" :
			doub(su1, su2);
			break;
		case "/" :
			div(su1, su2);
			break;
		case "%" :
			nam(su1, su2);
			break;
		}
		sc.close();

	}

}

============================실행============================





**어려웠던 점
-하나를 선택해야 하는 경우 switch case문을 사용해야 함을 바로 떠올리기 어려웠음..바본가?ㅎ if로도 만들 수 있긴 하지만..!
-여러 개의 메서드에 값을 출력해야할 공식 작성 하는 것을 잊지 말자!

0개의 댓글