控制台输出一个菱形。用python写

如题所述

首先画一个菱形,看一下规律在哪里,先看下图:

见上图菱形,定义尺寸为size=3,

定义X坐标为i:

    A区域X坐标为i,Y坐标为size-i;

    B区域X坐标为i,Y坐标为size+i;

    C区域X坐标为i,Y坐标为i-size;

    D区域X坐标为i,Y坐标为size*3-i

满足1,2,3,4的情况下就输出*,其它则输入空格,这样我们就得到一个菱形,代码如下和输出效果如下:

size = 3 # 定义菱形尺寸
count = size*2+1 # 定义X,Y坐标循环范围
# i为横坐标
for i in range(count):
    # j为纵坐标
    for j in range(count): 
        # 当X,Y满足条件1和2时
        if i <= size and (j == size-i or j == size+i):
            print('*', end='')
        # 当X,Y满足条件3和4时
        elif i > size and (j == i-size or j == size*3-i):
            print('*', end='')
        # 其它情况输入空格
        else:
            print(' ', end='')
    # 每打印一行就换行
    print()

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-10-25
line=int(input('请输入菱形行数:'))
for i in range(1,line+1):
    for j in range(1,line+1-i):
        print(' ',end='')
    for k in range(1,2*i):
        print('*',end='')
    print()
for i in range(1,line):
    for j in range(1,i+1):
        print(' ',end='')
    for k in range(1,2*line-2*i):
        print('*',end='')
    print()

本回答被网友采纳
相似回答