WOchentag Bestimmen
-
Hallo Zusammen, ich habe mal eine Frage bezueglich der DATE Funktion, und zwar moechte ich zu meinen eingegebenen Datum den Wochentag bestimmen, hier ist der Quellcode soweit wie ich gekommen bin....
Könnse mir Helfen?!
#include <stdio.h> #include <time.h> #include <string.h> #include <iostream> using namespace std; //Direktive /* Im Gueltigkeitsbereich des Files wird der Namensbereich mit dem Namen std zur Verfuegung gestellt. */ class CDatum { private: //Instanzvariablen int m_iTag; int m_iMonat; int m_iJahr; int m_cWochenTag; int MonatTagMax(void); public: //Methoden void DatumEingabe(void); void DatumAusgabe(void); void DatumTag(void); CDatum(void); //Konstruktor }; CDatum::CDatum() { tm date; time_t time_then; m_iTag = date.tm_mday; m_iMonat = date.tm_mon+1; m_iJahr = date.tm_year+1900; m_cWochenTag = date.tm_wday; time_then = mktime( &date ); } void CDatum::DatumEingabe(void) { int DatumOK=0; while(DatumOK!=1) //Whileschleife, solange widerholen wie DatumOK ungleich 1 ist { cout << "Geben sie den Tag ein: "; cin >> m_iTag; cout << endl; cout << "Geben sie den Monat ein: "; cin >> m_iMonat; cout << endl; cout << "Geben sie das Jahr ein: "; cin >> m_iJahr; if(m_iJahr < 50) { m_iJahr=m_iJahr+2000; } else { if(m_iJahr<100) { m_iJahr=m_iJahr+1900; } } if(m_iMonat>0 && m_iMonat<13 && m_iJahr>1582 && m_iTag>0 && m_iTag<=MonatTagMax()) { DatumOK=1; } else { cout << "Eingabefehler"; cin.get(); } } } void CDatum::DatumAusgabe(void) { cout<< m_cWochenTag <<":" << m_iTag <<"." << m_iMonat << "." << m_iJahr; } int CDatum::MonatTagMax(void) { switch(m_iMonat) { case 2: if(!((m_iJahr%100)%4) && (m_iJahr%100) || !(m_iJahr%400)) return (29); else return (28); break; case 4: case 6: case 9: case 11: return (30); break; default: return (31); } } int main() { CDatum Datum; Datum.DatumEingabe(); Datum.DatumAusgabe(); return 0; }
-
Leute macht mal kein Scheiß...
das ist wichtig!
-
Da steht was du machen musst:
http://www.cplusplus.com/ref/ctime/mktime.htmlSogar mit Beispiel, dass genau deinen Fall löst. Setz die Seite am besten gleich zu deinen Favoriten ;).