You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Lua代码实现如图所示的图案输出?

Lua图案输出代码修改方案

原代码问题分析

  • 多处循环拼接空字符串"",无法输出构成图案的有效字符(比如星号*)
  • 空格计算逻辑冗余,第三个循环与第二个循环的空格数量重复,可合并优化

针对不同目标图案的修改方案

方案1:左右对称的双列星号图案

如果目标是输出左右各i个星号、中间填充空格的对称图案,修改后的代码如下:

local level = 5 
for i = 1, level do 
    local text = "" 
    -- 拼接左侧星号
    for j = 1, i do 
        text = text .. "*" 
    end 
    -- 拼接中间空格:总长度为2*level,减去左右星号的总数量2*i
    for j = 1, 2*(level - i) do 
        text = text .. " " 
    end 
    -- 拼接右侧星号
    for j = 1, i do
        text = text .. "*" 
    end 
    print(text) 
end 

输出效果:

*        *
**      **
***    ***
****  ****
**********

方案2:金字塔形星号图案

如果目标是输出中间密集、两侧空格的金字塔图案,修改后的代码如下:

local level = 5 
for i = 1, level do 
    local text = "" 
    -- 拼接左侧空格
    for j = 1, level - i do 
        text = text .. " " 
    end 
    -- 拼接中间星号:每行星号数量为2*i-1
    for j = 1, 2*i - 1 do 
        text = text .. "*" 
    end 
    print(text) 
end 

输出效果:

*
   ***
  *****
 *******
*********

内容的提问来源于stack exchange,提问作者AKMKT9321

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 12:39:27