|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
【效果】
========================= RESTART: F:\python学习\摸球问题.py =========================
请输入有几种颜色的球
4
请输入第1种颜色的球:
小甲鱼
请输入小甲鱼球的个数:
4
请输入第2种颜色的球:
小鱿鱼
请输入小鱿鱼球的个数:
3
请输入第3种颜色的球:
小泥鳅
请输入小泥鳅球的个数:
8
请输入第4种颜色的球:
小蚂蚁
请输入小蚂蚁球的个数:
7
你输入的结果如下:
小甲鱼球有4个
小鱿鱼球有3个
小泥鳅球有8个
小蚂蚁球有7个
请输入你需要摸球的个数:
5
小甲鱼球 小鱿鱼球 小泥鳅球 小蚂蚁球 颜色搭配个数分别为:
[['小甲鱼球', 4], ['小鱿鱼球', 1], ['小泥鳅球', 0], ['小蚂蚁球', 0]]
[['小甲鱼球', 3], ['小鱿鱼球', 2], ['小泥鳅球', 0], ['小蚂蚁球', 0]]
[['小甲鱼球', 2], ['小鱿鱼球', 3], ['小泥鳅球', 0], ['小蚂蚁球', 0]]
[['小甲鱼球', 2], ['小鱿鱼球', 3], ['小泥鳅球', 0], ['小蚂蚁球', 0]]
[['小甲鱼球', 1], ['小鱿鱼球', 3], ['小泥鳅球', 1], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 3], ['小泥鳅球', 2], ['小蚂蚁球', 0]]
[['小甲鱼球', 3], ['小鱿鱼球', 0], ['小泥鳅球', 2], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 2], ['小泥鳅球', 3], ['小蚂蚁球', 0]]
[['小甲鱼球', 2], ['小鱿鱼球', 0], ['小泥鳅球', 3], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 1], ['小泥鳅球', 4], ['小蚂蚁球', 0]]
[['小甲鱼球', 1], ['小鱿鱼球', 0], ['小泥鳅球', 4], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 5], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 5], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 5], ['小蚂蚁球', 0]]
[['小甲鱼球', 2], ['小鱿鱼球', 3], ['小泥鳅球', 0], ['小蚂蚁球', 0]]
[['小甲鱼球', 0], ['小鱿鱼球', 3], ['小泥鳅球', 1], ['小蚂蚁球', 1]]
[['小甲鱼球', 1], ['小鱿鱼球', 3], ['小泥鳅球', 0], ['小蚂蚁球', 1]]
[['小甲鱼球', 0], ['小鱿鱼球', 3], ['小泥鳅球', 0], ['小蚂蚁球', 2]]
[['小甲鱼球', 0], ['小鱿鱼球', 3], ['小泥鳅球', 0], ['小蚂蚁球', 2]]
[['小甲鱼球', 3], ['小鱿鱼球', 0], ['小泥鳅球', 0], ['小蚂蚁球', 2]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 2], ['小蚂蚁球', 3]]
[['小甲鱼球', 0], ['小鱿鱼球', 2], ['小泥鳅球', 0], ['小蚂蚁球', 3]]
[['小甲鱼球', 2], ['小鱿鱼球', 0], ['小泥鳅球', 0], ['小蚂蚁球', 3]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 1], ['小蚂蚁球', 4]]
[['小甲鱼球', 0], ['小鱿鱼球', 1], ['小泥鳅球', 0], ['小蚂蚁球', 4]]
[['小甲鱼球', 1], ['小鱿鱼球', 0], ['小泥鳅球', 0], ['小蚂蚁球', 4]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 0], ['小蚂蚁球', 5]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 0], ['小蚂蚁球', 5]]
[['小甲鱼球', 0], ['小鱿鱼球', 0], ['小泥鳅球', 0], ['小蚂蚁球', 5]]
一共有 29 种摸球可能
>>>
【源代码如下】#综合近期学习,将摸球程序,扩展为列出摸多球的所有可能的集合(加个头,即可变为函数)
print('请输入有几种颜色的球')
Sort=int(input()) #int整型很重要,否则输入的是一个字符串格式,比较大小就会出错
sortname =list()
sortnum = list()
numname=list()
Num = 0
countnum=0
for i in range(Sort):
print('请输入第',(i+1),'种颜色的球:',sep ='')
sortname.append([input(),0])
print('请输入',sortname[i][0],'球的个数:',sep ='')
sortname[i][1]=int(input())
print('你输入的结果如下:')
for i in range(Sort):
print(sortname[i][0],'球有',sortname[i][1],'个',sep ='')
print('请输入你需要摸球的个数:')
num=int(input())
for i in range(Sort):
print(sortname[i][0]+'球',sep =' ',end = ' ')
numname.append(int(sortname[i][1]))
numname[i] = (num+1) if(numname[i] >= num) else (numname[i]+1)
sortnum.append([sortname[i][0]+'球',0])
print('颜色搭配个数分别为:')
for i in range(Sort): #i为种类循环
for j in range(numname[i]): #sortnum[i]为种类拿球循环
p=i
sortnum[p][1] = j
if p == 0:
temp = Sort
for temp in range(Sort):Num = Num + sortnum[temp][1]
if Num == num:
print(sortnum)
countnum += 1
Num = 0
else:
while (p):
for k in range(numname[p-1]):
sortnum[p-1][1] = k
temp = Sort
for temp in range(Sort):Num = Num + sortnum[temp][1]
if Num == num:
print(sortnum)
countnum += 1
Num = 0
sortnum[p-1][1] = 0
break
Num = 0
p=p-1
sortnum[i][1]=0
print('一共有',countnum,'种摸球可能')
|
|