본문 바로가기

ETC/복습

[복습_JAVA] 19

실습(메소드)

1. 두 정수의 나눗셈을 해주는 메소드(몫과 나머지)

import java.util.Scanner;

public class MethodTask {

	int[] div(int num1, int num2) {
		int[] result = new int[2];
		result[0] = num1 / num2;  // 몫
		result[1] = num1 % num2;  // 나머지
		
		return result;
	} 
	
}

 

 

 

2. 홀수를 짝수로, 짝수를 홀수로 바꿔주는 메소드

import java.util.Scanner;

public class MethodTask {

	int change(int num) {
		return ++num;  // 증가값이 바로 변영되어야 하므로 전위형으로 작성한다.
	}


	public static void main(String[] args) {
		
		MethodTask mt = new MethodTask();
		int result = mt.change(30);

		if(result % 2 == 0) {
			System.out.println("짝수로 변경되었습니다.");
		} else {
			System.out.println("홀수로 변경되었습니다.");
		} 
		
	}
	
}

 

결과

 

 

 

3. 문자열을 입력받고 소문자는 대문자로, 대문자는 소문자로 바꿔주는 메소드

import java.util.Scanner;

public class MethodTask {

	String changeString(String str) { 
		char c = ' ';
		String result = "";
		
		for (int i = 0; i < str.length(); i++) {
			c = str.charAt(i);  // 코드가 길어지므로 char형 변수에 담아준다.
			if(c >= 65 && c <= 90) {  // 대문자일 때
				result += (char)(c + 32);
			} else if(c >= 97 && c <= 122) {  // 소문자일 때
				result += (char)(c - 32);
			} else {  // 그 외 나머지
				result += c;
			}
		}
	
		return result;

	}

}

 

 

 

4. 문자열을 입력받고 원하는 문자의 개수를 구해주는 메소드

import java.util.Scanner;

public class MethodTask {

	int getCount(String str, char c) {
		int count = 0;

		for (int i = 0; i < str.length(); i++) {
			if(str.charAt(i) == c) {  // charAt()을 사용하여 문자열 중 한 문자를 뽑아준다.
				count++;
			}
		} 
		return count;
	}
	
}

 

 

 

5. 5개의 정수를 입력받은 후 원하는 번째 값을 구해주는 메소드

import java.util.Scanner;

public class MethodTask {

	int getValue(int[] arNum, int index) {
		return arNum[index - 1];  // 4번째 값은 arNum[3]에 들어있으므로 index - 1
	}


	public static void main(String[] args) {

		MethodTask mt = new MethodTask();
		int[] arNum = {3, 5, 1, 2, 6};
		System.out.println(mt.getValue(arNum, 4));
		
	} 
	
}

 

결과

 

 

 

 

6. 한글을 정수로 바꿔주는 메소드(String 클래스의 IndexOf() 메소드를 사용한다.)

※ 참고

입력 예) 일공이사
출력 예) 1024

 

 

- 코드

import java.util.Scanner;

public class MethodTask {

	int changeToInteger(String hangle) {
		int[] num = new int[10];
		String hangleOriginal = "공일이삼사오육칠팔구"; 
		String result = "";
		
		for (int i = 0; i < hangle.length(); i++) {
        
			// hangle 문자열에서 charAt()을 이용하여 뽑은 문자를
			// indexOf()를 이용하여 hangleOriginal에서 찾는다.
			result += hangleOriginal.indexOf(hangle.charAt(i));
		}
		
		return Integer.parseInt(result);
	}	


	public static void main(String[] args) {

		MethodTask mt = new MethodTask();
		Scanner sc = new Scanner(System.in);
		System.out.print("한글(정수형식) : ");
		System.out.println(mt.changeToInteger(sc.next()));  // 입력한 문자를 찾는다.
		
	}
	
}
 
결과

 

 

 

 

7. 5개의 정수를 입력받고 최대값과 최소값을 구해주는 메소드(리턴 타입은 void이며, 메소드 안에서 출력하지 않는다.)

import java.util.Scanner;

public class MethodTask {

	void getMaxAndMin(int[] arNum, int[] result) {
		result[0] = arNum[0]; 
		result[1] = arNum[1];
		
		int max = arNum[0];
		int min = arNum[0];
		
		for (int i = 0; i < arNum.length; i++) {
			if(result[0] < arNum[i]) {
				result[0] = arNum[i];
			}
			if(result[1] > arNum[i]) {
				result[1] = arNum[i];
			}
		}
		
	}


	public static void main(String[] args) {

		MethodTask mt = new MethodTask();
		int[] result = new int[2];
		int[] arNum = {3, 5, 1, 2, 6};
		
		mt.getMaxAndMin(arNum, result);
		
		System.out.println("최대값 : " + result[0]);
		System.out.println("최소값 : " + result[1]);
		
	}
	
}

 

결과

 

 

 

'ETC > 복습' 카테고리의 다른 글

[복습_JAVA] 21  (0) 2022.09.02
[복습_JAVA] 20  (0) 2022.09.01
[복습_JAVA] 18  (0) 2022.08.28
[복습_JAVA] 17  (0) 2022.08.27
[복습_JAVA] 16  (0) 2022.08.25