コード例 #1
0
ファイル: integral.c プロジェクト: RickWei/ics2015
FLOAT computeT(int n, FLOAT a, FLOAT b, FLOAT (*fun)(FLOAT)) {
	int k;
	FLOAT s,h;
	h = F_div_int((b - a), n);
	s = F_div_int(fun(a) + fun(b), 2 );
	for(k = 1; k < n; k ++) {
		s += fun(a + F_mul_int(h, k));
	}
	s = F_mul_F(s, h);
	return s;
}
コード例 #2
0
ファイル: FLOAT.c プロジェクト: nju-ics/ics2016
FLOAT pow(FLOAT x, FLOAT y) {
	/* we only compute x^0.333 */
	FLOAT t2, dt, t = int2F(2);

	do {
		t2 = F_mul_F(t, t);
		dt = (F_div_F(x, t2) - t) / 3;
		t += dt;
	} while(Fabs(dt) > f2F(1e-4));

	return t;
}
コード例 #3
0
ファイル: integral.c プロジェクト: wxzcyy/X86
FLOAT f(FLOAT x) { 
	return F_div_F(int2F(1),int2F(1) + F_mul_int(F_mul_F(x,x),25));
	/* f(x) = 1/(1+25x^2) */
/*	FLOAT a = int2F(1);
	FLOAT b = F_mul_F(x,x);
	FLOAT c = F_mul_int(b ,25);
	FLOAT d = int2F(1) + c;*/
//	nemu_assert(x == f2F(0.8));
//	nemu_assert(b < f2F(0));
/*
    a ++ ;
	a -- ;
	b ++ ;
	b -- ;	
	c ++ ;
	c -- ;
	d ++ ;
	d -- ;
	return F_div_F(a,d);*/
}
コード例 #4
0
ファイル: integral.c プロジェクト: ZhouYC627/2015PA
FLOAT computeT(int n, FLOAT a, FLOAT b, FLOAT (*fun)(FLOAT)) {
	int k;
	FLOAT s,h;
	h = F_div_int((b - a), n);
	s = F_div_int(fun(a) + fun(b), 2 );
	for(k = 1; k < n; k ++) {
		s += fun(a + F_mul_int(h, k));
	}
	s = F_mul_F(s, h);
	return s;
	/*
	
	FLOAT m1=f2F(0.1);
	//FLOAT m2=f2F();
	m1=fun(m1);
	FLOAT ans=f2F(0.8);
	ans=Fabs(ans-m1);
	nemu_assert(ans<=f2F(1e-4));
	return 0;
	*/
}
コード例 #5
0
ファイル: integral.c プロジェクト: RickWei/ics2015
FLOAT f(FLOAT x) { 
	/* f(x) = 1/(1+25x^2) */
	return F_div_F(int2F(1), int2F(1) + F_mul_int(F_mul_F(x, x), 25));
}