python打印菱形与空心菱形

本文档提供了两种Python程序,用于分别打印菱形和空心菱形。程序首先要求用户输入行数,并确保输入为奇数。然后,通过循环和条件判断,计算并打印出相应数量的空格和星号,形成完整的菱形或空心菱形图案。程序逻辑清晰,适合作为Python初学者的练习案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打印菱形与空心菱形

一、菱形
在这里插入图片描述
(菱形行数数偶数行)分为一个正三角形和一个倒三角形

layer = int(input("请输入打印的行数:"))
while layer % 2 == 0:
layer = int(input("对不起,请输入奇数行:"))
#上半部分 分为两个等腰三角形
for i in range(1,layer // 2 + 2):#上半部分多打印一行 layer=5
#计算出空格的个数
space_num = layer - i;
for j in range(0,space_num):
print (" ",end="")
#计算*个数
star_num = 2 * i -1
for j in range(0,star_num): 
print("*",end="")
print("")
#下半部分
for i in range(layer //2 , 0,-1):
#计算出空格的个数
space_num = layer - i;
for j in range(0,space_num):
print (" ",end="")
#计算*个数
star_num = 2 * i -1
for j in range(0,star_num): #j矛盾吗
print("*",end="")
print("")

二、空心菱形

在这里插入图片描述

layer = int(input("请输入打印的行数:"))
while layer % 2 == 0:
layer = int(input("对不起,请输入奇数行:"))
#上半部分for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer=5
#计算出空格的个数
space_num = layer - i;
for j in range(0,space_num):
print (" ",end="")
#计算*个数
star_num = 2 * i -1
for j in range(0,star_num): 
#判断是不是第一个和最后一个
if j == 0 or j == star_num -1:
print("*",end="")
else:
print (" ",end="")
print("")
#下半部分
for i in range(layer //2 , 0,-1):
#计算出空格的个数
space_num = layer - i;
for j in range(0,space_num):
print (" ",end="")
#计算*个数
star_num = 2 * i -1
for j in range(0,star_num): #j矛盾吗
#判断是不是第一个和最后一个
if j == 0 or j == star_num -1:
print("*",end="")
else:
print (" ",end="")
print("")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值