62 lines
942 B
C++
62 lines
942 B
C++
#include "fecha.hpp"
|
|
using namespace std;
|
|
|
|
Fecha::Fecha() {
|
|
d = 0;
|
|
m = 0;
|
|
a = 0;
|
|
h = 0;
|
|
m = 0;
|
|
s = 0;
|
|
}
|
|
|
|
bool Fecha::leer() {
|
|
cin >> d;
|
|
cin.ignore();
|
|
cin >> m;
|
|
cin.ignore();
|
|
cin >> a;
|
|
|
|
cin >> h;
|
|
cin.ignore();
|
|
cin >> min;
|
|
cin.ignore();
|
|
cin >> s;
|
|
|
|
return true;
|
|
}
|
|
|
|
void Fecha::escribir() {
|
|
printf("%d/%d/%d %02d:%02d:%02d", d, m, a, h, min, s);
|
|
}
|
|
|
|
bool Fecha::es_igual(Fecha &f) {
|
|
if ((s == f.s) && (min == f.min) && (h == f.h) && (d == f.d) && (m == f.m) && (a == f.a)) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
bool Fecha::es_menor(Fecha &f) {
|
|
if (a != f.a) {
|
|
return a < f.a;
|
|
} else if (m != f.m) {
|
|
return m < f.m;
|
|
} else if (d != f.d) {
|
|
return d < f.d;
|
|
} else if (h != f.h) {
|
|
return h < f.h;
|
|
} else if (min != f.min) {
|
|
return min < f.min;
|
|
} else {
|
|
return s < f.s;
|
|
}
|
|
}
|
|
|
|
std::string Fecha::conv() {
|
|
char buf[20];
|
|
sprintf(buf, "%04d/%02d/%02d%02d:%02d:%02d", a, m, d, h, min, s);
|
|
return string(buf);
|
|
}
|
|
|