강의로 돌아가기
-

왜 안될까요?

public class ArrayExam {
public int sum(int[] param) {
int[] array = param;
int sum = 0;
// array는 길이를 알 수 없는 int형 배열입니다.
// array에는 정수가 들어있다고 가정하고 이 아래에서 sum에 array의 모든 값을 더하세요.
for ( int i= 0; i<array.lenght; i++){
int sum = array[i];
}
// 아래는 결과 평가를 위한 코드입니다. 수정하지 마세요.
return sum;
}

왜 안될까요?

작성중인 코드―ArrayExam.java
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
31
32
33
34
public class ArrayExam {
    public int sum(int[] param) {
        int[] array = param;
        int sum = 0;
        // array는 길이를 알 수 없는 int형 배열입니다.
        // array에는 정수가 들어있다고 가정하고 이 아래에서 sum에 array의 모든 값을 더하세요.

        // 아래는 결과 평가를 위한 코드입니다. 수정하지 마세요.
        return sum;
    }

    //아래는 실행을 위한 코드입니다. 수정하지 마세요.
    public static void main(String[] args) {
        int[]TestCase = new int[4];
        String str = "";
        int rightResult = 0;
        for(int i=0; i<4; i++){
            TestCase[i] = (int)(Math.random()*100);
            rightResult += TestCase[i];
            str+=(TestCase[i]+",");
        }
        str=str.substring(0,str.length()-1);

        ArrayExam exam = new ArrayExam();
        int Answer = exam.sum(TestCase);

        if (Answer==rightResult) {
            System.out.println("정답입니다. [제출]을 누르세요.");
        }
        else{
            System.out.println( str+"를 더한 sum의 값이 틀립니다.");
        }
    }
}
1 개의 답변
직업을 바꿀까...

일단 for문에 length 스팰링이 틀리셨네요, for문 안에 int sum = array[i]; 는 sum변수는 위에 선언되어 있기때문에 int를 빼고 사용하시면됩니다.
그리고 합이기 때문에 =가 아닌 += 로 중첩시켜주셔야 합니다 ex) sum += array[i];

  • -
    그렇군요 감사합니다. - 2017.09.20 20:42
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.