• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

Quiz에서 정답이 달라도 괜찮은가요???

23.10.06 14:46 작성 23.10.06 18:43 수정 조회수 173

0

Quiz 6을 풀고 답을 봤는데 결과는 같지만 과정이 조금 달라서 왜 그런지 찾아보는데 아무리 봐도 이해가 잘 안가네요 ㅠㅠ

String[] size0 = new String[10];

for (int i = 0; i < size0.length; i++) {
    int shoeSize = 250 + (5 * i);
    System.out.println("사이즈 " + shoeSize + " (재고 있음)");
}

 

int[] sizeArray = new int[10];

for (int i = 0; i < sizeArray.length; i++) {
    sizeArray[i] = 250 + (5 * i);
}
for (int size : sizeArray) {
    System.out.println("사이즈 " + size + " (재고 있음)");

}

위에것이 제가 한거고 아래가 선생님인데요

둘다 결과는 같게 출력이 됩니다.

 

아래의 sizeArray[i] 를 하는 이유랑 아래 for문 하나 더 해서 for(int size : sizeArray) 를 쓰는 이유가 이해가 잘 안가서용..

 

PS. Quiz를 푸는데 머리에서 바로바로 응용할 수가 없어서 앞에서 배운 부분들을 다시 돌려보고 찾아보면서 quiz 를 입력하는데 괜찮은건가요?? (마치 오픈북처럼...)

물론 안보고하면 최고긴 할텐데 그렇게 하려면 완전 달달 외우고있어야 하는것 같아서요

답변 1

답변을 작성해보세요.

0

안녕하세요?

문의 주신 퀴즈는 앞에서 공부하신 배열의 사용법에 대한 점검 및 복습 차원에서 제공해드린 것입니다. 그래서 일부러 저는 배열에 값을 넣는 것을 하나의 반복문으로, 그리고 배열을 순회하는 것을 새로운 반복문으로 해서 풀이를 하였는데요.

사실 질문자분께서 작성하신 것처럼 하나의 반복문을 사용하셔도 결과는 동일하게 나옵니다. 오히려 아래처럼 size0 배열을 사용하지 않고 더 간단하게 해볼 수도 있어요.

for (int i = 0; i < 10; i++) {
    int shoeSize = 250 + (5 * i);
    System.out.println("사이즈 " + shoeSize + " (재고 있음)");
}

다만 배열을 어떻게 선언하고 반복문을 이용해서 원하는 값을 어떻게 넣는지, 그리고 배열의 요소는 어떤 식으로 순회하는지를 익히기 위한 목적으로 풀이를 이해해주시면 좋겠습니다. 작성해주신 코드는 배열을 선언하고 반복 회차를 정의하기 위해 length 를 이용하지만 실제로 배열에 값을 넣는 부분은 따로 없다는 점이 제가 작성한 코드와는 다르네요.

그리고 앞에서 배운 내용을 복습하시고 코드를 참고하여 퀴즈를 풀이하시는 것은 매우 좋습니다. 심지어 구글링을 하셔도 좋고 ChatGPT 를 활용하셔도 됩니다. 작성된 코드가 어떤 원리로 동작하는지만 올바로 이해하고 계시면 그것으로 충분합니다 😊 사실은, 오히려 그렇게 활용해주셨으면 해서 다양한 사용법에 대해 최대한 많은 코드를 담으려고 했답니다. 언젠가 지금 배우신 내용이 기억나지 않으실 때, 자바 기본편 코드를 다시 확인해보시면 아마 금방 기억이 되살아날 거예요!

감사합니다.