• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            巢穴

            about:blank

            P1001

            orz.啊..orz..
            就是一個普通的高精度..注意下格式的細節就可以..
            - -我用的dev c++..忘寫#include <string>編譯過了..
            然后提交的時候不知道..就編譯錯誤...
            然后把重載運算符改成了普通方法..
            然后把class改成了struct..
            總只有點暈..
            后來才發現是少寫了#include......

            #include <iostream>
            #include 
            <string>
            #include 
            <math.h>
            using namespace std;
            const int MAXN=10000;
            struct Decimal 
            {
              
            private:
                      
            int len;//總長度 
                      int point_pos;//小數點位置 
                      int number[MAXN];//具體數 
              public:
                     Decimal();
                     Decimal(
            string);
                     
            void print();
                     Decimal ch(Decimal);
            }
            ;
            Decimal::Decimal()
            {
            }

            Decimal Decimal::ch(Decimal x)
            {
             
            int num[MAXN],n_len=0;
             memset(num,
            0,sizeof(num));
             n_len
            =x.len+Decimal::len;
             
            for (int i=1;i<=x.len;i++)
             
            {
              
            for (int j=1;j<=Decimal::len;j++)
              
            {
               num[i
            +j-1]+=x.number[i]*Decimal::number[j];
               num[i
            +j]+=num[i+j-1]/10;
               num[i
            +j-1]%=10;  
              }

             }

             
            int point_pos=x.point_pos+Decimal::point_pos;
             
            if (num[n_len]==0) n_len--;
             Decimal result;
             result.len
            =n_len;
             result.point_pos
            =point_pos;
             
            for (int i=1;i<=n_len;i++)
                 result.number[i]
            =num[i];
             
            return result;
            }


            Decimal::Decimal(
            string x)
            {
             
             
            int i=x.length();
             
            int sign=0;
             
            for (int j=0;j<x.length();j++)
                 
            if (x[j]=='.') sign=1;
             
            int point_pos=0;
             
            int len=i-sign;

             i
            =len;
             
            for (int j=0;j<x.length();j++)
             
            {
                 
            if (x[j]=='.') point_pos=i;
                 
            if (x[j]<='9'&&x[j]>='0')
                 
            {
                  number[i
            --]=x[j]-48;
                  
            //cout<<number[i]<<endl;
                 }

             }

             Decimal::point_pos
            =point_pos;
             Decimal::len
            =len;
            }


            void Decimal::print()
            {

             
            int pe=1;
             
            while (number[pe]==0&&pe<=point_pos) pe++;
             
            int p=len;
             
            while (number[p]==0&&p>point_pos&&point_pos>pe) p--;
             
            //cout<<pe<<endl;
             for (int i=p;i>=pe;i--)
             
            {
              
            if (point_pos==i) cout<<".";
              cout
            <<number[i];
             }

             cout
            <<endl;
            }

            int main()
            {

                
            string x;
                
            int n;
                
                
            while(cin>>x>>n)
                
            {
                 Decimal d(x);
                
            // d.print();
                 Decimal result("1.0");
               
            //  result.print();
                 for (int i=1;i<=n;i++)
                 
            {
                  result
            =result.ch(d);
                 }

                 result.print();
                }

                system(
            "pause");
                
            return 0;
            }

            posted on 2009-10-14 22:34 Vincent 閱讀(205) 評論(0)  編輯 收藏 引用 所屬分類: 數據結構與算法

            久久嫩草影院免费看夜色| 久久电影网一区| 亚洲人AV永久一区二区三区久久 | 亚洲国产成人乱码精品女人久久久不卡| 久久亚洲国产欧洲精品一| 91精品国产综合久久香蕉| 欧美精品国产综合久久| 国产精品久久国产精品99盘| 久久婷婷色综合一区二区| 亚洲欧洲日产国码无码久久99| AAA级久久久精品无码片| 青青热久久国产久精品 | 国产精品视频久久久| 久久99久久成人免费播放| 亚洲午夜久久久久久久久电影网| 国产成人精品白浆久久69| 午夜精品久久久久久影视riav| 国产精品久久自在自线观看| 无码人妻久久一区二区三区蜜桃| 久久综合九色综合网站| 亚洲欧美另类日本久久国产真实乱对白 | 国产成年无码久久久免费| 品成人欧美大片久久国产欧美| 久久无码中文字幕东京热 | 性高朝久久久久久久久久| 久久国产精品-国产精品| 亚洲精品国精品久久99热一| 色婷婷噜噜久久国产精品12p| 久久亚洲高清观看| 99国产欧美精品久久久蜜芽| 国内精品综合久久久40p| 四虎国产精品成人免费久久| 久久久噜噜噜久久中文字幕色伊伊| 久久天天躁狠狠躁夜夜网站| 久久精品国产亚洲AV影院| 久久99这里只有精品国产| 日本WV一本一道久久香蕉| 精品久久久久久久国产潘金莲 | 久久精品水蜜桃av综合天堂| 99精品久久精品一区二区| 综合久久给合久久狠狠狠97色|