복습 문제(for문, while문) 풀이

· 댓글 : 0 조회 : 2036 · 0

<?php
$num1 = "&nbsp;";
$num2 = "::";
$add1 = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
$add2 = array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1);


for($i=0; $i < sizeof($add1); $i++){
 
  $j=0;
  while($add2[$i] > $j){
   echo $num1; 
   $j++;
     }
  
  $j=0;
  while($add1[$i] > $j){
   echo $num2; 
   $j++;
   }
     echo "
";
     }

for($i=0; $i < sizeof($add2); $i++){
  
  $j=0;
  while($add1[$i] > $j){
   echo $num1; 
   $j++;
     }
  
  $j=0;
  while($add2[$i] > $j){
   echo $num2; 
   $j++;
   }
   
 echo "
";
 }

?>

 

----------------------------------------------------------------------------------------------------------

for($i=0; $i < sizeof($add1); $i++){  // 이 부분은 sizeof()함수로 이용해서 배열되는 갯수를 설정한것입니다. 1식 초기화 2식 조건 3식 반복 for문은 조건이었습니다. 배열되는 갯수이기때문에 $add1이든 $add2던 배열되는 수는 같기때문에 어떤것이 오든 상관은 없겠네요...

 

$j=0;  // 증가되는 $i는 한번나왔기때문에 j로 설정하고 증가되는 부분을 초기화 시켰습니다.


while($add2[$i] > $j){  // 이부분은 for문의  $add2[$i] 값이 거짖이 될때까지 반복문 실행 즉 0보다 크고 배열변수 값만큼 반복을 실행

                                     $add2[0] = 10이 됩니다. $num1은 공백입니다. 공백 10번이 실행되게되는것입니다.

                                     이렇게 while문을 응용해서 반복 3번더 실행하게되면 다이아몬드형식을 만들수있습니다.

echo $num1;
$j++;                               // 증가
     }

 

echo "
";  // for문의 반복이 한번씩 끝날때마다 
에 의해 엔터가 쳐집니다.

통계분석을 위해 매체별 전용URL 사용해주세요.
불타는면빨님의 포스트
최근 리스트
리스트가 없습니다.