본문 바로가기

알고리즘/Jungol

[Java] 정올기초다지기 함수2-형성평가01

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package 함수2.형성평가01;
 
import java.util.Scanner;
 
public class Main {
 
    public static int[] input() {    //값을 입력받기 위한 input 메소드 생성
        int num =0;
        Scanner sc = new Scanner(System.in);
        
        num = sc.nextInt();
        
        int [] arr = new int [num];
        
        for(int i=0;i<num;i++) {    //첫번째 입력값만큼 for문 반복하여 배열에 값 대입
            arr[i] = sc.nextInt();    
        }
        sc.close();
        return arr;                        //입력받은 배열 retrun
    }
    public static int [] sort(int arr[]) {        //위에서 입력받은 배열의 값들을 정렬해줄 메소드
        for(int i=0;i<arr.length-1;i++) {        //배열 내림차순 정렬
            for(int j=0;j<arr.length-1;j++) {
                if(arr[j] < arr[j+1]) {                //n+1번째방의 값이n번째 방의 값보다 클경우 
                    int tmp = arr[j];                    //내림차순.
                    arr[j] = arr[j+1];
                    arr[j+1= tmp;
                }
            }
        }
        return arr;
    }
    public static void print(int arr[]) {    //정렬이 완료된 배열을 출력해줄 메소드
        for(int i=0;i<arr.length;i++) {        //입력받은 배열의 길이만큼 출력
            System.out.print(arr[i] + " ");
        }
    }
    
    public static void main(String[] args) {
        print(sort(input()));                    //출력(정렬(입력받은값())) 이라고 생각하면된다.
    }
}