Python打印菱形晶体输出不符合预期,求适配测试用例的正确代码
菱形晶体打印Python代码修正
问题原因
原有代码的核心问题是所有边缘位置统一输出/,不符合菱形晶体的字符规则:上半部分每行左边缘为/、右边缘为\,下半部分每行左边缘为\、右边缘为/。
正确实现代码
row = int(input()) # 打印上半部分(包含中间最长行) for i in range(1, row + 1): # 输出左侧填充空格 for j in range(row - i): print(" ", end="") # 输出当前行的晶体结构 for j in range(2 * i): if j == 0: print("/", end="") elif j == 2 * i - 1: print("\\", end="") else: print(" ", end="") print() # 打印下半部分 for i in range(row, 0, -1): # 输出左侧填充空格 for j in range(row - i): print(" ", end="") # 输出当前行的晶体结构 for j in range(2 * i): if j == 0: print("\\", end="") elif j == 2 * i - 1: print("/", end="") else: print(" ", end="") print()
运行示例
当输入值为3时,输出结果如下:
/\ / \ / \ \ / \ / \/
内容的提问来源于stack exchange,提问作者Hari nadh babu
相关产品推荐
相关产品推荐

