Datum/Wochentag --- C++

  • #1
F

Frazze

Bekanntes Mitglied
Themenersteller
Dabei seit
22.12.2005
Beiträge
90
Reaktionspunkte
0
Ort
Kirchheim/Teck
Ich möchte ein Programm (in C++) schreiben das anhand des momentanen Wochentags immer etwas anderes ausgibt, z.B. soll, sagen wir wenn heute Donnerstag ist, dann soll der Stundenplan (Schule :p) von morgen, also Freitag ausgegeben werden.
Jetzt wollte ich wissen wie man das realisieren kann. Kann mir da evtl. bitte jemand helfen?
Bin für jeden Tipp dankbar. :)


MfG Frazze
 
  • #2
Funktion->time'. Ich schreibe Dir noch was dazu, muss aber gerade mal weg ...
 
  • #3
Wenn Du Dich an der Standard-C-Library orientieren willst, verwende->time' und->localtime'.

time_t now= time(0);
tm* localt= localtime(&now);

Der Wochentag (0 = Sonntag, 1 = Montag, ..., 6 = Samstag) steht dann in->localt->tm_wday'.

Beispiel:

Code:
#include <ctime>
#include <iostream>

using namespace std;

enum WOCHENTAG {SONNTAG, MONTAG, DIENSTAG, MITTWOCH, DONNERSTAG, FREITAG, SAMSTAG};
const char* TNAMEN[] = {Sonntag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag};

void zeigePlan(WOCHENTAG tag) {
  cout << Stundenplan  << TNAMEN[tag] << : << endl << endl;
  // ...
}

WOCHENTAG heutigerTag() {
  time_t now= time(0);
  tm* localt= localtime(&now);
  return (WOCHENTAG)localt->tm_wday;
}

void zeigeHeutigenPlan() {  
  zeigePlan(heutigerTag());
}

void zeigeMorgigenPlan() {
  WOCHENTAG tag= heutigerTag();
  if(tag == SAMSTAG)
    tag= SONNTAG;
  else
    tag= (WOCHENTAG)(tag + 1);
  zeigePlan(tag);
}

int main()
{
  zeigeMorgigenPlan();


  return 0;
}

Den Sonntag habe ich hier mal mit eingeschlossen. Jetzt musst Du Dir noch eine passende Datenstruktur für Deinen Stundenplan überlegen, so dass Du ihn in->zeigePlan' ausgeben kannst (bzw. an einem schulfreien Tag Frei o.ä.). Wenn Du den Plan veränderbar machen willst, ohne dass dabei Änderungen am Code vorgenommen werden müssen, wird es natürlich etwas schwieriger. Ein STL-Container, eine verkettete Liste für jeden Tag der Woche oder (falls Du so weit noch nicht bist) ein zweidimensionales Array mit ausreichendem Platz würde sich anbieten. Es wäre natürlich sinnvoll, dies in eine Klasse zu packen. Falls Du Fragen hast, melde Dich einfach.
 
  • #4
Also danke erst mal, werde mich moregn ausgiebig damit befassen, wenn dann Fragen auftauchen dann werde ich gerne fragen.

Danke nochmla.


MfG Frazze
 
Thema:

Datum/Wochentag --- C++

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.965
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben