1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
#ifndef TADHORA_H_
#define TADHORA_H_
struct thora {
int horas; // de 0 a 23
int minutos; // de 0 a 59
int segundos; // de 0 a 59
};
// PRE = { }
// POST = {h1 es la hora 00:00:00}
void horacero (thora &h1);
// PRE = { h1 es una hora correcta}
// POST = {escribe en pantalla la hora h1 con formato xx:xx:xx }
void mostrarhora (thora h1);
// PRE = { 0<=h<=23, 0<=m<=59, 0<=s<=59 }
// POST = { h1 es la hora h:m:s }
void ponerenhora (int h, int m, int s, thora &h1);
// PRE = { h1 es una hora correcta}
// POST = {h es el número de horas de h1, m es el número de minutos de h1,
// s es el número de segundos de h1 }
void separarhora (thora h1, int &h, int &m, int &s);
// PRE = {segs >= 0 }
// POST = {h1 es la hora actual si han transcurrido segs segundos desde las 0:0:0}
void convertir (int segs, thora &h1);
// PRE = {h1 es una hora correcta}
// POST = {h1 es la hora de entrada más un segundo}
void masunsegundo (thora &h1);
// PRE = { h1, h2 son dos horas correctas}
// POST = { devuelve true si las dos horas son iguales y false en caso contrario }
bool iguales (thora h1, thora h2);
// PRE = { h1, h2 son dos horas correctas}
// POST = { devuelve true si h1 es una hora posterior a h2, y false en caso contrario }
bool mayorque (thora h1, thora h2);
// PRE = { h1, h2 son dos horas correctas, h1 mayor que h2 }
// POST = { devuelve el número de segundos entre h1 y h2 }
int diferencia (thora h1, thora h2);
// PRE = {h2 es una hora correcta }
// POST = { al acabar, h1 tiene la misma información que tiene h2 }
void asignar (thora &h1, thora h2);
#endif /* TADHORA_H_ */
|