프로그래밍 언어/자바의 정석 기초편

자바의 정석 기초편 ch5-8,9 배열의활용(1)~(2)

life grow 2022. 6. 7. 23:22

5-8 배열의 활용(1)

 

예제 5-2 총합과 평균

 

import java.util.Arrays;

public class lnterfaceEx {
	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 = (float)sum / score.length;
		
		System.out.println("총합 = "+sum); //총합
		System.out.println("평균 = "+average); //총합
	}
}
/*결과
총합 = 478
평균 = 95.6
*/

더 정확한 계산을 위해서 float로 형변환한다.

average = (float)sum / score.length;

float를 써주는 이유는 int / int의 값은 int이기 때문에

average의 결과값이 95.0이 돼버린다.

그래서 float를 해줌.

그러면 95.6이 나오게 된다.

 

5-8 배열의 활용(2)

 

예제 5-3 최대값과 최소값

import java.util.Arrays;

public class Su2_1 {
	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(max<score[i]) {
				max = score[i];
			}else if(min>score[i]) {
				min = score[i];
			}
		}
		System.out.println("max = " + max);
		System.out.println("min = " + min);
	}
}
결과
max = 100
min = 33

 

int max = score[0];
int min = score[0];

socre[0]을 저장해주므로

for(int i=1;i<score.length;i++)

int i=1부터 시작해도 됨

 

socre[0]의 값인 79가 max와 min의 값이기 때문이다.