자바스크립트 가까운 자연수 찾기 질문

자바스크립트 가까운 자연수 찾기 질문

QA

자바스크립트 가까운 자연수 찾기 질문

답변 1

본문

var a=[131,450,-100,150,50,-10,0,40,32,1,4,-4,44,99];
var Mincha=533;
var N=0,Ans=N;
var Cha = 0;
do{
  if(a[N]>=33){Cha=a[N]-33;}
  else{Cha=33-a[N];}
  if(Cha<Mincha){
    Mincha=Cha;
    Ans=N;
  }
  N++;
}while(N<14);
document.write(Ans+1);

 

dowhile 바깥에 전역변수 var Ans=N;이 선언되어있는데

왜 dowhile문 안에서도 한번 더 선언을 해야하는지 잘 이해가 안가는데

왜 그런지 아시는 분 계신가요?

그리고 어떤 원리로 32를 찾아냈는지도 궁금하네요..

이 질문에 댓글 쓰기 :

답변 1

이건 너무 기초적인 질문이라..^^;; 

처음에 N=0 인데 N++로 하나씩 증가 시키는 겁니다.

a 배열이 14자리여서 N<14 까지 동작하구요.

33보다 크면 a[N]에서 33이 빼고 

33보다 작으면 33에서 a[N]를 빼서 

그 차(Cha)를 구하고

최소차(Mincha)와 비교해서 더 작으면 그 값을 저장 Ans=N

마지막에 출력..

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 82
© SIRSOFT
현재 페이지 제일 처음으로