문제는
5명의 나이 입력받기
평균나이보다 큰 인원수와 평균나이보다 큰 인원의 나이 출력
평균 이하 나이 출력
최대나이 최소나이 출력
이건데...
```
import java.util.Scanner;
public class avg2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
final int age=5;
int []age2=new int[age];
int avgmax=0,sum=0, avgmin=0,avgmaxcount=0,max=0, min=0,dif=0,i=0, j=0, avg=0;
for(i=0;i<age2.length; i++) {
System.out.println("나이를 입력하세요");
age2[i]=sc.nextInt();
sum+=age2[i];
avg=(int)sum/5;
if(avgmax<age2[i]) {
avgmax=age2.length;
}
if(avgmin>age2[i]) {
avgmin=age2[i];
}
if(max>age2[i]) {
max=age2[i];
}
if(min<age2[i]) {
min=age2[i];
}
}
}
System.out.println("평균보다 큰 인원수:"+avgmax);
System.out.println("평균 이하 나이: "+avgmin);
System.out.println("최대나이: "+max);
System.out.println("최소나이: "+min);
}
```
오류가 발생하네요 ㅠㅠ (System.out.println문)
위에 조건을 잘못 입력한걸까요?
틀린 지점을 짚어 주시면 감사하겠습니다.
또 평균에 가장 가까운 나이값은 값에따른 차이값을 구하려면 어떤 수식을 사용하여 입력해야될까요??
sehongpark님의 답변
## println의 위치
`println`메소드의 위치가 메인 메소드 밖으로 벗어나있네요 안쪽으로 이동시켜보세요.
sehongpark님의 답변
## 뼈대코드
아래와 같은 식으로 작성해보는 건 어떨까요?
```
public class AverageAge {
public static void main(String[] args) {
int[] ages = { 26, 28, 23, 21, 22, 24, 22, 28, 29, 31, 33 };
int average = getAverage(ages);
int[] uppers = getUppers(ages, average);
int[] lowers = getLoswers(ages, average);
int max = getMax(ages);
int min = getMin(ages);
}
private static int getMin(int[] ages) {
return 0;
}
private static int getMax(int[] ages) {
return 0;
}
private static int[] getLoswers(int[] ages, int average) {
return null;
}
private static int[] getUppers(int[] ages, int average) {
return null;
}
private static int getAverage(int[] ages) {
return 0;
}
}
```