目录
方法二:x从0~33枚举,y从0~33枚举,z=90-x-y
一、1!+2!+3!+....+n!
n=int(input())
res=0
#res=1!+2!+3!+....+n!
#外层循环,i便利[1,2,3,4,....,n]
for i in range(1,n+1):
#内层循环目的就是计算now_res=i!
now_res=1
#i便利[1,2,3,4,....,n]
for j in range(1,i+1):
now_res*=j
res+=now_res
print(res)
二、采购
方法一:x,y,z都从0~90枚举
# count用于计算次数
count=0
for x in range(91):
for y in range(91):
for z in range(91):
count+=1
# 满足条件
if x+y+z==90 and 15*x+10*y+5*z==500:
print(x,y,z)
print(count)
结果:
0 10 80
1 8 81
2 6 82
3 4 83
4 2 84
5 0 85
753571
方法二:x从0~33枚举,y从0~33枚举,z=90-x-y
即母鸡最多买500/15=33只,公鸡最多买500/10=50只,则小鸡买90-x-y只。
# count用于计算次数
count=0
for x in range(34):
for y in range(51):
count+=1
# 满足条件
z=90-x-y
if 15*x+10*y+5*z==500:
print(x,y,z)
print(count)
结果:
0 10 80
1 8 81
2 6 82
3 4 83
4 2 84
5 0 85
1734
方法三:解方程组
# count用于计算次数
count=0
for x in range(6):
y=10-2*x
z=80+x
count += 1
print(x,y,z)
print(count)
结果:
0 10 80
1 8 81
2 6 82
3 4 83
4 2 84
5 0 85
6
三、三角形
1、向右直角三角形
n=int(input())
#外层循环:i遍历[1,2,3,...,n],表示输出第i行
for i in range(1,n+1):#左边不包含!!!
#第i行输出i个*
for j in range(i):
print("*",end=&#