#include <iostream>
#include <string>
#include "Date.h"

Date::~Date(){
}

Date::Date(short jour, short mois, int annee){
  this->jour = jour;
  this->mois = mois;
  this->annee = annee;
}


bool Date::operator< (const Date &autre) const{
  return (annee<autre.annee?true:(annee==autre.annee?(mois<autre.mois?true:(mois==autre.mois?(jour<autre.jour):false)):false));
};

bool Date::operator== (const Date &autre) const{
  return ((annee==autre.annee)&&(mois==autre.mois)&&(jour==autre.jour));
};

bool Date::operator> (const Date &autre) const{
  return (annee>autre.annee?true:(annee==autre.annee?(mois>autre.mois?true:(mois==autre.mois?(jour>autre.jour):false)):false));
};

bool Date::operator<= (const Date &autre) const{
};

int main(){
  Date d1 (1, 1, 1999);
  Date d2 (1, 1, 1999);
  Date d3 (2, 3, 1482);
  Date d4 (9, 2, 3548);

  bool res;
  res = d1==d2;
  std::cout << "d1 == d2 -> " << (res ? "true" : "false") << std::endl;
  res = d1>d3;
  std::cout << "d1 > d3 -> " << (res ? "true" : "false") << std::endl;
  res = d1<d4;
  std::cout << "d1 < d4 -> " << (res ? "true" : "false") << std::endl;
  res = d1>d4;
  std::cout << "d1 > d4 -> " << (res ? "true" : "false") << std::endl;
  res = d1<d3;
  std::cout << "d1 < d3 -> " << (res ? "true" : "false") << std::endl;

return 0;
}
