比例化简C语言

比例化简C语言_第1张图片

比例化简C语言_第2张图片

分析:由于我们输出的数字只能小于L,所以我们就枚举所以的可能,在对每一种可能相除,在和原始数据相处的值做差,插值越小说明符合程度越大,保留更新更小的差值,直到最后输出最小的情况。(具体看代码注释)。

#include 
int f(int a,int b){
	if(b==0)return a;
	else f(b,a%b);
}
int main(){
	int n,m,j,i,k,a,b;
	scanf("%d%d%d",&n,&m,&k);
	float r=100;
	for(i=1;i<=k;i++){
		for(j=1;j<=k;j++){
			float x1=n*1.0/m;
			float x2=i*1.0/j;
			if(f(i,j)==1&&x2>=x1&&x2-x1

你可能感兴趣的:(c语言,算法,c++)