인프런 커뮤니티 질문&답변

오지윤님의 프로필 이미지
오지윤

작성한 질문수

쉽고 자연스럽게 배워보는 Javascript 입문 - 코드스쿼드 마스터즈 코스 레벨1

반복문 1

예제1번 질문있습니다.

작성

·

184

1

안녕하세요, 예제 1번 사용자가 입력한 수들의 갯수와 합을 구하는 프로그램을 작성하는 문제를 풀고 있는데 궁금증이 생겨서 문의합니다.

예제풀이를 보면 while로 되어있는데 for으로 구현해 봤거든요.

입력받는 창이 0이 되어도 안꺼져서 코드를 보니 for(num=1; num != 0; num++)가 잘못되어 있는것 같은데..

입력한 수들의 범위가 정해져 있지 않는 경우, 반복문을 쓰고 싶을땐  for문은 사용할 수 없고 while을 사용하면 되는건가요??

 <script>
      var count = 1;
      var sum = 0;
      for(var num = 1num != 0num++){
          n = Number(prompt("숫자를 입력하세요. 0누르면 종료"));
          sum = sum + num;
          console.log(countnumsum);
          count++;
      }
  </script>

답변 3

0

호눅스님의 프로필 이미지
호눅스
지식공유자

아아 프로그램의 로직을 생각해 보면 안 되는 이유가 있군요.

n = 0 에서 n++을 먼저 실행하고 조건을 검사하기 때문에 n = 1이 됩니다. 

for문을 사용할 수는 있지만 초기값 n = 1이나,  n++ 등이 다 의미가 없기 때문에 지금 예제에서는 적절하지 않은 것 같습니다.

0

오지윤님의 프로필 이미지
오지윤
질문자

선생님.. 말씀해주신대로 수정해봤는데 0을 입력해도 반복문이 끝나지 않습니다ㅜ while로 구현할때는 되는데 문제가 뭘까요..?

0

호눅스님의 프로필 이미지
호눅스
지식공유자

n -> num 으로 수정하시면 됩니다.  지금과 같은 경우에는 for문도 사용할 수 있구요.

오지윤님의 프로필 이미지
오지윤

작성한 질문수

질문하기