1. js绘画金字塔

思想:先画n-i个空格,再画2*i-1个*号,再画n-i个空格(此处可以省略),一行画完之后换行;循环下一行(先判断每行的空格数和*号与行数间的关系)

var  n=window.prompt();

for(var i=1;i<=n;i++){

for(var j=1;j<=n-i;j++){

document.write("&nbsp");

}

for(var j=1;j<=2*i-1;j++){

document.write("*");

}

document.write("<br/>");

}

2. js绘画空心金字塔

思想:先画n-i个空格,再画*号,判断j是否处于首末位置,是的话画*,否则画空格,同时最后一行全*

var  n=window.prompt();

for(var i=1;i<=n;i++){

for(var j=1;j<=n-i;j++){

document.write("&nbsp");

}

for(var j=1;j<=2*i-1;j++){

if(i==n){

document.write("*");

}else if(j=1||j==(2*i-1)){

document.write("*");

}else{

document.write("&nbsp");

}

}

document.write("<br/>");

}

3. js绘画三角形

思想:i行i个*号,注意换行

for(var i=1;i<=n;i++){
  for(h=1;h<=i;h++){
   document.write("*");
  }
       document.write("<br/>");
   }

4.js绘画菱形

思想:先画菱形上半部分(注意空格、*号和行间的关系,注意换行)再画菱形下半部分

//菱形上部分,此处的n表示*号最多的行数
   for(var i=1;i<=n;i++){
    for(var j=1;j<=n-i;j++){
     document.write("&nbsp");
    }
    for(var j=1;j<=2*i-1;j++){
     document.write("*");
    }
    for(var j=1;j<=n-i;j++){
     document.write("&nbsp");
    }
    document.write("<br/>");
   }
   //菱形下半部分
    for(var i=1;i<=n;i++){
              for(var j=1;j<=i;j++){
                  document.write("&nbsp");
                  }
              for(var j=1;j<=(2*(n-i)-1);j++){
                     document.write("*");
                      }
              //for(var j=1;j<=2*i-1;j++){document.write("&nbsp");}
              document.write("<br/>");
              }

或者

//此处的n为总行数、

var m=(n+1)/2;

for(var i=1;i<=m;i++){
    for(var j=1;j<=m-i;j++){
     document.write("&nbsp");
    }
    for(var j=1;j<=2*i-1;j++){
     document.write("*");
    }
    for(var j=1;j<=m-i;j++){
     document.write("&nbsp");
    }
    document.write("<br/>");
   }
   //菱形下半部分
    for(var i=m+1;i<=n;i++){
              for(var j=1;j<=i-m;j++){
                  document.write("&nbsp");
                  }
              for(var j=1;j<=(2*(n-i+1)-1);j++){
                     document.write("*");
                      } 
              document.write("<br/>");
              }

5. js绘画空心菱形

思想:先画菱形上半部分(注意空格、*号和行间的关系,注意换行)再画菱形下半部分

var m=(n+1)/2;

