10的阶乘
1到10000的阶乘结果中,含有0到9连续循环数字的最大长度是多少,具体是哪个阶乘?
- 从 1! 到 10000! 结果中,有不少含有0到9连续循环数字,可以是 01234,也可以是 789012。例如,1935! 结果中含有 34567890,5141! 结果中含有 78901234 ……求:含有最长连续循环数字的是哪个阶乘,连续循环数字的长度是多少?另外,以程序搜寻答案耗时很长,大约160分钟,有否更快的算法?
- 你好,下面是我给出的fortran计算方法module searchcircleimplicit nonetype circleinteger(8):: p ! positioninteger(8):: whichdigitinteger(2), allocatable:: cir(:)integer(8):: clen =1end typetype(circle):: c1, c2integer(2), allocatable:: str(:)integer(8):: a(1000000)=0, x=1000000, d=2, npointer! 初始化containssubroutine biginteger2stringimplicit none!integer(8), intent(in):: a(:)!integer(8), intent(in):: dinteger(8):: ii, n1, nn, ntemp, j, kn1 = floor(log10(1.*a(d-1))) + 1nn = n1 + 6*(d-2)if(allocated(str))deallocate(str)allocate(str(nn))k=0do ii = nn, n1+1, -6 k = k+1 ntemp = a(k) do j = 0, 5, 1 str(ii-j) = mod(ntemp,10) ntemp = ntemp/10 enddoenddontemp = a(d-1)do ii = n1, 1, -1 str(ii) = mod(ntemp,10) ntemp = ntemp/10enddo!write(*,*)!write(*,*)npointer,!=!do ii = 1, nn, 1! write(*,(I1),advance="no")str(ii)!enddoend subroutine biginteger2stringsubroutine findmaxcir(p)implicit noneinteger(8), intent(in)::pinteger(8):: ii, j, k, nstr, n, clennstr = size(str)ii = 1!write(*,*)———,pdo while(iinstr) clen = 1 do while((str(ii+1)-str(ii).eq.1.or.(str(ii).eq.9.and.str(ii+1).eq.0)).and.iinstr) clen = clen + 1 ii = ii + 1 enddo if(clenc1%clen)then c1%clen = clen if(allocated(c1%cir))deallocate(c1%cir) c1%whichdigit = ii + 1 – clen c1%p = p allocate(c1%cir(clen)) c1%cir(1:clen:1) = str(ii+1-clen:ii:1) write(*,300)p, ii + 1 – clen, clen 300 format(I5,"! ===","从高到低第",I6,3X,"位有连续循环数字串:","长度为",I2) write(*,*)字符串为: do j = 1, clen, 1 write(*,(I1),advance="no")c1%cir(j) enddo write(*,(/)) endif ii = ii + 1enddoend subroutine findmaxcirend module searchcircleprogram main use searchcircle integer(8):: r, s, i, j, n real(8):: t1, t2 !c1%clen = 1 read(*,*)n call cpu_time(t1) a(1) = 1 do i=2, n, 1 !a(i) = 0 r = 0 do j = 1, d, 1 s = a(j) * i + r r = s/x a(j) = mod(s, x) enddo if(a(d).ne.0)d=d+1 npointer = i call biginteger2string call findmaxcir(i) enddo write(*,*)"#####################################" write(*,300)c1%p, c1%whichdigit, c1%clen 300 format("最大连续循环数字串为:",I5,"!
VFP程序编写题。 1.加法求和 2.求奇数偶数和 3.求510的阶乘 跪求详解 。
- VFP程序编写题。1.加法求和2.求奇数偶数和3.求510的阶乘 跪求详解 。
- clwilgahlbwaglbqigylgrilglyebkupq1;qpt ybdhjkveky3ywf;
下面是我模拟手工算法10000阶乘的程序,为什么会输出很多负数
- # include stdio.h# include int main(){ int a[40000],t,b[40000],c[40000],d[40000],e[40000],x,k1,k2,k3,k4,i,flag,j; t=0; a[40000]=1; for(i=2;i=9999;i++) { k1=i%10; k2=(i-k1)10%10; k3=(i-k1-k2*10)100%10; k4=(i-k1-k2*10-k3*100)1000; for(j=0;j=40000;j++) { b[j]=0; c[j]=0; d[j]=0; e[j]=0; } for(j=0;j=40000;j++) { if(a[j]!=0) { flag=j; break; } } t=0; for(j=40000;j=0;j–) { x=a[j]*k1+t; b[j]=x%10; t=x10; } b[flag-1]=t; t=0; for(j=40000;j=0;j–) { x=a[j]*k2+t; c[j-1]=x%10; t=x10; } c[flag-2]=t; t=0; for(j=40000;j=0;j–) { x=a[j]*k3+t; d[j-2]=x%10; t=x10; } d[flag-3]=t; t=0; for(j=40000;j=0;j–) { x=a[j]*k4+t; e[j-3]=x%10; t=x10; } e[flag-4]=t; t=0; for(j=40000;j=0;j–) { x=b[j]+c[j]+d[j]+e[j]+t; a[j]=x%10; t=x10; } } for(i=0;i=40000;i++) if(a[i]!=0) { flag=i; break; }for(i=flag;i=40000;i++) printf("%d",a[i]); printf("0000n"); printf("n"); printf("%dn",flag); return 0;}
- int装不下了 ,溢出了。
编写一个程序,求100以内的数的阶乘。
- 求阶乘1 、系统的基本功能编写一个程序,求100以内的数的阶乘。2 、要求及提示2.1 程序执行过程(1)系统从键盘读入自然数n,n∈[1,100]。(2)输出运算的结果,为便于观察结果,每输出四位中间插入空格,格式如下(例如,n=12):12!= 4790 0160 0(3)询问用户是否继续进行,用户选择“是”,转(1),否则退出程序。2.2 算法要求及提示(1)因为n较大时,n!的结果将超出长整形的保存范围,因此结果不能用longint型的变量来保存。本算法要求用链表来存储。(2)链表的每一个节点存储结果的一位数字,因此结果的输出实际上是链表的遍历问题。2.3 其他要求(1)输入时具备一定的容错性判断,如输入的不是数字,或输入的数超过范围等等。(2)变量、函数命名符合规范。(3)注释详细:每个变量都要求有注释说明用途;函数有注释说明功能,对参数、返回值也要以注释的形式说明用途;关键的语句段要求有注释解释。(4)程序的层次清晰,可读性强。
- 给邮箱
求7 8 9 10的阶乘,vb语言
- 求7 8 9 10的阶乘,vb语言
- Private Sub Combo1_Click() Dim s As String Dim n As Integer n = Combo1.Text s = "" s = "计算1!+2!+3!+…+" & n & "!,其结果为" & jiecheng(n) Text1.Text = sEnd SubPrivate Sub Form_Load()Combo1.ClearCombo1.AddItem ("7")Combo1.AddItem ("8")Combo1.AddItem ("9")Combo1.AddItem ("10")End SubPublic Function jiecheng(ByVal n As Integer) Dim m As Double m = 1 For i = 1 To n 酣础丰飞莶读奉嫂斧讥 m = m * i Nextjiecheng = m End Function
编写一个函数求一个整数n的阶乘,在主函数中计算并输出10!的值。
- 编写一个函数求一个整数n的阶乘,在主函数中计算并输出10!的值。
- 我不会的啊。
编写一个函数求一个整数n的阶乘,在主函数中计算并输出10!的值。
- 编写一个函数求一个整数n的阶乘,在主函数中计算并输出10!的值。
- 我不会的啊。
大学里的社团
- 好玩的
- 一、 理论专业学习类 1、海洋电脑俱乐部 2、济南大学建筑协会3、烹饪营养协会4、阶乘音乐工作社5、阶乘网络工作社6、阶乘体育工作社7、济南大学数码设计协会8、化工学院科技协会9、心理协会10、国际政治研讨会11 行政管理研究会12、电脑协会13、青年学人研究会14、济南大学外语协会15、青年财务会计协会16、济南大学IT实训协会17、创业原动力18、法律协会19、计算机教育联盟20、教师职业技能协会21、数学建模协会22、研究生学术沙龙23、三个代表思想研究会24、霓彩效应设计协会25、创业协会26、心理拉祜协会 二、 科技创新类 1、机械学院科技创新协会2、灵感科幻协会3、济南大学科技协会4、土建学院科技协会5、翔翼文人科技创新协会 三、 兴趣爱好类 1、开口乐曲艺协会2、水木城协会3、金石书画社4、济南大学自行车协会5、成才协会6、南域诗社7、雷霆轮滑社8、幻坊动漫社9、O类舞武社10、英语口语爱好者协会11、漫有引力动漫社12、天使楼阁女生俱乐部13、天文爱好者协会14、读者联谊会15、济南大学交际舞协会16、孤星印社17、花样年华18、摄影协会19、吉他爱好者协会20、翠竹园文学社21、鹰之艺演绎工作社22、辩论爱好者协会23、九月部落古文化立德会24、奕者归家25、映画走廊电影社团26、大学城文学社27、集雅阁社团28、羽毛球协会29、济南大学运动网球协会30、F和弦音乐联盟31、觅航文学社32、土建足球爱好者协会33、管理爱好者协会34、济南大学轮滑协会35、济大跆拳道协会36、土建学院篮球协会37、济南大学乒乓球协会38、黑眼睛剧团39、青笋文学社40、青笋乐迷协会41、青笋朗诵协会42、驱动社43、读者协会44、济南大学公关协会45、济南大学武术协会46、滑板俱乐部47、格林空间48、青笋剧团49、梦翔学生社团50、双截棍协会51、博知会52、剪纸协会53、形意拳协会54、围棋爱好者协会 四、 志愿服务类 1、新野农村发展促进会2、爱心助学服务社3、清泉义务导游4、飞翔绿色环保协会5、化工学院记者团6、爱心社7、兵妈妈爱心团8、体育晨报济大记者站9、社会调查协会10、大学生记者团11、大学生广播台12、格润环保 热门的我就不清楚了。。。凡是收费的事情自己都要好好考虑清楚 我两个舍友去年交了30块 后来嫌里面人太多了就不去了……
帮忙修改一个c++的程序
- 求N!的值这是我的做法,但超时,应该怎样修改acm.hdu.edu.cn/showproblem.php?pid=1042网址。
- 每次都从头计算阶乘所以太慢了,应当在一开始把所有范围内的整数的阶乘都求出来,然后后面查表获得结果。
请尝试写出斐波那契数列的非递归求解
- 请列举或者构造其他能用递归方法求解的问题,同时请给出非递归的求解。谢谢。
- 其他递归经典问题阶乘1~100的求和打印杨辉三角计算组合数八皇后问题(递归+回朔)。。。。。。 斐波那契数列的非递归求解#includestdio.hint main(){int i_1=1,i_2=1,i,n,t;printf("输入斐波拉契数列项数n");scanf("%d",&n);if(n==1){printf("1n");return 0;}printf("1 1n");if(n==2) return 0;for(i=3;i=n;i++){ t=i_1+i_2; i_1=i_2; i_2=t; printf("%d ",i_2);}printf("n");return 0;}