본문 바로가기
프로그래밍/Java

[자바] 배열을 입력받아 가장 큰 수 출력, 오름차순, 내림차순 정렬

by 청량리 물냉면 2019. 7. 15.
반응형
문제

사용자에게 크기 5인 배열의 값을 입력받아

1. 가장 큰 수를 출력하고,

2. 오름차순, 

3. 내림차순으로 정렬하라.

 

 

실행화면

 

코드
import java.util.*;
public class ArrayEx {

	public static void main(String[] args) {
		Scanner sc = new Scanner (System.in);
		int dnum[]= new int [5];
		int i;
		int k = 0;
		int m = 0;
		
		for (i = 0; i<5; i++) {
			System.out.printf("dnum["+i+"]번째 데이터 입력: ");
			dnum [i] = Integer.parseInt(sc.nextLine());
		} //사용자에게 배열의 값을 입력받음.
		
		for(i = 0; i<5; i++) {
			if(k< dnum[i]) {
				k = dnum[i];
			}			
		} 
		System.out.println("가장 큰 수는 "+k+"입니다.");
		//가장 큰 수를 출력한다.
			
		System.out.print("오름차순 정렬: ");
		for(i = 0; i<5; i++) {
			
			if(dnum[0]>dnum[i]) {
				m=dnum[0];
				dnum[0]=dnum[i];
				dnum[i]=m;
			}
			
			for(int j = i+1; j<5; j++) {
				if(dnum[i]>dnum[j]) {
					m=dnum[i];
					dnum[i]=dnum[j];
					dnum[j]=m;
				}
			}						
			System.out.print(dnum[i]+"  ");		
		} 
		System.out.println();
		//오름차 순 정렬
		
		System.out.print("내림차순 정렬: ");
		for(i = 0; i<5; i++) {
			
			if(dnum[0]<dnum[i]) {
				m=dnum[0];
				dnum[0]=dnum[i];
				dnum[i]=m;
			}
			
			for(int j = i+1; j<5; j++) {
				if(dnum[i]<dnum[j]) {
					m=dnum[i];
					dnum[i]=dnum[j];
					dnum[j]=m;
				}
			}				
			
			System.out.print(dnum[i]+"  ");
		} //내림차 순 정렬
		
	}

}

 

코드 설명

추후 작성
 

 

반응형