for(var i=1;i<=m;i++){
    for(var j=1;j<=m-i;j++){
     document.write("&nbsp");
    }
    for(var j=1;j<=2*i-1;j++){

if(j==1||j=2*i-1){

document.write("*");

}else{

document.write("&nbsp");

}
       }
     document.write("<br/>");
   }
   //菱形下半部分
    for(var i=m+1;i<=n;i++){
              for(var j=1;j<=i-m;j++){
                  document.write("&nbsp");
                  }
              for(var j=1;j<=(2*(n-i+1)-1);j++){

if(j==1||j==2*(n-i+1)-1){

document.write("*");

}else{

document.write("&nbsp");

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

js打印图形的更多相关文章

  1. for 循环打印图形

    public class For { public static void main(String[] args) { //"使用双层for循环打印图形时,外层管行,内层管列",那 ...

  2. js 打印

    关于js打印很简单的一段代码 function doPrint() { var newWindow = window.open("打印窗口", "_blank" ...

  3. js打印html中的内容

    js打印方法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...

  4. js打印Iframe中的内容,并且不需要预览。

    js打印Iframe中的内容,并且不需要预览 js代码如下: <script type="text/javascript" language="Javascript ...

  5. Threejs 官网 - Three.js 的图形用户界面工具(GUI Tools with Three.js)

    Threejs 官网 - Three.js 的图形用户界面工具(GUI Tools with Three.js) 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) ...

  6. js打印

    js打印,其实是打印当前页面的内容,是调用 系统的js方法,来弹出 打印设置窗口,用法很简单. window.print()就行,有的考虑到 浏览器兼容性问题,会用到document.execComm ...

  7. js打印保存用户输入的内容

    在用js打印局部页面时,遇到用户新输入的内容没能打印出来,经过观察,发现我采用的js打印方法是读取页面源代码,而用户输入的内容如果不将其写入到页面源代码中去,是打印不出来的,下面是我的解决方法: // ...

  8. 使用jquery.PrintArea.js打印网页的样式问题

    在使用jquery.PrintArea.js打印局部网页样式的时候,发现样式打印不出来,在网上找了好多资料,整理一下分享给大家 一.先看看css的引用文件方式 1.直接在内部的元素中使用”style” ...

  9. python中for嵌套打印图形

    # 打印出九九乘法表 1 * 1 = 1 2 * 1 = 2 2 * 2 = 4 3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 4 * 1 = 4 4 * 2 = 8 4 * 3 = 1 ...

随机推荐

  1. N年后给自己一些忠诚的建议

    给自己S年后的一封信: 也许,现在的自己已经经历了种种历练,或成为干将,许是拔杆而起的创业者,再者仍然是一名奋斗中的工薪族.无论现在如何,请记得: M年前,自己坐在小房子里写下的信件. 那时候,自己是 ...

  2. IOS之分析网易新闻存储数据(CoreData的使用,增删改查)

    用过网易新闻客户端的朋友们都知道,获取新闻列表时有的时候他会请求网络有时候不会,查看某条新闻的时候再返回会标注已经查看的效果,接下来分析一下是如何实现的. 首先: 1.网易新闻用CoreData存储了 ...

  3. C#在泛型类中,通过表达式树构造lambda表达式

    场景 最近对爬虫的数据库架构做调整,需要将数据迁移到MongoDB上去,需要重新实现一个针对MongoDB的Dao泛型类,好吧,动手开工,当实现删除操作的时候问题来了. 我们的删除操作定义如下:voi ...

  4. 模块mod_h323的编译

    去h.323plus官网上下载关联的库 http://www.h323plus.org/source/ 很贴心,分操作系统下载,而且关联的ptlib库的版本也一并列了出来. 一.编译ptlib库 ex ...

  5. Java_JDK_TreeMap

    (一)TreeMap TreeMap使用的是红黑树来实现的,所以重点是红黑树的插入和删除. 红黑树的3个特性: 根节点和所有外部节点的颜色都是黑色的: 从根节点到外部节点的途中没有连续两个节点的颜色是 ...

  6. 使用entityframework操作sqlite数据库

    首先要安装好,所需要的类库,通过NuGet来处理 http://stackoverflow.com/questions/28507904/vs-2015-sqlite-data-provider 安装 ...

  7. Ubuntu 14.04中文输入法的安装

    Ubuntu默认自带的中文输入法是IBUS框架的ibus-pinyin,IBUS-Bopomofo等.对于习惯于搜狗,紫光华宇,谷歌拼音的我们可能有点使用不习惯.下面就是安装常用的IBUS中文输入法. ...

  8. 先来个xmpp学习连接

    http://my.oschina.net/SoulJa/blog?catalog=3340253&temp=1468228088114 http://my.oschina.net/iOSli ...

  9. autofs实现nfs自动挂载

    apt-get install autofs 主配置文件/etc/auto.master 副配置文件可以在之配置文件中自定义 能生效的配置文件如下例: 将/usr/local/nginx/html挂载 ...

  10. Python学习(20)python操作mysql数据库_安装

    win7系统下python3.4连接mysql数据库 1.到python官方网站下载最新python程序.根据系统有32,64位. 直接下一步,就可以安装成功.     2.在python官网中去下载 ...