模块化的大数阶乘

来源:互联网 发布:如何优化宝贝详情页 编辑:程序博客网 时间:2024/04/29 21:55
  1. #include "stdafx.h"
  2. #include <iostream.h>
  3. #define N 10
  4. int i, j, m, c, t, a[1000];
  5.     
  6. void fun1(void)
  7. {
  8.     for(i=1; i<=N; i++)
  9.     {
  10.         for(j=0, c=0; j<m; j++)
  11.         {
  12.             t=a[j]*i+c;
  13.             a[j]=t%10;
  14.             c=t/10;
  15.         }
  16.         while(c)
  17.         {
  18.             a[m++]=c%10;
  19.             c/=10;
  20.         }
  21.     }
  22. }
  23. void fun2(void)
  24. {
  25.     for(i=m-1; i>=0; i--)
  26.     {
  27.         cout<<a[i];
  28.     }
  29. }
  30. int main(int argc, char* argv[])
  31. {
  32.     a[0]=1;
  33.     m=1;
  34.     fun1();
  35.     fun2();
  36.     cin.get();
  37.     return 0;
  38. }
 
原创粉丝点击