Python实例100个(基于最新Python3.7版本)
参考:https://blog.csdn.net/weixin_41084236/article/details/81564963
实例001:数字组合
题目 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
最直观的解题思路:个、十、百位上循环放入1-4这四个数字,判断当他们互不相同时,即可输出。
count=0
for a in range(1,5):
for b in range(1,5):
for c in range(1,5):
if a!=b and a!=c and b!=c:
print(a,b,c)
count+=1
print('总计有%d个不同的三位数'%count)
实例008:九九乘法表
题目 输出 9*9 乘法口诀表。
解题思路:行1-9循环,列1-9循环,
for x in range(1,10):
for y in range(1,x+1):
print('%-2d×%2d=%2d'%(x,y,x*y),end=' ')
print()
实例080:猴子分桃
题目 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?
解题思路:
monkey=5 #猴子的数量
#桃子总数n
def show(n):
#循环次数(猴子的数量)
for i in range(1,monkey+1):
#t下一只猴子应该带走的桃子数量
t=(n-1)/monkey
#格式化输出相关信息
print('%d,桃子有%.2f个,第%d只猴子吃1个,拿走了%.2f个。'%(i,n,i,t))
#每只猴子吃完,并拿走之后,剩下的桃子数量
n=(monkey-1)*t
#定义功能函数
def fun():
#从1开始,第5只猴子拿走的桃子数量,从1一直往后加1,直到条件满足
k=1
#一直判断,直到
while True:
t=k
for i in [5,4,3,2]:
#当前猴子拿走的桃子数为t,吃拿之前所面对的桃子总数tc为monkey*t+1,且tc能被分成4份。
#前一个猴子拿走的桃子数为tp,则有monkey-1)*tp=monkey*t+1
tc=monkey*t+1
if tc%(monkey-1)!=0:break
#前一个猴子拿走的桃子数
t=tc/(monkey-1)
#当循环完之后,t就是第一只猴子拿走的桃子
else:
print('猴子%d只'%monkey)
print('桃子总数要%d个'%(monkey*t+1))
show(monkey*t+1)
break
k=k+1
fun()

浙公网安备 33010602011771号