|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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,'种摸球可能')
复制代码
|
|