YSHUSH

숫자 정렬 예제 본문

Coding/Java

숫자 정렬 예제

코딩; 2021. 12. 15. 07:58
public class MainClass {

	public static void main(String[] args) {
		
		Sorting sort = new Sorting();
		sort.input();
		sort.sorting();
		sort.result();
	}
}

public class Sorting {

	int number[];	// 멤버변수
	int updown;		// 멤버변수: 이 클래스 내의 모든 부분에 접근이 가능함
	
	void input() {
		Scanner sc = new Scanner(System.in);
		System.out.print("몇개 정렬 = ");
		int count = sc.nextInt();
		
		number = new int[count];
		
		for (int i = 0; i < number.length; i++) {
			System.out.print((i + 1) + "번째 수 = ");
			number[i] = sc.nextInt();
		}
		
		System.out.print("오름(1) / 내림(2) = ");
		updown = sc.nextInt();
		
	}
	
	void sorting() {
		for (int i = 0; i < number.length - 1; i++) {
			for (int j = i + 1; j < number.length; j++) {
				
				if (updown == 1) {
					if (number[i] > number[j]) {
						swap(i, j);
					}
				} else {
					if (number[i] < number[j]) {
						swap(i, j);
					}
				}
			}
		}			
	}
	
	void swap(int i, int j) {
		int temp = number[i];
		number[i] = number[j];
		number[j] = temp;
	}	// 멤버 변수 안에 있는 값을 바꿨으므로 리턴값을 받을 필요가 없음
	
	void result() {
		
		System.out.println(Arrays.toString(number));
		
	}
}

'Coding > Java' 카테고리의 다른 글

Inheritance.2  (0) 2021.12.16
Inheritance.1  (0) 2021.12.16
Encapsule  (0) 2021.12.14
Encapsulation  (0) 2021.12.14
Class 예제  (0) 2021.12.14