1 // clang++ gmp_test.cc -I../../ -I/opt/local/include/ -L /opt/local/lib -lgmpxx -lgmp
 2 
 3 
 4 #include <gmpxx.h>
 5 #include <iostream>
 6 #include <cxxblas/cxxblas.cxx>
 7 
 8 using namespace std;
 9 
10 typedef mpq_class   T;
11 
12 int
13 main()
14 {
15     const int n = 30;
16     T a[n], b[n], c;
17     
18     for (int i=0; i<n; ++i) {
19         a[i] = T(n+i)/n;
20         
21         b[i] = 1/T(n-i);
22     }
23 
24     cxxblas::dot(n, a, 1, b, 1, c);
25 
26     cout << "a*b = " << c << "\n";
27     
28     cxxblas::axpy(n, c, b, 1, a, 1);
29     for (int i=0; i<n; ++i) {
30         cout << i << ") " << a[i] << endl;
31     }
32 }