牟东
请用1到6的六个数字组成一个六位数abcdef。从1到6,不同的字母代表不同的数字。要求ab是2的倍数。abc是3的倍数。abcd能被4整除。abcde能被5整除。abcdef是6的倍数。
请问:这样的六位数有多少?每个多少钱?
1.解法:借助细绳求解。
用字符串法多表求解。首先建立第一个空 list my _ listl: "my _ listl = "并构造循环" for l in range(123456,654321):"控制遍历从最小数123456到最大数654321。同时根据问题的含义进行第一次数据过滤:“如果int (I
(I//1000)% 3 = = 0和int (11100)% 4 = = 0和int (I//10)% 5 = = 0和Andi% 6 = = 0”,即分别从数中取出高二位ab和高三位abc……...2、3等。是可以分割和判断的,”
然后构建第二个空列表my_list2,遍历刚刚通过构建循环“for words in my_listl:”得到的列表my_listl。第二次数据过滤的条件是“如果' 0 '不在文字中,7 '不在文字中,8 '不在文字中,9 '不在文字中”,即删除包含非“123456”字符(0,7,8,9)的“非法”数据,符合要求的数据再次通过append。
然后构建第三个空链表my_list3,遍历链表my_list2: "for words in my_list2:",将每个数据依次保存在集合my_set中:" my_set= set "
此时,存储在列表my_list3中的数据是合格数据,但其类型是字符串而不是实整数数据。于是建立了第四个链表my_list4,链表my_list3被“my _ list3中的单词:”遍历,所有数据被int()函数转换成整数数据,然后添加到链表my _ list 4:“my _ list 4”
最后用print()语句输出结果:“print('这样的六位数有,len( my_list4),' number,'它们是:,my_list4)”。
运行程序以获得最终的操作结果:
“这样的六位数有2个,它们是:[123654,321654]"
评论列表()