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

如何在PowerShell中用循环输出字符'o'组成的钻石图案?

PowerShell 实现对称钻石图案解决方案

你的代码问题在于循环次数、空格数和字符数量的逻辑没匹配钻石的对称结构,以下是修正后的代码:

# 打印钻石上半部分(从1个o到19个o,共10行)
for ($i = 0; $i -lt 10; $i++) {
    # 计算每行前的空格数:从9个递减到0个
    $spaces = " " * (9 - $i)
    # 计算每行的o数量:1,3,5...19(每次加2)
    $os = "o" * (1 + 2 * $i)
    Write-Host $spaces$os
}

# 打印钻石下半部分(从17个o到1个o,共9行)
for ($i = 8; $i -ge 0; $i--) {
    $spaces = " " * (9 - $i)
    $os = "o" * (1 + 2 * $i)
    Write-Host $spaces$os
}

代码说明:

  • 钻石上半部分循环10次,从$i=0到$i=9:
    • 空格数随$i增大递减,确保每行图案居中
    • o的数量按奇数递增,符合钻石从窄到宽的规律
  • 下半部分循环9次,从$i=8到$i=0:
    • 复用了上半部分的空格和o数量计算逻辑,反向循环实现从宽到窄的对称效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 00:55:16