Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Black Lotus en 5 Marzo 2013, 03:30 AM

Título: Problema con el uso de la libreria time
Publicado por: Black Lotus en 5 Marzo 2013, 03:30 AM
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();
}
Título: Re: Problema con el uso de la libreria time
Publicado por: 85 en 5 Marzo 2013, 04:26 AM
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?
Título: Re: Problema con el uso de la libreria time
Publicado por: Puntoinfinito en 5 Marzo 2013, 08:31 AM
Yo trabajé con otra libreria de tiempo local y tal, y lo devolvía todo en segundos, no se si este es el caso.
Título: Re: Problema con el uso de la libreria time
Publicado por: leosansan en 6 Marzo 2013, 00:02 AM
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!, ....(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)
Título: Re: Problema con el uso de la libreria time
Publicado por: Black Lotus en 7 Marzo 2013, 17:48 PM
Gracias
Citar
Cita de: leosansan en  6 Marzo 2013, 00:02 AM

Saluditos!, ....(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)