# 1.小李大学毕业开始工作,他想买一套现价为100万元的房子。若房子价格以每年百分之k(1≤k≤20)增长,小李的年薪是n(10≤n≤50)万元,假设小李未来的年薪不变,且每年所得的n万元全部积攒起来,请计算小李多少年能买下这套房子。如果超过20年小李也买不起这套房子,输出“很遗憾,小李买不起!”。
house = 100
money = 0
k = 2 # 自定义k
n = 20 # 自定义n
for year in range(1,22):
if year>20:
print("很遗憾,小李买不起!")
else:
house *= (1+(k/100))
money += n
if money > house:
print(str(year)+"年")
break
# 2.判断一个正整数是不是回文数。如果一个数的正向和逆向的读法相同,该数称为回文数,如12321、7887是回文数。 提示:本题可以将输入正整数作为字符串处理。
number = 12321
strnum = str(number)
if strnum[::-1] == strnum:
print("回文")
else:
print("不是回文")
# 3.打印一个m行n列的字符矩形,输入行数m、列数n、组成矩形的字符,输出字符矩形。
m, n = 4, 5
for i in range(0, m):
for j in range(0, n):
if [i, j] == [0, 0]:
print("┌", end="")
elif [i, j] == [0, n - 1]:
print("┐")
elif [i, j] == [m - 1, 0]:
print("└", end="")
elif [i, j] == [m - 1, n - 1]:
print("┘")
elif j == 0:
print("│", end="")
elif j == n - 1:
print("│")
elif i == 0:
print("─", end="")
elif i == m - 1:
print("─", end="")
else:
print(" ", end="")
# 4.输出九九乘法表。算式之间用“\t”作为分隔符。 提示:用字符串连接运算符+,构建每个乘法公式。
m, n = 10, 10
for i in range(1, m):
for j in range(i, n):
print(str(i) + "×" + str(j) + "=" + str(i*j), end="\t")
if j == n-1:
print("")
# 5.输入班级数,每个班的人数以及每个学生的成绩,计算并输出每个班的平均分。
record = {
"班级1": {
"学生张三": 32,
"学生李四": 66,
"学生王五": 77,
},
"班级2": {
"学生张三": 32,
"学生李四": 66,
"学生王五": 77,
},
"班级3": {
"学生张三": 32,
"学生李四": 66,
"学生王五": 77,
}
}
for k, v in zip(record.keys(), record.values()):
ave = 0
for k2, v2 in zip(v.keys(), v.values()):
ave += v2/len(v)
print(k + "的平均分为:" + str(ave))