PHP练习--用for循环打印空心菱形
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP练习--用for循环打印空心菱形相关的知识,希望对你有一定的参考价值。
思路:1,写出代码打印实心的金字塔
2、修改代码,把金字塔抛空
3、修改代码,把金字塔倒转
4、修改倒转后的代码,把金字塔抛空
5、修改代码,把具体的数进行参数化
1、写出代码打印实心金字的金字塔:
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-1;$k++){ echo "*"; } echo "<br/>"; } ?>
2、
2、改善代码,把金字塔抛空
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-1;$k++){ //打印第一行后最后一行都打*连接 if($i==1 || $i==5){ echo "*"; }else{ //怎么打空格和*号的问题 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } ?>
3、修改代码,把金字塔倒转
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-1;$k++){ //打印第一行后最后一行都打*连接 if($i==1 || $i==5){ echo "*"; }else{ //怎么打空格和*号的问题 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } //倒转 for($i=5;$i>=0;$i--){ //打印空格 for($j=0;$j<=5-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-3;$k++){ echo "*"; } echo "<br/>"; } ?>
4、修改倒转后的代码,把金字塔抛空,并把中间的*号去掉 修改这里的代码(if($i==1 || $i==5){ //去掉$i==5 把中间抛空)
<?php //$n=5; for($i=1;$i<=5;$i++){ //打印空格 for($j=1;$j<=5-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-1;$k++){ //打印第一行后最后一行都打*连接($i==1 || $i==5) if($i==1){ //去掉$i==5 把中间抛空 echo "*"; }else{ //怎么打空格和*号的问题 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } //倒转 抛空 for($i=5;$i>=0;$i--){ //打印空格 for($j=0;$j<=5-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-3;$k++){ //怎么打空格和*号的问题 if($k==2*$i-3 || $k==1){ echo "*"; }else{ echo " "; } } echo "<br/>"; } ?>
5、修改代码,把具体的数进行参数化 :把具体数字5改成$n=5代替,随后可以设置$n的值,可以任意放大和缩小
<?php $n=5; for($i=1;$i<=$n;$i++){ //打印空格 for($j=1;$j<=$n-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-1;$k++){ //打印第一行后最后一行都打*连接($i==1 || $i==5) if($i==1){ //去掉$i==5 把中间抛空 echo "*"; }else{ //怎么打空格和*号的问题 if($k==1 || $k==2*$i-1){ echo "*"; }else{ echo " "; } } } echo "<br/>"; } //倒转 抛空 for($i=$n;$i>=0;$i--){ //打印空格 for($j=0;$j<=$n-$i;$j++){ echo " "; } //打印*号 for($k=1;$k<=2*$i-3;$k++){ //怎么打空格和*号的问题 if($k==2*$i-3 || $k==1){ echo "*"; }else{ echo " "; } } echo "<br/>"; } ?>
效果图:
最后大功告成。顺便说说 ,其实编程不难,难就难在怎么样的思路,怎样去解决问题的方法。所以大家在编程的过程中善于思考。尽管花了半天的时间去想,但是最后想出来了,问题也得到解决,所以平时要多动脑动手去实践。我们的编程能力才能提高。只有实践了,东西才能被理解,知识点也掌握了。
以上是关于PHP练习--用for循环打印空心菱形的主要内容,如果未能解决你的问题,请参考以下文章