js基础运用——js用*打印三角形,菱形

js基础运用

新手见解,有不足或更简单的方法希望各位指点

1.用*排列直角三形

这里写图片描述(图一)

这里写图片描述(图二)
图一图二是js语句利用*号画出来的直角三角形,方法思路都一致,下面以图一为例讲一下本人所用的方法

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript">
    for(var j=1;j<5;j++)
{
       for(var i=1;i<=j;i++)
    {
        document.write("*");
    }
    document.write("<br/>");
}
//此段简单的js代码由三部分组成,1.for(var i=1;i<=j;++){},这段语句用来输出星号。2.for(var j=1;j<5;j++){},这段语句将语句1中语句循环了4次,其中在1中语句之外每循环一次输出一个换行符,使1中每循环完一次便换一行。3.三角形是由上至下,星号逐渐递减的,这个效果是结合了1和2两个语句完成,1中的i<=j便是关键所在,结合2中给j所赋的值达到星号递减。
    </script>
</head>
<body>

</body>
</html>

在画直角三角形的基础上,可以延伸出乘法表的写法,具体如下:
这里写图片描述(图三)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript">
    for(var j=1;j<9;j++){
       for(var i=1;i<=j;i++){
        document.write(i+"×"+j+"="+i*j+"&nbsp");
    }
    document.write("<br/>");
}
    </script>
</head>
<body>

</body>
</html>

锐角三角形

这里写图片描述(图四)

这里写图片描述(图五)
锐角三角形只是在直角三角形上加了一段输出空格的语句,以图四为例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript">
    for(var j=1;j<5;j++){
        for(var a=3;a>=j;a--){
            document.write("&nbsp");//相对与直角三角形的写法,在整体结构上,锐角三角形只是在循环输出星号开始之前加了一个输出空格符号的一段for语句,其空格的输出写法思路和星号递减的写法思路大同小异。
        }
       for(var i=1;i<=j;i++){
        document.write("*");
    }

    document.write("<br/>");
}
    </script>
</head>
<body>

</body>
</html>

菱形

这里写图片描述(图六)
菱形是js利用 * 号写三角形的进阶用法,且从图六可以看出,三角形中 * 号的递曾和递减都是2个,看起来写法比图一二四五复杂了一些,其实只是一个简单的if语句的嵌套

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript">
    for(i=7;i>=1;i--)
{
        if(i%2>0)//为了让星号以2递增递减,所以型号数量为2,4等偶数数量的行数都必须消失,所以在输出三角形的语句执行之前加入了一个判断i是否为奇数,是奇数就执行代码,否则不执行,这样就达到了1,3,5递增的三角形。
 {
            for(k=i;k>1;k-=1)
            {
                document.write("&nbsp")
            }
        for(var a=7;a>=i;a--)
        {
            document.write("*")
        }
    document.write("<br/>");
 }
}
        for(i=3;i<9;i++)
{
        if(i%2>0)//这是一个输出倒三角的for语句,方法和正三角基本一样,两个三角组成一个菱形,其实其更像一个平行四边形。
 {
            for(k=i;k>1;k-=2)
            {
                document.write("&nbsp")
            }
        for(var a=7;a>=i;a--)
        {
            document.write("*")
        }
    document.write("<br/>");
 }
}
    </script>
</head>
<body>

</body>
</html>

以上便是全部内容,请多多指教。

  • 14
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值