zoukankan      html  css  js  c++  java
  • 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 "&nbsp;";
            }
            //打印*号
            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 "&nbsp;";
            }
        //打印*号
        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 "&nbsp;";
                }
            }
        }
        echo "<br/>";
        }
    
    ?>

    3、修改代码,把金字塔倒转

    <?php
        //$n=5;
        for($i=1;$i<=5;$i++){
            //打印空格
            for($j=1;$j<=5-$i;$j++){
                echo "&nbsp;";
            }
            //打印*号
            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 "&nbsp;";
                    }
                }
            }
        echo "<br/>";
        }
        //倒转
        for($i=5;$i>=0;$i--){
            //打印空格
            for($j=0;$j<=5-$i;$j++){
                echo "&nbsp;";
            }
            //打印*号
            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 "&nbsp;";
            }
            //打印*号
            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 "&nbsp;";
                }
            }
        }
        echo "<br/>";
        }
        //倒转 抛空
        for($i=5;$i>=0;$i--){
            //打印空格
            for($j=0;$j<=5-$i;$j++){
                echo "&nbsp;";
            }
            //打印*号
            for($k=1;$k<=2*$i-3;$k++){
                //怎么打空格和*号的问题
                if($k==2*$i-3 || $k==1){
                    echo "*";
                }else{
                    echo "&nbsp;";    
                }
            }
        echo "<br/>";
        }
    ?>

    5、修改代码,把具体的数进行参数化 :把具体数字5改成$n=5代替,随后可以设置$n的值,可以任意放大和缩小

    <?php
        $n=5;
        for($i=1;$i<=$n;$i++){
            //打印空格
            for($j=1;$j<=$n-$i;$j++){
                echo "&nbsp;";
            }
            //打印*号
            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 "&nbsp;";
                    }
            }
        }
        echo "<br/>";
        }
        //倒转 抛空
        for($i=$n;$i>=0;$i--){
            //打印空格
            for($j=0;$j<=$n-$i;$j++){
                echo "&nbsp;";
            }
            //打印*号
            for($k=1;$k<=2*$i-3;$k++){
                //怎么打空格和*号的问题
                if($k==2*$i-3 || $k==1){
                    echo "*";
                }else{
                    echo "&nbsp;";    
                }
            }
        echo "<br/>";
        }
    ?>

    效果图:

    最后大功告成。顺便说说 ,其实编程不难,难就难在怎么样的思路,怎样去解决问题的方法。所以大家在编程的过程中善于思考。尽管花了半天的时间去想,但是最后想出来了,问题也得到解决,所以平时要多动脑动手去实践。我们的编程能力才能提高。只有实践了,东西才能被理解,知识点也掌握了。

  • 相关阅读:
    PHP compact() 函数
    JS动态插入HTML后不能执行后续JQUERY操作
    find命令
    服务提供者框架模式
    Ant的使用
    git的常用命令
    结合程序崩溃后的core文件分析bug
    设备特殊文件
    函数chdir、fchdir和getcwd
    静态库和动态库
  • 原文地址:https://www.cnblogs.com/pwm5712/p/2961744.html
Copyright © 2011-2022 走看看