zoukankan      html  css  js  c++  java
  • 求n!(高精度问题)

     1 #include <iostream>
     2 #include <stdio.h>
     3 #define MAX 10000
     4 using namespace std;
     5 void Mul(int n)
     6 {
     7     int i=0,j=0;
     8     int s;  //乘积
     9     int c=0;  //进位
    10     //存放大整数a
    11     int arr[MAX]={0};
    12     arr[0]=1;
    13     
    14     for(i=2;i<=n;i++)
    15     {
    16         for(j=0;j<MAX;j++)
    17         {
    18             s=arr[j]*i+c;
    19             arr[j]=s%10;
    20             c=s/10;  //进位
    21         }
    22     }
    23     
    24     for(i=MAX-1;i>=0;i--)
    25     {
    26         //遇到不是0,开始输出
    27         if(arr[i])
    28             break;
    29     }
    30     for(j=i;j>=0;j--)
    31     {
    32         //倒序输出
    33         printf("%d",arr[j]);
    34     }
    35     printf("\n");
    36 }
    37 int main(int argc, char *argv[]) {
    38     Mul(500);
    39     return 0;
    40 }

    算法思路:

  • 相关阅读:
    DOM对象
    多态
    封装和继承
    析构函数
    构造函数
    二维数组
    javascript的基本语法
    javascript数组
    js
    BOM和DOM的区别
  • 原文地址:https://www.cnblogs.com/zwjjj/p/9953496.html
Copyright © 2011-2022 走看看