九位累计可除数 :
它是由1―9九位各不相同的数组成的一位九位数 ,它的前两位能被2整除,前三位能被3整除,前N位能被N整除,这个数能被9整除。
请会做此题的大哥大姐们帮帮忙,做一下(用WIN-TC做,最好有标注,我C学的不太好,要不不太能看懂,麻烦你们了。谢谢!~~~~~~~~~~~~~~~~
----------------解决方案--------------------------------------------------------
可能是要费点劲,
----------------解决方案--------------------------------------------------------
不费劲我就不来这里啦 是吧
----------------解决方案--------------------------------------------------------
给我点时间,我现在在网吧,回去帮你想
----------------解决方案--------------------------------------------------------
不用想,用九个for(;;)运行效率最高!
----------------解决方案--------------------------------------------------------
是最高,但是很多位是可以再考虑的。
比如说第5位只能是0和5
这样就又节省了大半的时间
----------------解决方案--------------------------------------------------------
你们要是谁会的话能不能把完整的程序写下来让我看看啊?我C学的不好.算是初学者吧.
谢谢了,输出的时候好象也要注意一些吧.
谢谢你们了!~~~
----------------解决方案--------------------------------------------------------
呀,我在网吧,先写个最容易理解但同时运算时间最长的来应付一下吧
main() { unsigned long int num;
for( num=100000000;num<=999999999;num++ ) if( (num/100000000)%1==0 && (num/10000000)%2==0 && (num/1000000)%3==0 && (num/100000)%4==0 && (num/10000)%5==0 && (num/1000)%6==0 && (num/100)%7==0 && (num/10)%8==0 && (num/1)%9==0 ) printf("NUM=%ld\n",num); }
这样做是最最无奈的做法
----------------解决方案--------------------------------------------------------
呀,我在网吧,先写个最容易理解但同时运算时间最长的来应付一下吧
main() { unsigned long int num;
for( num=100000000;num<=999999999;num++ ) if( (num/100000000)%1==0 && (num/10000000)%2==0 && (num/1000000)%3==0 && (num/100000)%4==0 && (num/10000)%5==0 && (num/1000)%6==0 && (num/100)%7==0 && (num/10)%8==0 && (num/1)%9==0 ) printf("NUM=%ld\n",num); }
这样做是最最无奈的做法
我说的是这九位数字是不重复的,即各位都不相同,而且还不包括0啊。
不好意思,占用你在网吧的时间了,其实我也没电脑啊, 只能在网吧啊。
希望你回去后给我一个完整做出这道题的程序,谢谢啦
----------------解决方案--------------------------------------------------------
我说的是这九位数字是不重复的,即各位都不相同,而且还不包括0啊。
不好意思,占用你在网吧的时间了,其实我也没电脑啊, 只能在网吧啊。
希望你回去后给我一个完整做出这道题的程序,谢谢啦
别总指望别人给你写出代码,如果老是这样的态度,
一,怕是写了你看不懂!
二,我会删贴的。
三,看看置顶贴!
----------------解决方案--------------------------------------------------------