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. Android-图片按钮汇总

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  2. eclipse下添加viplugin插件的方法

    http://www.viplugin.com/ 在eclipse根目录下建立文件:viplugin2.lic,然后在里面添加以下字符串: nd4UFjUMBADcUSeSW8ocLKoGP3lpbW ...

  3. C++ Redis mset 二进制数据接口封装方案

    C++ Redis mset 二进制数据接口封装方案 需求 C++中使用hiredis客户端接口访问redis: 需要使用mset一次设置多个二进制数据 以下给出三种封装实现方案: 简单拼接方案 在r ...

  4. NoSQL数据库:数据的一致性

    NoSQL数据库:数据的一致性 读取一致性 强一致性 在任何时间访问集群中任一结点,得到的数据结果一致: 用户一致性 对同一用户,访问集群期间得到的数据一致: 解决用户一致性:使用粘性会话,将会话绑定 ...

  5. s表达式和json表达式

    s表达式 + 1 2 3普通表达式 1+2+3json表达式{ +:[1, 2, 3]}优点,一个运算符,无限个参数 s表达式 * (+ 1 2) 3普通表达式 1+(2*3)json表达式{ *:[ ...

  6. "npm ERR! Error: EPERM: operation not permitted"问题解决

    在基于macaca进行自动化测试的时候,遇到如下问题: E:\AutoTest\Macaca\LocalTEST\macaca-test-sample\macaca-test>macaca do ...

  7. scala打印九九乘法表的5种实现

    使用scala打印九九乘法表,可以有多种实现方法,实现的过程充分的体现的scala语言的优势和巨大的简洁性和高效性, 下面我用了5种方法实现九九乘法表. 使用类似于java,c++等指令风格的的编程实 ...

  8. 关于PHP HTML <input type="file" name="img"/>上传图片,图片大小,宽高,后缀名。

    在我们的系统中,不免要上传图片,视频等文件,在上传中,需要做的一些判断,文件大小等方面. 注意: 在php.ini 中的post_max_size,upload_max_filesize默认为2M,在 ...

  9. 关于C++类中的成员

    突然发现,如果C++的类成员中存在共有的成员,则可以通过指针的偏移来访问私有的成员变量,当然前提是对内存对齐比较清楚.只要骗过了编译器就可以为所欲为了. #include <cstdio> ...

  10. C++大数类模板

    友情提示:使用该模板的注意了,在大数减法里有一个小错误,导致减法可能会出错 // 原来的写法,将t1.len错写成了len ] == && t1.len > ) { t1.len ...