前端

做了一份html控制台画规则形状的代码

1.菱形

        <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script type="text/javascript">
                var a=math.floor(prompt());//用户键入需要输入的值
                a = a
                var i=0;//初始化变量i,z,x
                var z= "*"
                var x = " "   
        
                var t = a%2 //对用户输入的值进行判断由于考虑了对角线否则可用a值直接进行运算 
                switch (t){

                    case 1://a为奇数时进行运算
                        t = Math.floor((a+1)/2)
                        var i=0;
                        var z= "*"
                        while (i<t-1){
                        var j = 0
                        x=" "
                        while (j<(t-i)){
                            x = x + " "
                            j++
                        }
                        console.info(x+z)//进行记录数据
                        i++
                        z= z+ "*" + "*" 
                        }
                        var i=0;
                        var z= " "
                        
                        var x = "*"
                        while (i<t){
                            
                            var j = 0
                            var x="*"
                            while (j<(t-i-1)){
                                x = x + "*"+ "*"
                                j++
                                
                            }
                            z= z + " " 
                            console.info(z + x)
                            i++
                            
                    
                        }
                        break;//破土而出运行接下来的程序
                    case 0:
                        t = Math.floor((a+1)/2)
                        var i=0;
                        var z= "*"
                        while (i<t){
                    
                        var j = 0
                        x=""
                        while (j<(t-i)){
                            x = x + " "
                            j++
                        }
                        console.info(x+z)
                        i++
                        z= z+ "*" + "*" 
                        }
                        var i=0;
                        var z= " "
                        
                        var x = "*"
                        while (i<t){
                            
                            var j = 0
                            var x="*"
                            while (j<(t-i-1)){
                                x = x + "*"+ "*"
                                j++
                                
                            }
                            console.info(z + x)
                            i++
                            z= z + " " 
                    
                        }
                        
                
                }
            </script>
        </head>
        <body>
        </body>
    </html>
菱形.jpg

空心菱形

思路 第一种用双层循环 i,j 可视为坐标 x,y 求满足x,y的函数为 “ * ” ,不满足的为 “ ” 空格。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <script type="text/javascript">
                var a=parseInt(prompt(“请输入整数  如  8  ”));//用户输入
                var a=2*a
                var z = " "//初始化
                for (var i = 0; i < a+1; i++) {
                    
                    var z = ""
                    
                    for (var j = 0; j < a+1; j++) {

                        
                        //对零星的四条边进行条件判断规则的线条基本可用这个思路
                    
                        if (i+j==a/2) {
                            z="*" + z
                        }
                        else if (i+j==3*a/2) {
                            z="*" + z
                        } 
                        else if (j-i==a/2) {
                            z="*" + z
                        } 
                        else if (j-i==-a/2) {
                            z="*" + z
                        }
                        // 十字空心菱形如果取消注释则菱形中间会出现十字架注释则为全空心菱形
                        //else if (i==a/2 || j==a/2){
                        //  z="*" + z
                        //}
                    //上图条件不成立的时候空格占位
                        else{
                            z=" " + z
                        }
                    }console.info(z)
                    
                }
            </script>
        </head>
        <body>
        </body>
    </html>
2018-03-13_200549.jpg
2018-03-13_200609.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容