Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Tags
more
Archives
Today
Total
관리 메뉴

인사이트

[JAVA] int배열의 합과 평균 구하기 본문

JAVA

[JAVA] int배열의 합과 평균 구하기

쿰쿵 2021. 6. 2. 20:49

아래는 내가 짜봤던 코드이고 다음과 같은 걸 구하는 코드이다

1. 합계

2. 평균(셋째 자리에서 버리고 둘째자리까지 나타내기)

3. 평균(셋째 자리에서 반올림해서 둘째자리까지 나타내기)

// 합계, 평균 계산 방법 1
int[] score = { 98, 78, 87 };

int totalSum = 0;
double avgD = 0.0;
int avgI = 0;

for (int i = 0; i < score.length; i++) {
	totalSum += score[i];
}
System.out.println("총점은 " + totalSum);

avgD = (double) totalSum / score.length;
System.out.println("평균은 " + avgD);

avgI = totalSum / score.length;

double avgCon = (avgD * 100); // 87.6666666
int result = (int) avgCon % 100;// 66

System.out.println("평균 소수 둘째자리까지(버림) : " + avgI + "." + result); // 버림

int lastNum = 0;

for (int i = 0; i < 3; i++) {
	int roundAvg = (int) avgCon % 10;
	lastNum = roundAvg;
}

int lastResult = 0;

if (lastNum >= 5) {
	lastResult = result + 1;
} else {
	lastResult = result;
}
System.out.println("평균 소수 둘째자리까지(반올림) : " + avgI + "." + lastResult); // 반올림

 

 

이거는 결과는 같지만 방식을 좀 달리 표현했는데 더 간결하고 좋은 것 같아서 올렸다

여기서 구한 건 다음과 같다

1. 합계

2. 평균(셋째 자리에서 반올림해서 둘째자리까지 나타내기)

* 0.5를 더한 게 너무 신선했다.

 

// 합계, 평균 계산 방법 2
int[] score = { 98, 78, 87 };

int total = 0;
double avg = 0.0;

for (int i = 0; i < score.length; i++) {
	total += score[i];
}
System.out.println("총점은" + total + "입니다");
avg = (double) total / score.length;
avg = (int) (avg * 100 + 0.5) / 100.0; // 8766.6 + 0.5 = 8767
System.out.println("평균은" + avg + "입니다");

 

'JAVA' 카테고리의 다른 글

[JAVA] 클래스의 구성요소  (0) 2021.06.03
[JAVA] 향상된 for문  (0) 2021.06.02
[JAVA] int배열 정렬 (오름차순, 내림차순)  (0) 2021.06.02
[JAVA] int값 뒤집기  (0) 2021.06.02
[JAVA] 정리 1  (0) 2021.05.31