본문 바로가기

Algorithm/Language Coder

Jungol (Java) - 180 : 함수2 - 형성평가6

문제

자료의 개수 7 매크로 상수로 정의하여 자료의 개수만큼 정수를 입력받아 입력받은 순서대로 앞에서부터 마지막까지 가면서 바로 뒤의 숫자와 비교하여 크면 교환한다. 이러한 작업을 반복한 결과를 하나의 행에 공백으로 구분하여 출력하는 프로그램을 작성하시오.

 

입력

15 20 41 8 26 33 19

 

출력 예

8 15 20 19 26 33 41

 

Hint!

버블정렬에서 i를 N-1부터 N-3까지 3 실행하면 된다.

 

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int bubble;
        int[] arr = new int[7];

        for (int i = 0; i < 7; i++) {
            arr[i] = sc.nextInt();
        }

        for (int i = 0; i < 3; i++) {
            for (int j = 0; j < arr.length - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    bubble = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = bubble;
                }
            }
        }

        for (int i = 0; i < 7; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}