day 38 计算分数精度值

发布时间 2023-05-25 16:53:18作者: 墩

1.计算M/N,用数组储存计算中的中间值;

2.当中间值为0或数进入循环则结束计算;

3.输出;

 

#include <iostream>

using namespace std;

void g(int m,int n){
int a[110],b[110]={0};
int t=0;
while(m){
b[m]=t;
a[t++]=(10*m)/n;
m=(10*m)%n;
if(b[m]){break;}
}
printf("结果为:0.");
for(int i=0;i<t;i++){
cout<<a[i];
}
if(b[m]){printf("\n循环节位置为%d",t);}
}
int main(void){
int M,N;
printf("请输入一个分数:\n");
scanf("%d/%d",&M,&N);
g(M,N);
return 0;
}