求各位高手帮我这个程序
求一个这样的6位数,它乘2,3,4,5,6均是其原数中数字的不同组合,且还是6为数
提示:
(1) 确定该数的范围,因为该数在乘2,3,4,5,6后得到的积也为6位数,所以,该数最大应不超过:1000000/6=166667,因此可以在100000~166667范围内搜索;
(2) 进一步优化:由于这个数乘3为原来数字的组合,说明原来的数是3的倍数(一个数若为3的倍数,则该数的各个位之和为3的倍数)。由于这个数是3的倍数,则这个数乘3后的数,定为9的倍数。所以这个数为9的倍数(一个数若为9的倍数,则该数的各个位之和为9的倍数)。这样搜索范围缩小为100008开始到166666,步长为9。
(3) 分离出该数的6位数字,存放到一个数组中,而后将该数乘2、3、4、5、6后得到的积也分离出来存放到数组中。将得到的这些数组进行排序,而后再重新组成6个6位数,若这6个数均相同,则该数满足要求。
提示:
(1) 确定该数的范围,因为该数在乘2,3,4,5,6后得到的积也为6位数,所以,该数最大应不超过:1000000/6=166667,因此可以在100000~166667范围内搜索;
(2) 进一步优化:由于这个数乘3为原来数字的组合,说明原来的数是3的倍数(一个数若为3的倍数,则该数的各个位之和为3的倍数)。由于这个数是3的倍数,则这个数乘3后的数,定为9的倍数。所以这个数为9的倍数(一个数若为9的倍数,则该数的各个位之和为9的倍数)。这样搜索范围缩小为100008开始到166666,步长为9。
(3) 分离出该数的6位数字,存放到一个数组中,而后将该数乘2、3、4、5、6后得到的积也分离出来存放到数组中。将得到的这些数组进行排序,而后再重新组成6个6位数,若这6个数均相同,则该数满足要求。
...全文
相关推荐
java小实验:求一个整数各位数字之和
求一个整数各位数字之和。求一个整数各位数字之和。求一个整数各位数字之和。求一个整数各位数字之和。
代码_C循环-求各位数字之积_
但在这个特定的“求各位数字之积”的问题中,我们并不涉及字符串操作。标签 "C循环-求各位数字之积" 明确了这个话题的核心在于循环和数值处理。
C语言程序设计-求一个四位数的各位数字的立方和;.c
C语言程序设计-求一个四位数的各位数字的立方和;.c
C语言程序设计-求一个四位数的各位数字的立方和.c
C语言程序设计-求一个四位数的各位数字的立方和.c
求正整数各位数字之和
标题“求正整数各位数字之和”是一个与计算数学问题相关的编程任务,目标是编写程序来接收用户输入的一个正整数,然后计算并显示这个数的所有位数(即每一位上的数字)相加的和。


新手乐园
