코딩알파
[Java] 배열 최대값,최소값 구하기 scanner 입력 출력 구하기 본문
728x90
java에서 최댓값, 최솟값 구하는 방법을 2가지 알아보겠습니다.
우선 배열에 값을 저장하고 그 안에서 최솟값과 최댓값을 찾을 겁니다.
for문 사용 방법 |
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
|
import java.util.Arrays;
public class TTESST {
public static void main(String[] args) {
int[] array = { 7,2,8,4,87,47,21,100,94,71};
System.out.println("array="+Arrays.toString(array));
int max = array[0];
int min = array[0];
for(int i=0; i<array.length; i++) {
if(max<array[i]) {
max=array[i];
}
if(min>array[i]) {
min=array[i];
}
}
System.out.println("최대값:"+max);
System.out.println("최소값:"+min);
}
}
|
cs |
1
2
3
4
|
array=[7, 2, 8, 4, 87, 47, 21, 100, 94, 71]
최대값:100
최소값:2
|
cs |
변수 max와 min을 array[0]으로 선언과 동시에 초기화를 해줍니다.
그리고 for 문과 if 문을 사용하여 max<array[i] 조건이 참이면 max=array[i]로 큰 값을 찾아서 max에 저장합니다.
최솟값도 마찬가지로 min과 array[i]를 비교하여 작은 값을 찾아 저장합니다.
Arrays.sort(배열이름) 정렬방법 |
import java.util.Arrays;
public class TTESST {
public static void main(String[] args) {
int[] array = { 7,2,8,4,87,47,21,100,94,71};
System.out.println("----Arrays.sort(배열이름) 사용전----");
System.out.println("array="+Arrays.toString(array));
Arrays.sort(array);
System.out.println("----Arrays.sort(배열이름) 사용후----");
System.out.println("array="+Arrays.toString(array));
int max =array[array.length-1];
int min =array[0];
System.out.println("최대값:"+max);
System.out.println("최소값:"+min);
}
}
|
cs |
|
----Arrays.sort(배열이름) 사용전----
array=[7, 2, 8, 4, 87, 47, 21, 100, 94, 71]
----Arrays.sort(배열이름) 사용후----
array=[2, 4, 7, 8, 21, 47, 71, 87, 94, 100]
최대값:100
최소값:2
|
cs |
Arrays.sort(배열 이름) 을 사용하면 오름차순으로 정렬합니다.
우리가 구해야 하는 것은 최댓값과 최솟값이므로 max에서 array의 길이는 총 10이고 인덱스는 9이므로 (길이-1)을 해서 max의 가장 큰 값을 저장합니다.
min은 인덱스의 가장 첫 번째 0을 저장합니다.
Scanner로 배열에 입력하고 출력하여 최대값과 최소값 찾기 |
import java.util.Arrays;
import java.util.Scanner;
public class maxminArray {
public static void main(String[] args) {
int[] array = new int[10]; //배열 크기 10으로 지정한다.
System.out.println("10개의 랜덤한 수");
Scanner s = new Scanner(System.in); //Scanner 선언
for(int i=0; i< array.length; i++) {
System.out.print((i+1)+"번째 수:");
array[i]=s.nextInt();
}
System.out.println("array="+Arrays.toString(array));
Arrays.sort(array);
int max= array[array.length-1];
int min= array[0];
System.out.println("최소값:"+ min);
System.out.println("최대값:"+ max);
}
}
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
10개의 랜덤한 수
1번째 수:45
2번째 수:91
3번째 수:8
4번째 수:312
5번째 수:44
6번째 수:99
7번째 수:101
8번째 수:214
9번째 수:74
10번째 수:22
array=[45, 91, 8, 312, 44, 99, 101, 214, 74, 22]
최소값:8
최대값:312
|
cs |
Scanner를 사용하여 배열에 값을 입력하여 저장하였고 배열 안에서 최댓값과 최솟값을 찾았습니다.
오늘은 배열의 최댓값과 최솟값을 알아보았습니다.
728x90
'JAVA공부' 카테고리의 다른 글
[Java] 가위,바위,보 게임만들기 승,패 정하기 (0) | 2021.09.16 |
---|---|
[Java]배열 서로 변경 temp사용 서로다른값 바꾸기 (0) | 2021.09.15 |
[Java] switch문 알아보기(예제) Scanner (0) | 2021.09.14 |
[Java] 배열출력방법 toString ,향상된 for문 (0) | 2021.09.12 |
[Java] - if문 조건문 (0) | 2021.09.11 |
Comments