数学建模社区-数学中国

标题: 克服内存溢出--求2的1000次方任意数的多次方求解(N的M次方问题求解) [打印本页]

作者: wangzheng3056    时间: 2013-7-30 15:27
标题: 克服内存溢出--求2的1000次方任意数的多次方求解(N的M次方问题求解)
本帖最后由 wangzheng3056 于 2013-7-30 11:54 编辑 " `3 o1 u& w0 F, o: C, {) ]
  1. #include<stdio.h>
    0 \7 k7 B  P% n4 }2 X8 k5 O
  2. #define max_size 1000
    , L) v3 d0 c+ J9 D# L7 v7 Y0 C
  3. #define pow_count 1000//次数
    * i5 D+ q& R) X3 B
  4. void main()
    6 u  |( O2 T' V, K4 b; x" r! l
  5. {
    8 B, N3 U9 x, C
  6.     static int a[max_size];" S" L- x1 \; W
  7.     int sum,i,j;
    & j' V" j5 }. |( s( s8 [: x1 _5 Y! T
  8.     a[0]=2;
    9 s/ z4 M8 l& R& I. h. O- v
  9.     for(i=1;i<max_size;i++)' }; b1 N& g! q
  10.     {
    $ Y6 P. Z. V  K: x/ N+ F5 J  c
  11.         a[i] = 0;    ) [; M  m! ]) x  f: c
  12.     }
    6 ^7 V# G& c; b. `
  13.     for(i = 1;i<pow_count;i++)
    8 G. S- c* Q0 a8 N, y6 @" H
  14.     {* _" f: J3 t3 }+ ^
  15.         for(j=0;j<max_size;j++)
    ) G3 Y1 E1 ~# F# R
  16.         {6 o* I, Q" o. H! {& B
  17.             if(a[j]*2>=10)
      u; x1 [! l5 A9 l# M  g% r
  18.             {
    & t, _: v/ F9 t
  19.                 a[j] = a[j]*2%10;+ v. ~$ w0 a# k
  20.                 a[j+1]+=1;8 v$ W* I- p, ]
  21.             }
    + O' t5 J/ q" ?% }
  22.             else, b- ^. P( u" C7 n9 k  [! G
  23.             {
    7 d/ j, j. c8 b2 C* b+ q
  24.                a[j]= a[j]*2;
    ) P# A# O* b4 s9 K; ~4 p- d9 y9 G
  25.              }
    7 W" f' s  B5 g% y% ^- j8 o" Y
  26.          }  - |% T2 b. m% Y3 g' E6 t4 `
  27.     }   
    8 D' A; r2 p9 ~! b$ C
  28.     for(i=max_size;i>0;i--)
    2 g; C  v6 k4 _& l: t
  29.     {
    * ^0 h5 W2 M5 D7 T8 Y
  30.         printf(\"%d\",a[i]);
    % b) D' g! A! L! c
  31.     }
    " H# s8 p0 A% [. a( P; P
  32. }
复制代码





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5