签到

05月06日
尚未签到

共有回帖数 0

    霜晨守候

    等级:
    1000位/8位数的 的程式,自己写的
    #include iostream
    #include cstdlib
    using namespace std;

    char dividend[1000];
    char result[1000];

    int main()  
    {  
       
       int divisor,digit_dividend = 0,digit_divisor = 1;
       int temp = 0 , r = 0;

    for(int i=0;i1000;i++)
    result = '';
       
       cout  "输入被除数";
       cin  dividend;
       cout  "输入除数";
       cin  divisor;  
       
       for (int i=0;i1000;i++)
           if ( dividend != '' )
               digit_dividend++;                    //计算被除数的位数
           else
               break;
               
       for (int i=10;i=divisor;i*=10)               //计算除数的位数
           digit_divisor++;
           
       int re_ = 0;                                 //除数的余值

       int digit = 1;                               //字符转化数字位数时的位数转换
       for (int m=0;mdigit_divisor-1;m++)
            digit*=10;
           
       for (int i=0;idigit_divisor;i++)  //首位的计算
       {
             re_ += (dividend-48)*digit;         // re_ 首位被除数的数字
             digit /= 10;
       }
       
       result[r++] = (re_ / divisor)+48;            //商
       temp = re_ % divisor;                        //temp 余数
       
       for (int i=1;i=(digit_dividend - digit_divisor);i++)  // 下一位的计算
       {
           result[r++] = ( temp*10 + dividend[digit_divisor+i] - 48 ) / divisor + 48 ;
           temp = ( temp*10 + dividend[digit_divisor+i] - 48 ) % divisor;

       }

    if ( temp != 0 )
    {
    result[r++] = '.';
    for ( int i=0;i1000-r;i++)
    {
    result[r++] = temp*10 /divisor+ 48 ;
    temp = temp*10 % divisor;
    }
    }

    for (int i=0;result!='';i++)
    cout  result;
    cout  endl;
       
    }  


    楼主 2015-12-24 21:45 回复

共有回帖数 0
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知