Problema con el uso de la libreria time

Iniciado por Black Lotus, 5 Marzo 2013, 03:30 AM

0 Miembros y 2 Visitantes están viendo este tema.

Black Lotus

Tengo un Ejercicio el cual es el siguiente:
*Haga un programa que le de la bienvenida de acuerdo a la hora del sistema. Debe de hacer la validación de rangos considerando hasta los minutos.*

Mi código es el siguiente, lo único que me falta y que no se hacer es lo siguiente: Debe de hacer la validación de rangos considerando hasta los minutos.... me ayudarían a decirme como se hace esa validación?
Código (cpp) [Seleccionar]

#include <iostream>
#include <conio>
#include <time>

void  main() {
    char nya[60];

    time_t t = time(0);
    struct tm * now = localtime( & t );
    cout << (now->tm_hour ) << ':'
         << (now->tm_min) << ':'
         <<  now->tm_sec
         << endl;

    cout << "Ingrese su Nombre y Apellido: ";
    cin.getline(nya,60);

if ((now->tm_hour > 12) && (now->tm_hour<18))
    cout << "Buenas tardes: " << nya;
    else
    if (now->tm_hour > 0 && now->tm_hour < 12)
cout << "Buenos Dias"<<"\xA1"<<"as: " << nya;
         else
          cout << "Buenas Noches: " << nya;

getch();
}

85

por ejemplo, algo así pseudocódigamente hablando

Citarif (  HORA == 11:30 )

con lo cual tenés que validar la hora y los minutos... eso necesitás?

aparte los rangos son de 0 a 60 minutos? o qué rangos estás hablando?
Me cerraron el Windows Live Spaces, entonces me creé un WordPress XD
http://etkboyscout.wordpress.com/

Puntoinfinito

Yo trabajé con otra libreria de tiempo local y tal, y lo devolvía todo en segundos, no se si este es el caso.
AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

leosansan

Cita de: 85 en  5 Marzo 2013, 04:26 AM
..................................................

aparte los rangos son de 0 a 60 minutos? o qué rangos estás hablando?


Tal como tiene el código las 12:030 no se corresponde ni con el primer caso (>12) ni con el segundo (<12 ), por lo que le faltaría considerar los " = " y los minutos:

Código (cpp) [Seleccionar]
#include <iostream>
#include <ctime>
using namespace std;


int  main() {
    char nya[60];

    time_t t = time(0);
    struct tm * now = localtime( & t );
    cout << (now->tm_hour ) << ':'
         << (now->tm_min) << ':'
         <<  now->tm_sec
         << endl;

    cout << "Ingrese su Nombre y Apellido: ";
    cin.getline(nya,60);

if ((now->tm_hour >= 12 && now->tm_min>=0 ) && (now->tm_hour<=17 && now->tm_min<60))
    cout << "Buenas tardes: " << nya;
    else
    if (now->tm_hour >= 0 && now->tm_min>=0 && now->tm_hour <= 11 && now->tm_min<60)
cout << "Buenos D"<<"\xA1"<<"as: " << nya;
         else
          cout << "Buenas Noches: " << nya;
cin.get();
return 0;
}


Saluditos!, ....