给出一个5~编程求10以内的阶乘正整数,输出该数的阶乘

1,用科学记数法表示的数:5.19*10的n次方的整数位数是?2,若乘积1*2*3*…*n=M*10的31次方,其中n、M为自然数,且10n≠M,则n的最大值为?3,已知:N是正整数,且10的4次方≤N≤10的5次方,N=10的4次方x+1,那么满足条件的整数x共有__个.*************************************************谢谢大家的回答,但是第1题n如果要是个负数怎么办?能否讲解讲解切磋切磋?第1踢说位数,位数和数位是有区别的/
ktQX24PK79
1.n+12.有点奇怪...30!=2.65*10^32=26.5*10^31,故要令M为自然数,n要大于等于30(26.5/30小于1,故29及以下的阶乘不符合题意),而当n大于等于31时n!=26.5*(n!/30!)*10^31=M*10^31M=26.5*(n!/30!)>10,10n≠M衡成立啊不明白10n≠M这个条件有什么用,没有限制住n的最大值,n只有最小值30啊...3.1-9,9个------把一个大于10(或者小于1)的整数记为a×10^n的形式(其中1≤a<10),这种记数法叫做科学记数法.看来只能分类讨论了,n为正整数时就是n+1 n为负整数时,整数部分为零,算是1位吧回答者:匿名 2-13 23:19更正:2.应该是说n!=M*10^31,含有质因数2和5可以构成一个10,因为在n个数中,含有质因数2的必定大于含有质因数5的,所以必须要凑齐31个质因数5.这个是我初步的思路吧回答者:ZHT95 - 试用期 一级 2-14 11:40说得有道理,我弄错了M为自然数这个条件,n=30时,M只是大于1,符合科学计数法,并不是自然数,惭愧.要令M为自然数,n!要有至少31个零,关于阶乘末尾有几个零的问题,其实就是1到n这几个整数中包含多少因子5的问题,2*5=10而2远多于5的个数,所以一个整数若含有一个因子5,则必然会在求阶乘时产生一个零.若整数能被5整除,则包含1个因子5;若整数能被5^m整除,则包含m个因子5.不过这样似乎仍然只能确定n的最小值,我试带数进去,n=100时,能被5整除的有20个,20个零,能被5^2整除的数有4个,8个零,一共28个了,显然,当n=115时,M*10^31是个包含31个零的整数,M为自然数.故n大于等于115.而根据我前面的结论,n大于等于31时n!=26.5*(n!/30!)*10^31=M*10^31M=26.5*(n!/30!)=26.5*n*…*(n-30+1)>10n,10n≠M衡成立啊就比如n=115时,M>1*3*7*13*23>115*10(1.3.7.13.23为任取的非5素数)还是不明白10n≠M这个条件有什么用,还是没有限制住n的最大值啊...不过,如果是说,M/n所得的商不能够被10整除,那么问题就麻烦了...应为要考虑到n和M分别分解因数的结果...倘若n是素数,那么M能不能被这个素数整除...晕...不是数学专业,这个问题我不会了...10n≠M到底是什么意思阿,晕倒...m(_ _)m3.N=10的4次方x+1究竟是什么?N=(10^4)*(x+1)还是N=(10^4)*x+1 如果是前者,0-9,10个数 如果是后者,1-9,9个数 回答者:匿名 2-14 01:23此为正解.
为您推荐:
其他类似问题
第一题是n+1
0;1;2;3;4;5;6;7;8;9一共十种
5.19*10的n次方的整数位数是n+1
n如果要是个负数,5.19*10的n次方的整数位数是0第三题
∵ 10的4次方≤N≤10的5次方,N=10的4次方x+1
∴0≤x≤9满足条件的整数x有:0
N=10的4次方x+1究竟是什么?N=(10^4)*(x+1)还是N=(10^4)*x+1如果是前者,0-9,10个数如果是后者,1-9,9个数还有第一题,n若是负数,那么小数的整数位数是0还是1完全是个概念问题了,不过我觉得,0难道不是整数?不能计入整数位数么?譬如0.1的整数部分为0,位数应当为1。...
第二题应该是说n!=M*10^31,含有质因数2和5可以构成一个10,因为在n个数中,含有质因数2的必定大于含有质因数5的,所以必须要凑齐31个质因数5。这个是我初步的思路吧
只求2分~~~放条生路~我自己走~~~
扫描下载二维码第8章习题解答_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
第8章习题解答
上传于||文档简介
&&v​b​a​书​的​答​案​哦
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩14页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢从键盘上输入一个正整数n(n≤10),求n的阶乘并输出结果
橙yotcu458
ude &stdio.h&void main(){int fac(int n);prinf("input an integer number:")scanf(%d,&a)b=fac(a)prinf("%d!=%10.0f\n",a,b)}int fac(int n){if(n&0){prinf("n&0,dataerror!")}elseif(n==0||n==1)f=1;elsef=fac(n-1)*n:return(f);}
为您推荐:
其他类似问题
扫描下载二维码java编程题90道_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
java编程题90道
上传于||文档简介
&&j​a​v​a​编​程​题0​道
你可能喜欢

我要回帖

更多关于 计算并输出100的阶乘 的文章

 

随机推荐