#include #include #include #define USE_GMP #define USE_MPFR #include "bnc.h" void dfunc(mpf_t ret, mpf_t x) { mpf_mul(ret, x, x); } int main() { mpf_t ans, start, end, ret; set_bnc_default_prec_decimal(100); mpf_init(ans); mpf_init(start); mpf_init(end); mpf_init(ret); mpf_set_d(start, 0.0); mpf_set_d(end, 1.0); mpf_trapezoidal_fs(ans, start, end, dfunc, 2); mpf_out_str(stdout, 10, 0, ans); printf("\n"); mpf_trapezoidal_fs(ans, start, end, dfunc, 4); mpf_out_str(stdout, 10, 0, ans); printf("\n"); mpf_trapezoidal_fs(ans, start, end, dfunc, 8); mpf_out_str(stdout, 10, 0, ans); printf("\n"); mpf_trapezoidal_fs(ans, start, end, dfunc, 16); mpf_out_str(stdout, 10, 0, ans); printf("\n"); mpf_clear(ans); mpf_clear(start); mpf_clear(end); mpf_clear(ret); return EXIT_SUCCESS; }