Demo01
摄氏温度转化为华氏温度
题目描述
输入一个摄氏温度的值,将它转变为华氏温度,并将结果输出
转换的公式为如下:
输入输出描述
输入一个值表示摄氏温度
celsius
输出华氏温度
fahrenheit
,结果保留一位小数点
示例
输入:
43
输出:
109.4
cel = eval(input())
fah = 9 / 5 * cel + 32
print("%.1f" % fah)
Demo02
计算圆柱体的体积
题目描述
输入圆柱的半径和高,并利用如下公式计算圆柱体的底面积和体积。
![](https://i-blog.csdnimg.cn/blog_migrate/122e9d3ee0631b482b825fb49dbe6772.png)
输入输出描述
分别输入圆柱的半径
radius
和高度
length
,两个数据之间用空格分隔
输出两行,第一行为圆柱底面积
area
,第二行为圆柱体积
volume
,结果保留两位小数点
示例
输入:
5.5 12
输出:
95.03
1140.41
radius, length = eval(input())
area = radius * radius * 3.14159267
volume = area * length
print("%.2f" % area)
print("%.2f" % volume)
Demo03
将英尺数转换为米数
题目描述
输入英尺数然后将它转换为米数,并输出结果,一英尺等于
0.305
米
输入输出描述
输入一个数据表示英尺数
输出转换后的米数,结果保留四位小数点
示例
输入:
16.5
输出:
5.0325
feet = eval(input("请输入英尺数:"))
meters = feet * 0.305
print("米数是:%.4f" % meters)
Demo04
计算小费
题目描述
读取小计和酬金率,然后计算小费以及合计金额。例如客户的小计为
10
元,酬金率为
15%
,那么小费是
1.5
元,合计金额为
11.5
元
输入输出描述
分别输入小计和酬金率,两个数据用之间用空格分隔
输出两行,第一行为小费,第二行为合计金额,结果保留两位小数
示例
输入:
15.69 15
输出:
2.35
18.04
subtotal, feerate = eval(input("请分别输入小计和酬金率:"))
fee = subtotal * feerate * 0.01 #fee小费
Total = fee + subtotal
print("小费为:%.2f" % fee)
print("合计金额为:%.2f" % Total)
Demo05
对一个整数中的各位数字求和
题目描述
读取一个
0
到
1000
之间的整数,并计算它各位数字之和
输入输出描述
输入一个
[0,1000]
之间的整数
输出该数字的各位数字之和
示例
1
输入:
999
输出:
27
解释:
999
各位数之和为
9 + 9 + 9 = 27
示例
2
输入:
12
输出:
3
num = eval(input())
ge = num % 10
num //= 10 # num = num // 10
shi = num % 10
num //= 10
bai = num % 10
nsum = ge + shi + bai
print(nsum)
Demo06
计算年数和天数
题目描述
输入分钟数,然后将该分钟数转换为年数和天数,假定一年有
365
天
输入输出描述
输入一个分钟数
输出两行,第一行为年数,第二行为天数
示例
输入:
1000000000
输出:
1902
214
minutes = eval(input())
hours = minutes // 60
days = hours // 24
years = days // 365
days = days % 365
print(years)
print(days)
Demo07
计算能量
题目描述
水从初始温度加热到最终温度是需要能量的,请计算需要多少能量,公式如下:
![](https://i-blog.csdnimg.cn/blog_migrate/3c0e4425bc89bd614c081261994569f7.png)
这里的
M
是按千克计的水量,初始温度和最终温度均为摄氏度,热量
Q
以焦耳计
输入输出描述
输入三行数据,第一行输入水量,第二行输入初始温度,第三行输入最终温度
输出所需的能量值,结果保留一位小数
示例
输入:
55.5
3.5
10.5
输出:
1625484.0
M, initialTem, finalTem = eval(input("请输入水量,初始和最终温度:"))
Q = M * (finalTem - initialTem) * 4148
print("需要能量:%.1f" % Q)
Demo08
分割数字
题目描述
输入一个四位整数,并以反向顺序显示
输入输出描述
输入一个四位整数
输出四行,第一行为个位,第二行为十位,第三行为百位,第四行为千位
示例
输入:
5213
输出:
3
1
2
5
num = eval(input("请输入一个四位整数:"))
ge = num % 10
num //= 10
shi = num % 10
num //= 10
bai = num % 10
num //= 10
qian = num % 10
print(ge)
print(shi)
print(bai)
print(qian)
Demo09
计算三角形的面积
题目描述
输入三角形的三个顶点坐标,并计算其面积,计算公式如下
![](https://i-blog.csdnimg.cn/blog_migrate/43648da0e61e6cf077e9c5bda309a71c.png)
输入输出描述
输入六个数据,分别表示三角形三个顶点的坐标
x1
、
y1
、
x2
、
y2
、
x3
和
y3
,数据之间用空格分隔
输出三角形的面积,结果保留一位小数
示例
输入:
1.5 -3.4 4.6 5 9.5 -3.4
输出:
33.6
x1, y1, x2, y2, x3, y3 = eval(input())
side1 = ((x1 - x2) ** 2 + (y1 - y2) ** 2) ** 0.5
side2 = ((x3 - x2) ** 2 + (y3 - y2) ** 2) ** 0.5
side3 = ((x1 - x3) ** 2 + (y1 - y3) ** 2) ** 0.5
s = (side1 + side2 + side3) / 2
area = (s * (s - side1) * (s - side2) * (s - side3)) ** 0.5
print("%.1f" % area)
Demo10
显示当前时间
题目描述
输入你所在的时区,并输出当前的时间
输入输出描述
输入时区,如东八区为
8
,西五区为
-5
输出二十四小时制的时间,格式为 时
:
分
:
秒
示例
输入:
8
输出:
21:43:12
import time
timezone = eval(input("请输入当前所在时区:"))
zone0time = time.time()
yourzonetime = zone0time + timezone * 60 * 60
seconds = yourzonetime % 60
minutes = yourzonetime // 60 % 60
hours = yourzonetime // 60 // 60 % 24
print("%d:%d:%d" % (hours,minutes,seconds))
Demo11
计算三角形的三个角
题目描述
输入三角形的三个顶点坐标,并计算该三角形的三个角分别是多少(角度制)
![](https://i-blog.csdnimg.cn/blog_migrate/a9dd3914d6bd841270927e880e89b783.png)
其中
a
、
b
、
c
分别表示三条边,
A
、
B
、
C
分别表示三边对应的角
输入输出描述
输入六个数据,分别表示三角形三个顶点的坐标
x1
、
y1
、
x2
、
y2
、
x3
和
y3
,数据之间用空格分隔
输出三行,分别为
A
、
B
、
C
三个角的度数,结果保留两位小数
示例
输入:
1 1 6.5 1 6.5 2.5
输出:
15.26
90.00
74.74
import math
x1, y1, x2, y2, x3, y3 = eval(input("请输入三个顶点坐标:"))
# 计算三边长度
a = math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2)
b = math.sqrt((x3 - x2) ** 2 + (y3 - y2) ** 2)
c = math.sqrt((x3 - x1) ** 2 + (y3 - y1) ** 2)
#计算三角度数
A = math.degrees(math.acos((b ** 2 + c ** 2 - a ** 2) / (2 * b * c)))
B = math.degrees(math.acos((a ** 2 + c ** 2 - b ** 2) / (2 * a * c)))
C = math.degrees(math.acos((a ** 2 + b ** 2 - c ** 2) / (2 * a * b)))
print("A角为%.2f度" % A)
print("B角为%.2f度" % B)
print("C角为%.2f度" % C)
Demo12
最小数量的硬币
题目描述
假设硬币种类分为:一元硬币、两角五分硬币、一角硬币、五分硬币、一分硬币
输入总金额,并将总金额兑换成若干个硬币,并保证所兑换的硬币个数最少
输入输出描述
输入总金额
输出每种硬币的个数
示例
输入:
11.56
输出:
11
个一元硬币
2
个两角五分硬币
0
个一角硬币
1
个五分硬币
1
个一分硬币
money = eval(input("请输入金额:"))
coin1, coin025, coin01, coin005, coin001 = 100, 25, 10, 5, 1
money100 = money * 100
num1 = money100 // 100
money100 %= 100
num2 = money100 // 25
money100 %= 25
num3 = money100 // 10
money100 %= 10
num4 = money100 // 5
money100 %= 5
num5 = money100 // 1
print("%d个一元硬币" % num1)
print("%d个两角五分硬币" % num2)
print("%d个一角硬币" % num3)
print("%d个五分硬币" % num4)
print("%d个一分硬币" % num5)
Demo13
正多边形的面积
题目描述
正多边形是边长相等的多边形,而且所有的角相等,计算正多边形的公式为:
![](https://i-blog.csdnimg.cn/blog_migrate/f6c1e74df58490c1e9b06cddfe1af69b.png)
输入输出描述
输入两个数据分别表示边的个数
n
和边的长度
s
,数据之间用空格分隔
输出边长为
s
的正
n
多边形的面积,结果保留两位小数
示例
输入:
5 6.5
输出:
72.69
import math
n, s = eval(input("请输入边的个数和长度:"))
Pai = 3.14159267
area = (n * s ** 2) /(4 * math.tan(Pai / n))
print("正多边形面积为:%.2f" % area)
Demo14
计算身体质量指数
题目描述
BMI是根据体重测量健康的方式,通过以千克为单位的体重除以以米为单位的身高的平方计算而出
BMI
指数解读如下:
![](https://i-blog.csdnimg.cn/blog_migrate/118e7a0d816e3864047e78d2dd343c8e.png)
输入输出描述
输入体重和身高,数据之间用空格分隔
输出
BMI
指数结果
示例
输入:
60 1.8
输出:
标准
weight, height = eval(input())
BMI = weight / height ** 2
if BMI < 18.5:
print("超轻")
elif BMI < 25.0:
print("标准")
elif BMI < 30.0:
print("超重")
else:
print("肥胖")
Demo15
判定闰年
题目描述
一个年份如果能被
4
整除但不能被
100
整除,或者能被
400
整除,那么这个年份就是闰年
输入输出描述
输入一个年份
输出
Yes
表示该年份为闰年,
No
则表示不是闰年
示例
1
输入:
2008
输出:
Yes
示例
2
输入:
2002
输出:
No
year = eval(input("请输入一个年份:"))
if year % 400 == 0:
print("Yes")
elif year % 4 == 0:
if year % 100 == 0:
print("No")
else:
print("Yes")
else:
print("No")
Demo16
中彩票
题目描述
随机产生一个两位数数字,然后用户输入一个两位数数字,并根据以下规则判定用户赢得的奖金是多少
(
1
)输入的数字和随机产生的数字完全相同(包括顺序),奖金为
10000
元
(
2
)输入的数字和随机产生的数字相同(不包括顺序),奖金为
3000
元
(
3
)输入的数字和随机产生的数字有一位数相同,奖金为
1000
美元
(
4
)输入的数字和随机产生的数字都不相同,没有奖金,
0
元
输入输出描述
输入一个两位数
输出两行,第一行输出那个随机产生的两位数,第二行输出用户的奖金
示例
1
输入:
12
输出:
12
10000
示例
2
输入:
12
输出:
21
3000
示例
3
输入:
12
输出:
23
1000
示例
4
输入:
12
输出:
45
0
import random
randNum = random.randint(10, 99)
userNum = eval(input())
r1 = randNum // 10
r2 = randNum % 10
u1 = userNum // 10
u2 = userNum % 10
if randNum == userNum:
print(10000)
elif r1 == u2 and r2 == u1:
print(5000)
elif r1 == u1 or r1 == u2 or r2 == u1 or r2 == u2:
print(3000)
else:
print(0)
Demo17
解一元二次方程
题目描述
一元二次方程
![](https://i-blog.csdnimg.cn/blog_migrate/4cb448b07ed6d85a25586888b6eefeb7.png)
的解可以使用下面的公式计算
其中
![](https://i-blog.csdnimg.cn/blog_migrate/629634f7c743c1db1f2b27f132f04964.png)
称为判别式,如果它为正,则方程有两个实数解;为零,方程只有一个实数解;为负,没
有实数解
输入输出描述
输入
a
、
b
、
c
三个数据,数据之间用空格分隔
两个解每行输出一个;一个解单行输出;无解则单行输出无实数解,保留两位小数
示例
1
输入:
1.0 3 1
输出:
-0.38
-2.62
示例
2
输入:
1 2.0 1
输出:
-1.00
示例
3
输入:
1 2 3
输出:
无实数解
a, b, c = eval(input())
delt = b ** 2 - 4 * a * c
if delt > 0:
x1 = (-b + delt ** 0.5) / (2 * a)
x2 = (-b - delt ** 0.5) / (2 * a)
print(x1)
print(x2)
elif delt == 0:
x = -b / (2 * a)
print(x)
else:
print("无实数解")
Demo18
解
2×2
线程方程
题目描述
如有一个2×2的线程方程组:
![](https://i-blog.csdnimg.cn/blog_migrate/fc7d962df2c00fea0b0e83944d2394e1.png)
你可以使用克莱姆法则解该线性方程:
![](https://i-blog.csdnimg.cn/blog_migrate/1e419ee2841cf005af0d741caa0fedae.png)
其中ad-bc为判别式,如果为零则输出无解
输入输出描述
输入
a
、
b
、
c
、
d
、
e
、
f
六个数据,数据之间用空格分隔
输出两行,第一行
x
的解,第二行
y
的解,保留一位小数
示例
1
输入:
9.0 4.0 3.0 -5.0 -6.0 -21.0
输出:
-2.0
3.0
示例
2
输入:
1.0 2.0 2.0 4.0 4.0 5.0
输出:
无解
a, b, c, d, e, f = eval(input("请输入六个数据:"))
delt = (a * d) - (b * c)
x = (e * d - b * f) / (a * d - b * c)
y = (a * f - e * c) / (a * d - b * c)
if delt == 0:
print("无解")
else:
print("%.1f"%x)
print("%.1f"%y)
Demo19
未来是周几
题目描述
输入表示今天是一周内哪一天的数字(星期天是
0
,星期一是
1
,
...
,星期六是
6
)
并输入今天之后到未来某天的天数,然后输出该天是星期几
输入输出描述
输入两个数据,分别表示今日星期几的数字和未来某天的天数,数据之间用空格分隔
输出未来某天是星期几
示例
1
输入:
1 3
输出:
星期四
示例
2
输入:
0 31
输出:
星期三
today, future = eval(input("请输入今天是一周内哪一天的数字和今天之后到未来某天的天数:"))
futureweek = (today + future) % 7
if futureweek == 0:
print("星期日")
elif futureweek == 1:
print("星期一")
elif futureweek == 2:
print("星期二")
elif futureweek == 3:
print("星期三")
elif futureweek == 4:
print("星期四")
elif futureweek == 5:
print("星期五")
else:
print("星期六")
Demo20
本年中的第几天
题目描述
给定某年、某月、某日的一个日期,计算该日是今年中的第几天
输入输出描述
输入三个数据分别表示年、月、日,数据之间用空格分隔
输出该日是今年中的第几天
示例
1
输入:
2023 1 28
输出:
28
示例
2
输入:
2023 3 2
输出:
61
year, month, day = eval(input("请输入年月日的日期,用逗号隔开:"))
days = 0
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
for i in range(1, month):
if i in (1, 3, 5, 7, 8, 10, 12):
days += 31
i=i+1
elif i in (4, 6, 9, 11):
days += 30
i=i+1
else:
days += 29
else:
for i in range(1, month):
if i in (1, 3, 5, 7, 8, 10, 12):
days += 31
i=i+1
elif i in (4, 6, 9, 11):
days += 30
i=i+1
else:
days += 28
i=i+1
days += day
print(days)
*
Demo21
剪刀石头布 I(不太会)
题目描述
计算机随机产生一个数字
0
、
1
和
2
分别表示剪刀、石头和布
用户输入数字
0
、
1
或
2
,输出用户赢、计算机赢或平局
输入输出描述
输入数字
0
、
1
或
2
输出有三行,第一行输出计算机出的啥,第二行输出用户出的啥,第三行输出结果
示例
1
输入:
0
输出:
计算机出的 石头
用户出的 剪刀
计算机赢
示例
2
输入:
1
输出:
计算机出的 剪刀
用户出的 石头
用户赢
示例
3
输入:
2
输出:
计算机出的 布
用户出的 布
平局
import random
# 计算机随机选择剪刀、石头或布
computer_choice = random.randint(0, 2)
# 将数字对应到剪刀、石头或布
choices = ['剪刀', '石头', '布']
# 获取用户输入
user_input = int(input("请输入数字 0、1 或 2,分别代表剪刀、石头或布:"))
user_choice = choices[user_input]
# 输出计算机和用户的选择
computer_choice_str = choices[computer_choice]
print("计算机出的", computer_choice_str)
print("用户出的", user_choice)
# 判断胜负
if user_input == computer_choice:
print("平局")
elif (user_input - computer_choice) % 3 == 1 or (user_input==0 and computer_choice==2):
print("用户赢")
else:
print("计算机赢")
Demo22
三角形的周长
题目描述
输入三角形三边的长度,如果输入合法则计算周长并输出结果;否则输出非法
如果任意两边之和大于第三边则输入都是合法的
输入输出描述
输入三个数据表示三边,数据之间用空格分隔
输出三角形的周长,如果非法则输出非法
示例
1
输入:
1 1 1
输出:
3
示例
2
输入:
1 3 1
输出:
非法
side1, side2, side3 = eval(input("请输入三角形的三条边长:"))
if side1 + side2 > side3 and side1 + side3 > side2 and side2 + side3 > side1:
C = side1 + side2 + side3
print("三角形的周长为:%d" % C)
else:
print("非法")
*
Demo23 一周的星期几(不太会)
题目描述
泽勒的一致性是一个由泽勒开发的算法,用于计算一周的星期几,公式如下:
![](https://i-blog.csdnimg.cn/blog_migrate/875e2c66d13772c561634599119c963f.png)
(
1
) 是指一周的星期几(
0
表示星期六、
1
表示星期天、
...
、
6
表示星期五)
(
2
) 是一个月的哪一天
(
3
) 是月份(
3
表示三月、
4
表示四月、
...
、
12
表示十二月),其中一月和二月都是按照前一年的
13
月和
14
月来计数的,所以还得把年份改为前一年
(
4
) 是世纪数,即[year/100]
(
5
) 是一个世纪的某一年,即year%100
(
6
) []为向下取整符号
输入输出描述
输入年、月、日三个数据,数据之间用空格分隔
输出该日是周几
示例
1
输入:
2013 1 25
输出:
星期五
示例
2
输入:
2012 5 12
输出:
星期六
def zeller_congruence(year, month, day):
if month < 3:
month += 12
year -= 1
# 周几计算公式
h = (day + (13*(month+1))//5 + year % 100 + (year%100//4) + year//400 + 5 * (year//100)) % 7
# 将结果转换为对应的星期几
days_of_week = ["星期六", "星期日", "星期一", "星期二", "星期三", "星期四", "星期五"]
return days_of_week[h]
# 输入年、月、日
year, month, day = map(int, input().split())
# 计算星期几
day_of_week = zeller_congruence(year, month, day)
# 输出结果
print(day_of_week)
*
Demo24 直线的交点(不太会)
题目描述
直线
A
上的两个点是(x1,y1)和(x2,y2),直线B
上的两个点是 (x3,y3)和(x4,y4)
如果两条直线有交点,可以通过解下面的线性等式找出:
![](https://i-blog.csdnimg.cn/blog_migrate/d040670b4db8d304c4442585a2188d40.png)
如果没有解,则表示两条直线平行
输入输出描述
输入八个数据,分别为
x1 y1 x2 y2 x3 y3 x4 y4
,数据之间用空格分隔
如有交点则输出交点的坐标
x y
,否则输出两条直线平行
示例
1
输入:
2 2 5 -1 4 2 -1 -2
输出:
2.89 1.11
示例
2
输入:
2 2 7 6 4 2 -1 -2
输出:
两条直线平行
#直线的交点
def find_intersection(x1, y1, x2, y2, x3, y3, x4, y4):
# 计算方程组的系数
a1 = y1 - y2
b1 = x2 - x1
c1 = (y1 - y2) * x1 - (x1 - x2) * y1
a2 = y3 - y4
b2 = x4 - x3
c2 = (y3 - y4) * x3 - (x3 - x4) * y3
# 计算交点坐标
#利用克莱姆法则求解二元一次方程
#x = D1 / D y = D2 / D
determinant = a1 * b2 - a2 * b1
if determinant == 0:
return None # 两条直线平行
x = (b1 * c2 - b2 * c1) / determinant
y = (a2 * c1 - a1 * c2) / determinant
return x, y
# 输入直线坐标
x1, y1, x2, y2, x3, y3, x4, y4 = map(float, input().split())
# 寻找交点
intersection = find_intersection(x1, y1, x2, y2, x3, y3, x4, y4)
# 输出结果
if intersection is None:
print("两条直线平行")
else:
print(intersection[0], intersection[1])
Demo25
回文数
题目描述
输入一个三位整数,然后判断其是否为一个回文数
如果一个数从左向右和从右向左读取时是一样的,那么这个数就是回文数
输入输出描述
输入一个数字
输出
Yes
表示是回文数,否则输出
No
示例
1
输入:
121
输出:
Yes
示例
2
输入:
123
输出:
No
num = input("请输入一个整数:")
left, right = 0, len(num) - 1
flag = True
for i in (num):
if num[left] != num[right]:
flag = False
left += 1
right -= 1
if flag:
print("Yes")
else:
print("No")
*
Demo26
两个矩形(不太会)
题目描述
判断两个矩形之间的关系:包含,重叠,相离
输入输出描述
输入两行,每行四个数据,分别是矩形的中心坐标
x
、
y
和矩形的宽、高
输出两者的关系
示例
1
输入:
2.5 4 2.5 43
1.5 5 0.5 3
输出:
包含
示例
2
输入:
1 2 3 5.5
3 4 4.5 5
输出:
重叠
示例
3
输入:
1 2 3 3
40 45 3 2
输出:
相离
#判断两个矩形之间的包含,重叠,相离关系
# 读取输入数据
rect1 = list(map(float, input().split()))
rect2 = list(map(float, input().split()))
# 解析矩形1的数据
x1, y1, w1, h1 = rect1
left1 = x1 - w1 / 2
right1 = x1 + w1 / 2
top1 = y1 + h1 / 2
bottom1 = y1 - h1 / 2
# 解析矩形2的数据
x2, y2, w2, h2 = rect2
left2 = x2 - w2 / 2
right2 = x2 + w2 / 2
top2 = y2 + h2 / 2
bottom2 = y2 - h2 / 2
# 判断两个矩形的关系
if left1 >= right2 or left2 >= right1 or top1 <= bottom2 or top2 <= bottom1:
relation = "相离"
elif left1 <= left2 and right1 >= right2 and top1 >= top2 and bottom1 <= bottom2:
relation = "包含"
elif left1 >= left2 and right1 <= right2 and top1 <= top2 and bottom1 >= bottom2:
relation = "包含"
else:
relation = "重叠"
# 输出结果
print(relation)
Demo27
打印数字
I
题目描述
利用循环,寻找规律,打印如下数字模式:
![](https://i-blog.csdnimg.cn/blog_migrate/af7288917f2f24ae0dc0bc0b87338d07.png)
print("模式A")
for n in range(1, 7):
for i in range(1, n + 1):
print(i, end = " ")
print()
print("模式B")
for n in range(1, 7):
for i in range(1, 8 - n):
print(i, end = " ")
print()
for n in range(6, 0, -1):
for i in range(1, n + 1):
print(i, end = " ")
print()
print("模式C")
for n in range(1, 7):
for k in range(6 - n):
print(" ", end = " ")
for i in range(n, 0, -1):
print(i, end = " ")
print()
print("模式D")
for n in range(6, 0, -1):
for k in range(6 - n):
print(" ", end = " ")
for i in range(1, n + 1):
print(i, end = " ")
print()
Demo28
打印数字
II
题目描述
利用循环,寻找规律,打印如下数字模式:
![](https://i-blog.csdnimg.cn/blog_migrate/2b281d666e2745b289380b59367bb1ca.png)
for n in range(1, 8):
for k in range(7 - n):
print(" ", end = " ")
for x in range(1 - n, n):
print(abs(x) + 1, end = " ")
print()
Demo29
打印数字
III
题目描述
利用循环,寻找规律,打印如下数字模式:
![](https://i-blog.csdnimg.cn/blog_migrate/d719fda7180c5fa337d4ac9449b5dc52.png)
for n in range(1, 8):
for k in range(7 - n):
print(" ", end = " ")
for x in range(1 - n, n):
num = 2 ** (n - 1 - abs(x))
print("%2d" % (num), end = " ")
print()
Demo30
打印菱形
I
题目描述
如下所示,是一个高度为
9
的菱形
![](https://i-blog.csdnimg.cn/blog_migrate/1785af51adc0557816ac40da7a7dfac5.png)
用户输入菱形高度
n
,并打印出该高度下的菱形
输入输出描述
输入高度
n
,
n
为奇数
输出该高度的菱形
示例
输入:
5
输出:
![](https://i-blog.csdnimg.cn/blog_migrate/82b689c8070a1683b69f8c603c0bed82.png)
n = eval(input())
for i in range(1, n + 1):
for k in range(abs(n // 2 + 1 - i )):
print(" ", end = "")
for j in range(1, i + 1):
if j <= i and i + j <= n + 1:
print("*", end = " ")
print()