>  기사  >  백엔드 개발  >  속이 빈 피라미드 인쇄를 구현하는 PHP의 두 가지 방법

속이 빈 피라미드 인쇄를 구현하는 PHP의 두 가지 방법

WBOY
WBOY원래의
2016-08-08 09:19:362232검색
<?php
/*
 *
 *帮朋友做题,写了一个这个空心金字塔的代码。希望和大家交流一下,提出*宝贵建议.
 *
 */
//第一种实现方法
$n=20;//定义总函数
for($i=1;$i<=$n;$i++)//行数循环
 {  
    for($k=1;$k<=$n-$i;$k++)//循环打印出每行前面的空格
	  {  
		  echo "&#160;";
	  }
	//判断并打印出第一行与最后一行的&#39;*&#39;
	if(($i==1)||($i==$n))
	{
		for($j=1;$j<=2*$i-1;$j++)
		  {
			echo &#39;*&#39;;
		  }
		  echo&#39;<br/>';
	}else//循环打印出其他行的'*'与空格
	   {
			echo '*';
			for($k=1;$k<=2*$i-3;$k++)
				{
				echo &#39;&#160;&#39;;
				}
			echo &#39;*&#39;;
			echo &#39;</br>';
	  }
}
//第二种实现空心金字塔(个人感觉代码繁琐,唉。)
$n=20;//定义总函数
for($i=1;$i<=$n;$i++)//行数循环
{  
  for($k=1;$k<=$n-$i;$k++)//循环打印出每行前面的空格
	{
        echo &#39;&#160;&#39;;
    }
  //循环打印出每一行前面空格后的&#39;*&#39;
  if($i==1)//第一行
	{
		echo &#39;*&#39;;
		echo &#39;</br>';
	}else//其它行
		{echo '*';}
  if(($i>=2)&&($i<=$n-1))
	{ //循环打印出第二行到第n-1行的样式
       for($j=1;$j<=2*$i-3;$j++)
		{
	      echo &#39;&#160;&#39;;
	    }
		echo &#39;*&#39;;
		echo &#39;</br>';
    }else if($i==$n)
	   {//循环打印出最后一行的样式
		  for($m=1;$m<=2*$i-2;$m++)//2*$i-2是因为前面多打印一个&#39;*&#39;
		   {
		     echo "*";
		   }
		   echo &#39;</br>';
       }
}
?>

저작권 표시: 이 글은 해당 블로거의 원본 글이므로 블로거의 허락 없이 복제할 수 없습니다.

위 내용은 PHP에서 속이 빈 피라미드를 인쇄하는 두 가지 방법을 소개하며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.