#代码如下
创新互联公司是一家专注于网站制作、成都做网站与策划设计,花山网站建设哪家好?创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:花山等地区。花山做网站价格咨询:028-86922220
n = int(input("请输入菱形边长整数n:"))
b = n
c = n
for i in range(1, n + 1): # 先打印正三角,由空格和*根据规律组成
print(" " * (b - 1), "*" * (2 * i - 1))
b -= 1
if i == n: # 临界点,当打印到此,开始打印倒三角
for y in range(1, n):
print(" " * y, "*" * (2*c-3))
c -= 1
---------代码运行结果,可自己测试
请输入菱形边长整数n:4
*
***
*****
*******
*****
***
*
首先画一个菱形,看一下规律在哪里,先看下图:
见上图菱形,定义尺寸为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()
按照你的要求编写的输出数字菱形的Python程序如下(abs是求绝对值的函数)
N=9
for i in range(1,N*2):
for j in range(1,abs(N-i)+1):
print(' ',end='')
for j in range(N-abs(N-i),1,-1):
print(j,end='')
for j in range(1,N-abs(N-i)+1):
print(j,end='')
print()
源代码(注意源代码的缩进)