Javascript打印金字塔,倒立金字塔,空心金字塔,菱形,空心菱形等
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>金字塔-菱形-空心</title>
<script>
var n=window.prompt("请输入行数");
/* 右半边 星号
* 1
** 2
*** 3
**** 4
第i行,空格无,星号i */
document.write("正右半边<br>");
for(i=;i<=n;i++){//行数
for(j=;j<=i;j++){
document.write("*");//打印每行星号
}
document.write("<br />");
} /* 左半边 空格 星号
* 4-1 1
** 4-2 2
*** 4-3 3
**** 4-4 4
第i行,空格n-i,星号i */
document.write("正左半边<br>");
for (i=; i <= n; i++) {
for(j=;j<=n-i;j++){
document.write(" ");//打印每行空格 }
for(k=;k<=i;k++){
document.write("*");//打印每行星号
}
document.write("<br/>"); }
/*金字塔 空格 星号 * 3=4-1 1=2*1-1
*** 2=4-2 3=2*2-1
***** 1=4-1 5=2*3-1
******* 0=4-4 7=2*4-1
第i行,空格n-i,星号2*i-1 */
document.write("正金字塔<br/>");
for(i=;i<=n;i++){
for(j=;j<=n-i;j++){
document.write(" ");
}
for(k=;k<=*i-;k++){
document.write("*")
}
document.write("<br/>")
} /*倒右边 星号 **** 4
*** 3
** 2
* 1
第i行,空格n-i,星号n-i+1 */ document.write("倒右半边<br/>");
for (var i = ; i<=n; i++) {
for(j=;j<=n-i+;j++){
document.write("*");
}
document.write("<br/>");
} /*倒左半边 空格 星号
**** 0=4-4=1-1 4=4-1+1
*** 1=4-3=2-1 3=4-2+1
** 2=4-2=3-1 2=4-3+1
* 3=4-1=4-1 1=4-4+1
第i行,空格i-1;星号n-i+1 */ document.write("倒左半边<br/>");
for(i=;i<=n;i++){
for(j=;j<=i-;j++){
document.write(" ");//打印每行空格
}
for(k=;k<=n-i+;k++){
document.write("*");//打印每行星号
}
document.write("<br/>");
} /*倒金字塔 空格 星号
******* 0=4-4=1-1 7=2*4-1
***** 1=4-3=2-1 5=2*3-1
*** 2=4-2=3-1 3=2*2-1
* 3=4-1=4-1 1=2*1-1
第i行,空格i-1;星号2*(n-i+1)-1 */
document.write("倒金字塔<br/>");
for(i=;i<=n;i++){
for(j=;j<=i-;j++){
document.write(" ");
}
for(k=;k<=*(n-i+)-;k++){
document.write("*");
}
document.write("<br/>");
} /*菱形
*
***
*****
*******
*****
***
*
思路:先打印上半部分,再打印下半部分*/
document.write("菱形<br/>");
//打印菱形上半部分
for(i=;i<=n;i++){
for(j=;j<=n-i;j++){
document.write(" ");
}
for(k=;k<=*i-;k++){
document.write("*");
}
document.write("<br/>");
}
//打印菱形下半部分
for(i=;i<=n;i++){
for(j=;j<=i;j++){//要去掉下半部分的最上一行,第二行变为第一行,每行最前面的空格加一个,所以j<=i,而不是j<=j-1;
document.write(" ");
}
for(k=;k<=*(n-i)-;k++){//第一行为原来第二行,星号个数也随之变化;
document.write("*");
}
document.write("<br/>");
} /*空心正三角形
*
* *
* *
*******
思路:边上的打印星号,其他的打印空格,最后一行打印星号 */
document.write("空心正三角形<br/>");
for(i=;i<=n;i++){
for(j=;j<=n-i;j++){
document.write(" ");
}
for(k=;k<=*i-;k++){
if(i==n){//最后一行星号全打印出来
document.write("*")
}
else if(k==||k==*i-){//打印两边上的星号
document.write("*")
}
else{
document.write(" ");//打印空心
}
}
document.write("<br/>");
} /*空心倒三角形 *******
* *
* *
*
思路:边上的打印星号,其他的打印空格,第一行打印星号 */
document.write("空心倒三角形<br/>");
for(i=;i<=n;i++){
for(j=;j<=i-;j++){
document.write(" ");
}
for(k=;k<=*(n-i)+;k++){
if (i==) {//打印第一行星号
document.write("*");
}else if(k==||k==*(n-i)+){//打印两边上的星号
document.write("*");
}else{
document.write(" ");//打印空心
}
}
document.write("<br/>");
} /*空心菱形 *
* *
* *
* *
*
思路:和打印菱形一样,先打印上半部分,再打印下半部分 */
document.write("空心菱形<br/>");
//上半部分
for(i=;i<=n;i++){
for(j=;j<=n-i;j++){
document.write(" ");
}
for(k=;k<=*i-;k++){
if (k==||k==*i-) {
document.write("*");//打印边上星号
}else{
document.write(" ")//打印空心空格
}
}
document.write("<br/>");
}
// 下半部分
for(i=;i<=n;i++){
for(j=;j<=i;j++){//每行最前面的空格
document.write(" ");
}
for(k=;k<=*(n-i)-;k++){
if (k==||k==*(n-i)-) {
document.write("*");
}else{
document.write(" ");
}
}
document.write("<br/>");
}
</script>
</head>
<body> </body>
</html>
Javascript打印金字塔,倒立金字塔,空心金字塔,菱形,空心菱形等的更多相关文章
- php练习——打印半金字塔、金字塔、空心金字塔、菱形、空心菱形
半金字塔 金字塔 空心金字塔 菱形 空心菱形
- java实现空心金字塔
前言 最近在学习java,遇到了一个经典打印题目,空心金字塔,初学者记录,根据网上教程,有一句话感觉很好,就是先把麻烦的问题转换成很多的简单问题,最后一一解决就可以了,然后先死后活,先把程序写死,后面 ...
- Sift中尺度空间、高斯金字塔、差分金字塔(DOG金字塔)、图像金字塔
转自:https://blog.csdn.net/dcrmg/article/details/52561656 一. 图像金字塔 图像金字塔是一种以多分辨率来解释图像的结构,通过对原始图像进行多尺度像 ...
- Java 写三角形 空心三角形 菱形 空心菱形
闲来无事,练习了一下Java基础中的循环语句.练习循环语句,当然少不了,用*打印出来三角形.空心三角形.菱形等这样的几何图形. 粗心大意,失误两次: 一.三角形 遇到一些小问题: 二.金字塔 由于三角 ...
- JavaScript打印正倒直线
做了一个作业,用JavaScript打印正倒直线,突然觉得自己还是逻辑有待加强训练啊 document.write("<h3>打印倒正金字塔直线</h3>" ...
- 使用JavaScript打印网页指定DIV区域
JavaScript打印函数myPrint(obj): JavaScript打印页面指定div区域原理:使用window.open()在浏览器打开一个新的页面(window), 使用 window.d ...
- JavaScript 打印控件
JavaScript 打印控件 github地址 https://github.com/DoersGuild/jQuery.print 使用前需要引入jQuery $("#mapDiv&qu ...
- javascript 打印函数名称和被引用的函数
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 用Python打印九九乘法表与金字塔(*)星号
''' 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=12 4*4=16 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 ...
随机推荐
- P3193 [HNOI2008]GT考试
传送门 容易看出是道DP 考虑一位一位填数字 设 f [ i ] [ j ] 表示填到第 i 位,在不吉利串上匹配到第 j 位时不出现不吉利数字的方案数 设 g [ i ] [ j ] 表示不吉利串匹 ...
- day29 进程
1..操作系统知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的 ...
- Observable Flowable Test
package com.test.rxjava; import java.time.Duration; import java.time.Instant; import java.util.Linke ...
- java TestNG测试报告美化
测试报告 执行完测试用例之后,会在项目的test-output(默认目录)下生成测试报告 打开index.html文件,测试结果摘要,包括:套件名.测试用例成功数.测试用例失败数.测试用例忽略数和te ...
- Java 类型转换(int->String)
1 如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([ ...
- Java——socket
Server: import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public cla ...
- java——字典树 Trie
字典树是一种前缀树 package Trie; import java.util.TreeMap; public class Trie { private class Node{ public boo ...
- Mac使用zsh导致maven命令无效的解决方案
第一步: vim ~/.zshrc 第二步:在.zshrc末尾加上 source ~/.bash_profile: 保存推出了 第三步 source ~/.bash_profile
- 3d Max 2019安装失败怎样卸载3dsmax?错误提示某些产品无法安装装
AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...
- HTML5中video标签与canvas绘图的使用
video标签的使用 video标签定义视频, 它是html5中的新标签, 它的属性如下(参考自文档): domo01 <!DOCTYPE html> <html lang=&quo ...