문제 풀이/CodeUp

CodeUp_1286 : 최댓값, 최솟값

윤지(●'◡'●) 2021. 5. 20. 09:50
반응형


문제내용

5개의 정수들의 최댓값과 최솟값을 구하는 프로그램을 작성하라.

 

 


자바코드

1. sort 메소드 사용 X

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int [] arData = new int[5];
		
		for (int i = 0; i < arData.length; i++) {
			arData[i] = sc.nextInt();
		}
		
		int max = arData[0];
		int min = arData[0];
		
		for (int i = 1; i < arData.length; i++) {
			if(max < arData[i]) {
				max = arData[i];
			}
			else if(min > arData[i]) {
				min = arData[i];
			}
		}
		
		System.out.println(max);
		System.out.println(min);
		
	}
}

 

2. sort 메소드 사용

import java.util.Arrays;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int [] arData = new int[5];
		
		for (int i = 0; i < arData.length; i++) {
			arData[i] = sc.nextInt();
		}
		
		Arrays.sort(arData);
		
		System.out.println(arData[4]);
		System.out.println(arData[0]);
		
	}
}

 

 

 

코드풀이

 

1. sort 메소드 사용 X

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in); // Scanner 객체 생성
		
		int [] arData = new int[5]; // 5개의 정수를 입력받을 5칸 짜리 배열 생성
		
		for (int i = 0; i < arData.length; i++) { // 입력받은 정수를 배열에 저장
			arData[i] = sc.nextInt();
		}
		
		int max = arData[0]; // 최대값을 담을 변수 max , 초기값은 맨 첫번째 값
		int min = arData[0]; // 최소값을 담을 변수 min , 초기값은 맨 첫번째 값
		
		for (int i = 1; i < arData.length; i++) {
			if(max < arData[i]) { // arData의 i번째 값이 max 보다 크다면
				max = arData[i]; // max를 arData의 i번째 값으로 교체
			}
			else if(min > arData[i]) { // arData의 i번째 값이 min 보다 작다면
				min = arData[i]; //min을 arData의 i번째 값으로 교체
			}
		}
		
		System.out.println(max); // 최대값 출력
		System.out.println(min); // 최소값 출력
		
	}
}

 

 

import java.util.Arrays;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in); //Scanner 객체 생성
		
		int [] arData = new int[5]; //5개의 정수를 받을 5칸짜리 배열 생성
		
		for (int i = 0; i < arData.length; i++) { // 입력받은 정수 배열에 저장
			arData[i] = sc.nextInt();
		}
		
		Arrays.sort(arData); // sort 메소드를 활용하여 오름차순으로 정리
		
		System.out.println(arData[4]); // 최대값 : 배열의 맨 끝 값
		System.out.println(arData[0]); // 최소값 : 배열의 첫번째 값
		
	}
}

 

 

출력내용

* 편의를 위해 "최대값:", "최소값:"을 붙혀 출력했습니다 정답 제출시에는 X

3
7
-4
-6
5
최대값 : 7
최소값 : -6
반응형