这是一篇实验报告,但是我觉得它应该可以作为一个实用的算法作为某些领域的高精度除法使用,它可以实现任意精度的除法

//此程序用于实现高精度除法
/*
示例:
输入分子和分母
1 49
输入小数后位数
50
输出:
0. 0204081632 6530612244 8979591836 7346938775 510204081
*/
//写于2019年12月2日 by樊煦杰;
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
   int zi,mu,i,n,shang;
   cout<<“输入分子和分母”<<endl;
   cin>>zi>>mu;
   cout<<“输入小数后位数”<<endl;
   cin>>n;
    for(i=0;i<n;i++)
    {
        if((i-1)%10==0)
        {
            cout<<” “;
        }
        shang=zi/mu;
        if(shang<1)
        {
           zi=zi*10;
           cout<<shang;
           if(i==0)
           {cout<<“.”;}
           continue;
        }
        if(shang>=1)
        {
            zi=(zi-shang*mu)*10;
            cout<<shang;
             if(i==0)
           {cout<<“.”;}
           continue;
        }
    }
    system(“pause”);
}

0 条评论

发表回复

Avatar placeholder

您的邮箱地址不会被公开。 必填项已用 * 标注