打印正三角形、倒三角形

🎉摘要:Python 是一门解释型、面向对象、动态类型的高级编程语言,由荷兰程序员 Guido van Rossum 于 1991 年发布,核心设计理念是优雅、明确、简单。

该示例将使用 for 循环打印正三角和倒三角形。

正三角形 = 空格递减 + 星号递增

  1. 行数控制 rows = 5 表示打印 5 行。

  2. 空格规律

    • 第 0 行:4 个空格

    • 第 1 行:3 个空格

    • ……

    • 第 4 行:0 个空格公式:空格数 = rows - i - 1

  1. 星号规律

    • 第 0 行:1 个

    • 第 1 行:3 个

    • 第 2 行:5 个公式:星号数 = 2 * i + 1

倒三角形 = 空格递增 + 星号递减

  1. 空格规律

    • 第 0 行:0 个

    • 第 1 行:1 个

    • 第 2 行:2 个公式:空格数 = i

  1. 星号规律

    • 第 0 行:9 个

    • 第 1 行:7 个

    • 第 2 行:5 个公式:星号数 = 2*(rows - i) - 1

示例代码:

# 1. 打印正三角形(金字塔形)
print("正三角形:")
# 控制三角形的行数
rows = 5

for i in range(rows):
    # 打印前置空格:每行递减,让星号居中
    # 第 i 行,需要打印 rows - i - 1 个空格
    print(" " * (rows - i - 1), end="")
    
    # 打印星号:每行 2*i+1 个
    # 第0行1个,第1行3个,第2行5个……
    print("*" * (2 * i + 1))


# 2. 打印倒三角形
print("\n倒三角形:")
rows = 5

for i in range(rows):
    # 打印前置空格:每行递增
    print(" " * i, end="")
    
    # 打印星号:每行递减 2 个
    # 第0行 2*rows-1 个,之后依次 -2
    print("*" * (2 * (rows - i) - 1))

运行结果:

正三角形:
    *
   ***
  *****
 *******
*********

倒三角形:
*********
 *******
  *****
   ***
    *

  

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
其他应用
公众号