day 38 计算分数精度值

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;
}

 

posted @ 2023-05-25 16:49  The-rich  阅读(29)  评论(0)    收藏  举报