漫天疯语 发表于 2020-4-1 02:38:49

【Pyhon 009讲心得体会】【关于摸球的进阶程序——列出摸多球的所有可能的集合】

【效果】
========================= 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()
        print('请输入',sortname,'球的个数:',sep ='')
        sortname=int(input())

print('你输入的结果如下:')
for i in range(Sort):
        print(sortname,'球有',sortname,'个',sep ='')
print('请输入你需要摸球的个数:')
num=int(input())

for i in range(Sort):
        print(sortname+'球',sep =' ',end = ' ')
        numname.append(int(sortname))
        numname = (num+1) if(numname >= num) else (numname+1)
        sortnum.append(+'球',0])
       
print('颜色搭配个数分别为:')
for i in range(Sort): #i为种类循环
    for j in range(numname):#sortnum为种类拿球循环
      p=i
      sortnum = j
      if p == 0:
            temp = Sort
            for temp in range(Sort):Num = Num + sortnum
            if Num == num:
                print(sortnum)
                countnum += 1
            Num = 0
      else:               
            while (p):
                for k in range(numname):
                  sortnum = k
                  temp = Sort
                  for temp in range(Sort):Num = Num + sortnum
                  if Num == num:
                        print(sortnum)
                        countnum += 1
                        Num = 0
                        sortnum = 0
                        break
                  Num = 0
                p=p-1
    sortnum=0
print('一共有',countnum,'种摸球可能')

页: [1]
查看完整版本: 【Pyhon 009讲心得体会】【关于摸球的进阶程序——列出摸多球的所有可能的集合】