for 과 while 어케 다른가요? > 그누3질답

그누3질답

for 과 while 어케 다른가요? 정보

그누보드 for 과 while 어케 다른가요?

본문

고수님들 가르쳐 주세요...
  • 복사

댓글 전체

실행을 먼저 하고 루프를 돌리는 것은 찾아본 결과 do-while이 맞네요..

while은 for문과 같이 전체적으로 한번 실행을 하죠..그담에 딱히 몇번이라고 정해 주면 그 만큼 실행이 된 후에 빠져 나오지만 숫자나 어떠한 조건이 주어지지 않는다면 무한 루프 상태가 됩니다.

for문은 처음에 초기값과, 그리고 비교값, 증가값이 있기때문에 무한 루프가 될 경우는 없지요..
^^;;
저 초보 맞아요~~ ^^;;
php는 지금도 많이는 몰라요..
첨에 사이트 프로젝트 들어가기전까지는 여기저기 찾아보면서 기초를 봤거든요..^^;;
지금도 기초부분을 보고있는 형편이지만..^^;
그리구 대부분 언어의 처음 부분은 다 비슷비슷해서 그거에 비춰서 말씀 드린거예요..^^
제가 php로는 잘 몰라서인지도 모르지만..대부분의 프로그램에서는 while은 잘 안쓰이더라구요..
php에서는 정의밖엔 잘 모르겠어요..^^;;
죄송..
while
<?
  $i = 1;
  while ($i <= 10) { //구문이 참이면.. 중괄호부분을 무한반복
      echo $i++;
      //$i 가 1씩 계속 증가하니 10번 반복하면 끝나겠지요?
  }
?>
while은 루프라고 하며.. 조건절이 참일 경우 무한 반복하게 됩니다.
위의 소스에서 보시다시피 변수 $i는 실행시마다 1씩 증가하며..
구문은 변수 $i의 값을 매번 체크하여 참일 경우 다시 실행 시키게 됩니다.
따라서 while 구문은 10번 실행후 자동 종료됩니다. ^^
---------------------------------------------------------------------------------------------
for

for 문은 while과 같은 루프입니다.

for (expr1; expr2; expr3) statement

와 같은 형식을 가지며.. expr1 이 무조건 한번 실행된 후에..

expr2 조건을 검사합니다.

expr2가 참이면 statement를 실행하고 statement가 모두 실행되면 expr3를 실행합니다.

( 뭔말인지 모르시겠죠? ^^;;;; )

소스를 보시면 쉽게 이해하실 수 있을 것입니다.
<?
  /* 아래는 모두 1 부터 10까지 출력하는 프로그램입니다.
      그 차이를 한번씩 생각해 보세요..
      가장 일반적인 방법은 첫번째 방법입니다.
  */
   
  for ($i=1; $i <=10; $i++) {
      echo $i;
  }
   
   
  for ($i = 1;;$i++) {
      if ($i >10 ) {
          break; // 루프를 빠져나감
      }
      echo $i;
  }

  $i=1;
  for (;;) {
      if ($i > 10) {
          break;
      }
      echo $i;
      $i++;
  }

  for ( $i = 1; $i <= 10; print $i,$i++ ) ;
  //print는 되는데.. echo는 안되네요...
?> 

나머지 세 방법은 이렇게도 할 수 있구나 하는 것 정도만 이해하시면 됩니다.
http://www.phpschool.com/bbs2/inc_view.html?id=734&code=down2

여기에 가셔서 chm이라고 되어 있는 문서를 다운 받으셔서 참고해 보세요
초보자를 위해서 만든 문서입니다..
기초부터 시작해서 여러가지 내용이 있으니 도움이 되시리라 봅니다..^^
© SIRSOFT
현재 페이지 제일 처음으로