반응형
배열 요소의 최댓값 구하기
a[0], a[1], a[2]
max = a[0]
if(a[1] > max) max = a[1];
if(a[2] > max) max = a[2]'
max = a[0]
for(i=1; i< n; i++)
if(a[i] > max) max = a[i]
for문이 1부터인 이유는 a[0]은 이미 max에 저장되어 있기 때문이고, 요소 개수가 n개이면 if문은 n-1개 작성해야 한다.
배열은 0부터 시작하기 때문에 최대 a[n-1]개
for문을 돌리면서 a[1] 부터 마지막 요소 a[n-1]까지 차례로 살펴본다. == 스캔한다
랜덤으로 입력받은 키의 최댓값 구하기
package chap02;
import java.util.Random;
// 배열의 요소의 최댓값을 출력 (요솟수와 값을 난수로 생성)
class MaxOfArrayRand2_02_01 {
// 배열 a의 최댓값을 구하여 반환
static int maxOf(int[] a) {
int max = a[0];
for (int i = 1; i < a.length; i++)
if (a[i] > max)
max = a[i];
return max;
}
public static void main(String[] args) {
Random rand = new Random();
System.out.println("키의 최댓값을 구합니다.");
int num = 1 + rand.nextInt(20); // 사람 수를 1~20의 난수로 생성하는
int[] height = new int[num]; // 요솟수 num인 배열을 생성
System.out.println("사람수는 " + num + "명입니다.");
System.out.println("키는 아래처럼 됩니다.");
for (int i = 0; i < num; i++) {
height[i] = 100 + rand.nextInt(90); // 요솟값을 난수로 결정
System.out.println("height[" + i + "]:" + height[i]);
}
System.out.println("최댓값은 " + maxOf(height) + "입니다.");
}
}
반응형
'개발 > algorithm' 카테고리의 다른 글
[java][algorithm] 기수 변환 (10진수 정수 n진수 정수로 변환) (0) | 2018.10.07 |
---|---|
[java][algorithm] 배열 역순으로 정렬하기, 배열 뒤집기 (0) | 2018.10.07 |
[java] 반복 - 피라미드 만들기 (★) (0) | 2018.10.07 |
[java] 반복 - 구조적 프로그래밍 / 다중 루프 / 구구단 / 정사각형 만들기 (0) | 2018.10.07 |
[java] 반복 - 양수만 입력하기(do while문) / while,for,do문 차이 (0) | 2018.10.07 |