#include<iostream>
#include <giac/giac.h>

using namespace std;
using namespace giac;

int main(){
  // sum(1/j)
  int n;
  printf("sum(1/j,j=1..n), enter n ");
  cin >> n;
  double x=0.0;
  for (int j=1;j<=n;++j){
    x=x+1.0/j;
  }
  printf("Croissant: %.16g\n",x);
  x=0.0;
  for (int j=n;j>0;--j){
    x=x+1.0/j;
  }
  printf("Decroissant: %.16g\n",x);
  // Precision 30 digits
  set_decimal_digits(30,0);
  gen g("0.0",0);
  gen un("1.0",0);
  for (int j=1;j<=n;++j){
    g=g+un/j;
  }
  cout << "30 decimales croissant: " << g << endl;
  g=gen("0.0",0);
  for (int j=n;j>0;--j){
    g=g+un/j;
  }
  cout << "30 decimales decroissant: " << g << endl;
}

