java↗6-3. 배열의 활용

개미Coder
|2024. 3. 19. 22:32
반응형

배열의 활용(1)

 

총합과 평균

배열의 모든 요소를 더해서 총합과 평균을 구한다.

class Ex5_2 {
	public static void main(String[] args) {
		int sum = 0;		// 총합을 저장하기 위한 변수
		float average = 0f; // 평균을 저장하기 위한 변수
		
		int[] score = {100,88,100,100,90};
		
		for (int i=0; i<score.length; i++) {
			sum += score[i];
		}
		average = sum / (float)score.length; // 계산결과를 float타입으로 얻으려 형변환
		
		System.out.println("총합 : " + sum);
		System.out.println("평균 : " + average);
	}
}

 

최대값과 최소값

배열의 요소 중에서 제일 큰 값과 제일 작은 값을 찾는다.

class Ex5_3 { 
	public static void main(String[] args) { 
		int [] score = {79,88,91,33,100,55,95};
		
		int max = score[0];
		int min = score[0];
		
		for (int i=1; i<score.length;i++) {
			if (score[i] > max) {
				max = score[i];
			}
			else if (score[i] < min) {
				min = score[i];
			}
		} // end of for
		
		System.out.println("최대값 :" + max);
		System.out.println("최소값 :" + min);
	} // end of main 
} // end of class

 

섞기(shuffle)

배열의 요소의 순서를 반복해서 바꾼다.(숫자 섞기, 로또번호 생성)

import java.util.Arrays;

class Ex5_4 {
	public static void main(String[] args) {
		int [] numArr = {0,1,2,3,4,5,6,7,8,9};
		System.out.println(Arrays.toString(numArr));
		
		for (int i=0; i<numArr.length;i++) {
			int n = (int)(Math.random() * 10);
			int tmp = numArr[i];
			numArr[i] = numArr[n];
			numArr[n] = tmp;
			System.out.println(Arrays.toString(numArr));
		}
	} // main의 끝
}
import java.util.Arrays;

class Ex5_5 { 
	public static void main(String[] args) { 
		// index : 0~45-1, 0~44
		int[] ball = new int[45];  // 45개의 정수값을 저장하기 위한 배열 생성.      

		// 배열의 각 요소에 1~45의 값을 저장한다. 
		for(int i=0; i < ball.length; i++)       
			ball[i] = i+1;    // ball[0]에 1이 저장된다.
		System.out.println(Arrays.toString(ball));
		// {1,2,3..44,45}

		int tmp = 0;   // 두 값을 바꾸는데 사용할 임시변수 
		int j = 0;     // 임의의 값을 얻어서 저장할 변수 

		// 배열의 i번째 요소와 임의의 요소에 저장된 값을 서로 바꿔서 값을 섞는다. 
		// 0번째 부터 5번째 요소까지 모두 6개만 바꾼다.
		for(int i=0; i < 6; i++) {       
			j = (int)(Math.random() * 45); // 0~44범위의 임의의 값을 얻는다. 
			tmp     = ball[i]; 
			ball[i] = ball[j]; 
			ball[j] = tmp; 
		} 

		// 배열 ball의 앞에서 부터 6개의 요소를 출력한다.
		for(int i=0; i < 6; i++) 
			System.out.printf("ball[%d]=%d%n", i, ball[i]); 
	} 
}
반응형