用js打印*号等腰三角形

let readline = require("readline-sync");
console.log("请输入行数:");
let rows = ~~readline.question('')
let str = "";
let star = "";
for (let i = 1; i <= rows; i++) {
let str = "";
for (let k = 0; k < rows - i; k++) {
str += ` `;
}
for (let j = 1; j <= 2 * i - 1; j++) {
star += "*";
}
console.log(`${str}${star}`);
str = "";
star = "";
}

转载于:https://www.cnblogs.com/huangshan-0809/p/9656803.html

### JSP 实现等腰三角形图案 要在 JSP 页面中绘制等腰三角形的星 (*) 图案,可以通过嵌套循环结构来控制每一行输出的空格数和星数量。以下是完整的解决方案: #### 解决方案 通过使用 `<% %>` 脚本标签编写 Java 代码逻辑,在 HTML 中动态生成等腰三角形。 ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>等腰三角形</title> </head> <body> <h3>JSP 绘制等腰三角形:</h3> <br/> <% int height = 5; // 设置三角形的高度 out.println("<pre>"); for (int i = 1; i <= height; i++) { // 输出每行前面的空格 for (int j = 1; j <= height - i; j++) { out.print(" "); } // 输出每行的星 (*) for (int k = 1; k <= 2 * i - 1; k++) { out.print("*"); } out.println(); // 换行 } out.println("</pre>"); %> </body> </html> ``` 上述代码中的 `height` 可以调整为任意正整数值,用于定义等腰三角形的高度[^2]。 --- ### 关键点解释 1. **外层循环 (`for`) 控制行数** 外层循环变量 `i` 表示当前处理的是第几行,范围是从 1 到指定高度 `height`。 2. **内层第一个循环 (`for`) 添加前导空格** 内部的第一个循环负责打印每行左侧的空白字符数目。随着行数增加,空白字符逐渐减少 `(height - i)`。 3. **内层第二个循环 (`for`) 打印**的数量遵循公式 `2*i - 1`,其中 `i` 是当前行数。这确保了星形成对称形状。 4. **HTML 的 `<pre>` 标签** 使用 `<pre>` 标记可以保留原始格式,使星排列整齐显示在网页上[^3]。 --- ### 测试用例设计 如果作为测试工程师,针对此功能可设计如下测试用例: | 输入参数 | 高度设置 | 预期结果 | |----------|-----------|-------------------------------------------------------------------------| | 正常场景 | 5 | 成功渲染一个高为 5 的等腰三角形,星分布均匀且居中 | | 边界值 | 1 | 渲染单个星 "*" | | 极限值 | 0 或负数 | 不应有任何图形输出,并提示错误消息 | --- ### § 1. 如何修改以上代码使其支持用户自定义输入高度? 2. 是否可以在同一页面实现多种几何图形(如矩形、菱形)的选择性绘制? 3. 如果需要优化性能并减少服务器端计算量,能否仅返回必要的 CSS 和 JavaScript 来完成绘图? 4. 嵌入式脚本语言(如 PHP 或 Python Flask)是否也能轻松实现类似的图形绘制功能? 5. 在移动端设备上展示该等腰三角形时需要注意哪些布局兼容性问题?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值