package edu.exam02.homework;

import java.util.Arrays;
import java.util.Random;

public class AhnHomework03_2 {
	public static void main(String[] args) {
		/*
		 * 4. 5개의 int배열을 선언하고 난수로 값을 입력하고 출력하세요 
		 * 2개의 새로운 int배열을 할당하고 값을 복사하세요 1번째 배열은
		 * 오름차순으로 Arrays.sort를 사용하지 않고 선택정렬 하세요.
		 */   
		Random rd = new Random();
		int[] arr = new int[5];
		for(int i=0;i<arr.length;i++) {
			arr[i]=rd.nextInt(100);
			System.out.print(arr[i] +"  ");
		}
		
		int[] arr1 = {0,0,0,0,0} ;
		int[] arr2 = {0,0,0,0,0} ;
		
		System.arraycopy(arr, 0, arr1, 0, 5);
		System.arraycopy(arr, 0, arr2, 0, 5);
		System.out.println();
		System.out.println();
		//오름차순 선택정렬
		int temp=0;
		System.out.println("Arr1 오름차순 정렬 전 :"+Arrays.toString(arr1));
		for(int i=0;i<arr1.length-1;i++) {
			for(int j=i+1;j<arr1.length;j++) {
				if(arr1[i] > arr1[j]) {
					temp = arr1[i];
					arr1[i]=arr1[j];
					arr1[j]=temp;					
				}				
			}
		}		
		System.out.println("Arr1 오름차순 정렬 후 :"+Arrays.toString(arr1));
		System.out.println();
		
		
		//5. 2번째 배열은 내림차순으로 Arrays.sort를 사용하지 않고 선택정렬 하세요.
		
		//내림차순 선택정렬
		//Arrays.sort(arr2);
		System.out.println("Arr2 내림차순 정렬 전:"+Arrays.toString(arr2));
		
		for(int i=0;i<arr2.length-1;i++) {
			for(int j=i+1;j<arr2.length;j++) {
				if(arr2[i] < arr2[j]) {
					temp = arr2[i];
					arr2[i]=arr2[j];
					arr2[j]=temp;					
				}			
			}
		}
		System.out.println("Arr2 내림차순 정렬 후:"+Arrays.toString(arr2));	
		System.out.println();
				
		//6. 최대 최소값을 구하세요
		int[] arr3 = {0,0,0,0,0} ;
		System.arraycopy(arr, 0, arr3, 0, 5);
		int min=arr3[0], max=arr3[0];
		
		for(int i=0;i<arr3.length;i++) {
		
			if(arr3[i]<min) {
				min=arr3[i];
			}
			else if(max < arr3[i]) {
				max=arr3[i];
			}	
		}
		System.out.println("arr3 :"+Arrays.toString(arr3));
		System.out.println("arr3 의 최대값 :" +max+ " 최소값 :"+min);		
	}
}

'etc.. > 1' 카테고리의 다른 글

200113_소수 판별  (0) 2020.01.13
200113_10진수 입력받아서 2진수로 출력  (0) 2020.01.13
최대값, 최소값 예제  (0) 2020.01.10
선택정렬 예제  (0) 2020.01.10
200110 배열 advance  (0) 2020.01.10

+ Recent posts