]> www.ginac.de Git - cln.git/blobdiff - examples/legendre.cc
Fetch imported m4 files during autogen.sh invocation.
[cln.git] / examples / legendre.cc
index 644104378327586e66ef37572cfaedf0d6a6508e..3d3066a346ebb3aa9998abae39ea4a8f034dd414 100644 (file)
@@ -1,21 +1,24 @@
 // Compute the Legendre polynomials.
 
-#include <cl_number.h>
-#include <cl_integer.h>
-#include <cl_rational.h>
-#include <cl_univpoly.h>
-#include <cl_modinteger.h>
-#include <cl_univpoly_rational.h>
-#include <cl_univpoly_modint.h>
-#include <cl_io.h>
-#include <stdlib.h>
+#include <cln/number.h>
+#include <cln/integer.h>
+#include <cln/rational.h>
+#include <cln/univpoly.h>
+#include <cln/modinteger.h>
+#include <cln/univpoly_rational.h>
+#include <cln/univpoly_modint.h>
+#include <cln/io.h>
+#include <cstdlib>
+
+using namespace std;
+using namespace cln;
 
 // Computes the n-th Legendre polynomial in R[x], using the formula
 // P_n(x) = 1/(2^n n!) * (d/dx)^n (x^2-1)^n. (Assume n >= 0.)
 
 const cl_UP_RA legendre (const cl_rational_ring& R, int n)
 {
-       cl_univpoly_rational_ring PR = cl_find_univpoly_ring(R);
+       cl_univpoly_rational_ring PR = find_univpoly_ring(R);
        cl_UP_RA b = PR->create(2);
        b.set_coeff(2,1);
        b.set_coeff(1,0);
@@ -33,7 +36,7 @@ const cl_UP_RA legendre (const cl_rational_ring& R, int n)
 
 const cl_UP_MI legendre (const cl_modint_ring& R, int n)
 {
-       cl_univpoly_modint_ring PR = cl_find_univpoly_ring(R);
+       cl_univpoly_modint_ring PR = find_univpoly_ring(R);
        cl_UP_MI b = PR->create(2);
        b.set_coeff(2,R->canonhom(1));
        b.set_coeff(1,R->canonhom(0));
@@ -52,21 +55,21 @@ const cl_UP_MI legendre (const cl_modint_ring& R, int n)
 int main (int argc, char* argv[])
 {
        if (!(argc == 2 || argc == 3)) {
-               fprint(cl_stderr, "Usage: legendre n [m]\n");
+               cerr << "Usage: legendre n [m]" << endl;
                exit(1);
        }
        int n = atoi(argv[1]);
        if (!(n >= 0)) {
-               fprint(cl_stderr, "Usage: legendre n [m]  with n >= 0\n");
+               cerr << "Usage: legendre n [m]  with n >= 0" << endl;
                exit(1);
        }
        if (argc == 2) {
                cl_UP p = legendre(cl_RA_ring,n);
-               fprint(cl_stdout, p);
+               cout << p << endl;
        } else {
                cl_I m = argv[2];
-               cl_UP p = legendre(cl_find_modint_ring(m),n);
-               fprint(cl_stdout, p);
+               cl_UP p = legendre(find_modint_ring(m),n);
+               cout << p << endl;
        }
-       fprint(cl_stdout, "\n");
+       return 0;
 }