查找100至999间有多少个整数的各位数字之积等于各位数字之和。

来源:百度知道 编辑:UC知道 时间:2024/06/02 11:04:07
例如,对于123来说,它的3位数字1、2、3的积6等于1、2、3的和6.显示这些数字并统计在这个范围内共有多少个这种数字。
需要编程,这是一个编程问题。
谢谢刚才的回答者,但这不是数学问题,我想请大家帮忙编写程序。c语言,不好意思,非常感谢。

首先不能有至少两位都是1,否则设剩下的一位数字是a,则a*1*1=a+1+1即a=a+2,不可能.……性质(1)
其次不可能三个数字中有两个是偶数一个是奇数,否则其和为奇数,积为偶数,不相等.……性质(2)
另外,若有且只有1位是1,设另两位为a,b则a+b+1=a*b*1=ab即(a-1)(b-1)=2,所以a,b一个是2,一个是3..……性质(3)

在三位都不是1的情况下,由于3位数字之和是小于等于27的,因此这种数中如果含有数字9,那么剩下两个数字只能是1和3或1和2,否则它们的积大于27.但由性质(3),都不成立.因此含数字9的数是不行的.
同理若含8或7,剩下两个数字也只能是1和3或1和2,都不行.
若含6,则剩下两个数字之积最多为4,由性质(2)(3)可能的情况是2和2(以下均用这两条性质排除一些组合).但6+2+2=10<6*2*2=24不成立.
若含5,则剩下两个数字之积最多为5,可能的情况是2和2,但5+2+2=9<5*2*2=20,不行.
若含4,则剩下两个数字之积最多为6,可能的情况是2和2,但4+2+2=8<4*2*2=16,不行.
此外,只能是2,2,2或2,3,3或3,3,3(因性质(1)(3),1不再考虑),但2+2+2=6<2*2*2=8,2+3+3=8<2*3*3=18,3+3+3=9<3*3*3=27.
故只有1,2,3这个组合,共123,132,213,231,312,321六个数.

你真是。。。说清楚啊
什么语言?

123
132
213
231
321
312
共6个

123
132
213
231
321
312