Benötige Hilfe bei komplettem Code für Projektarbeit



  • Hallo ertmal an alle, als erstes mal zu meiner Person, bin (sollte) Auszubildender zum Fachinformatiker für Anwendungsentwicklung sein. Bin allerdings erst zum Halbjahr in die Klasse gekommen und das was ich bis jetzt in C++ kann, hab ich mir selbst beigebracht.

    Das Projekt ist ein Terminplaner in C++ als Konsolenanwendung, Jaaa ich weis der jenige der uns das aufgegeben hat, ist ein *****. Wir haben eine Woche Zeit und ich komme mit meinem Teil der Arbeit, dem Hinzufügen von Termin nicht so recht voran. Wir haben uns in der Gruppe darauf geeinigt eine Datei pro Tag anzulegen und dann die jeweiligen Termine darein zu schreiben. Mein Problem ist nur noch dass, dass ich nicht weiss wie ich die Datei in C++ anlegen lasse und dann den Termin reinschreibe. die Datei soll im folgenden format angelegt werden:

    Dateiname: JahrMonatTag also z.B. 20070105 für einen Termin der am 5.1.07 wäre.
    Inhalt: Zeit;TerminText,Tage die man vorher erinnert werden möchte, also z.B. 1800;Geschäftsessen;2 für ein Geschäftsessen,dass um 18:00 ist und an das mann zwei Tage vorher erinnert werden soll.

    Die anderen Komponenten wie Termine löschen und der ganze verwalten Kram wird von anderen aus meiner Grupper erledigt, die schon etwas sicherer in C++ sind.

    Im folgenden findet ihr den kompletten Code meiner Anwendung und ich würde mich wirklich, wirklich freuen wenn mir da jemand helfen kann.

    #include <iomanip>
    #include <cstdlib>
    #include <iostream>
    #include <fstream>
    #include <string>
    #include <time.h>
    #include <conio.h>
    #include <sstream>
    
    using namespace std;
    
        struct stTermin
        {
         int iUhrzeit;
         int iStunde;
         int iMinute;
         string sTerminBeschreibung;
         int iErinnerungsTage;
         int iJahr;
         int iMonat;
         int iTag;
         int iWochenTag;
         int iZeile;
        };
    
    static int MonatsTage[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    
    // Anzahl der Tage des Monats ermitteln
    int fTageImMonat(int iJahr, int iMonat)
    {
       // Prüfen, ob übergebener Monat Februar ist
       if (iMonat != 2)
         // Wert aus Tabelle holen
    	 return MonatsTage[iMonat];
    
       if (iJahr % 4)       // Kein Schaltjahr
    	   return 28;
       if (iJahr % 100)     // Schaltjahr
    	   return 29;
       if (iJahr % 400)     // Kein Schaltjahr
    	   return 28;
       return 29;	        // Schaltjahr
    }
    
    string fIntToString(int iEingabe)
    {
    
           }
    
    int fEingabeZahl(string sPrompt, int iVon, int iBis)
    {
        bool bFehler;
        string sEingabe;
        int iEingabe;
        do
        {
            cout << sPrompt;
            cin >> sEingabe;
            iEingabe = atoi(sEingabe.c_str());
            bFehler = ((iEingabe < iVon) || (iEingabe > iBis));
            if (bFehler) { cout << "Fehlerhafte Eingabe" << endl; }
        } while (bFehler);
        return iEingabe;
    }
    
    #include "NeuerTermin.h"
    
    int main(int argc, char *argv[])
    {
    
        string sUhrzeit;
        stTermin termin;
        string sTerminBeschreibung;
    
    //Benutzerabfrage der terminDaten
    
        termin.iJahr = fEingabeZahl("Bitte geben Sie das Jahr ein(Format 2007 oder 07): ", 1, 9999);
        if (termin.iJahr < 100)
            {
            termin.iJahr = termin.iJahr + 2000;
            }
    
        termin.iMonat = fEingabeZahl("Bitte geben Sie den Monat ein: ", 1, 12);
    
        termin.iTag = fEingabeZahl("Bitte geben Sie den Tag ein: ", 1, fTageImMonat(termin.iJahr, termin.iMonat));
    
        termin.iStunde = fEingabeZahl("Bitte geben Sie zuerst die Stunde ein(hh): ", 1, 24);
    
        termin.iMinute = fEingabeZahl("Bitte geben Sie nun die Minuten ein(mm): ", 1, 60);
    
        termin.iErinnerungsTage = fEingabeZahl("Wie viele Tage vor dem Termin moechten Sie daran erinnert werden? ", 1, 365);
    
        cout << "Bitte geben Sie einen Namen fuer den Termin ein: ";
        cin >> sTerminBeschreibung;
    
    //Erstellung der Test-Datei terminDaten.txt
    
        cout << endl << "Vielen Dank!" << endl;
    
        ofstream out ("terminDaten.txt");
        out << termin.iMinute << termin.iStunde << ";" << sTerminBeschreibung<< ";" 
        << termin.iErinnerungsTage << ";" << endl;
    
        cout << "Daten wurden in Datei geschrieben!" << endl << endl;
    
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    

    Zum Download:
    http://daniel-weber.net/cal.zip



  • Sorry hab ich vergessen:

    Gemacht mit Dev-C++
    Zielsystem Windows XP



  • Hier gibts verständliche Beispiele wie man in Dateien schreibt bzw. sie wieder ausliest: FAQ:Ströme in C++



  • Danke schonmal für die schnelle Antwort aber, wie ich glaube ich bereits erwähnte, bin ich in C++ Anfänger. Ich habe mir die vielen Beispiele angesehen und vielleicht das richtige übersehen doch leider konnte ich nicht das finden was ich brauche.

    Vielleicht habe ich oben auch zu viel geschrieben, es geht nur darum eine Datei mit einem variablen Dateinamen zu erzeugen, und in die Datei dann die Informationen zu schreiben.

    Dateiname: JahrMonatTag (aus den int-Variablen) z.B. 20070528 >> 28.05.2007
    Dateininhalt: Uhrzeit;TerminText;Erinnerung n Tage vorher;
    Dateininhalt-Beispiel: 1800;Essen;2 Geschäftsessen um 18:00 Uhr

    Danke aber trotzdem an KPC 🙂



  • Ok habs geschafft dank "CppProgrammer" von fun-soft.de

    stringstream s; s << jahr << monat << tag;
        string file = s.str() + ".txt";
    
        ofstream out(file.c_str());
        out << "Irgendwas in die Datei schreiben...";
        out.close();
    


  • Finde ich toll, dass jemand deine Aufgaben macht.
    Nur so für die Zukunft: wenn sich jemand schon die Mühe macht und DIR den FAQ Beitrag heraussucht, den DU eigentlich finden hättest müssen, dann solltest DU diesen auch lesen und nicht auf eine fertige Lösung warten.
    Ich habe mir den FAQ Beitrag angesehen und dieser beantwortet deine Frage!

    Gruß und nimm dir meinen Rat zu herzen, sonst wird dir kein Mensch mehr helfen (wollen)!



  • Ja find ich auch toll, das sich jemand die Arbeit gemacht hat. 😃 😃 😃

    Und warum DU hier noch NICHT registriert bist, wundert mich kaum...



  • gexcube schrieb:

    Das Projekt ist ein Terminplaner in C++ als Konsolenanwendung, Jaaa ich weis der jenige der uns das aufgegeben hat, ist ein *****.

    wegen der konsolenanwendung oder warum? *lach*
    ein fachinformatiker, der konsole nicht mag.. det wird heikel 😃



  • Darum geht es nicht, Konsolen sind schon manschmal was feines, aber man hätte sowas wahrscheinlich mit einer grafischen Oberfläche schöner lösen können.

    mfg :p



  • Hallo

    Meinst du wirklich wenn du nicht mal mit Dateien umgehen kannst du dann mit GUI-Programmierung in C++ zurechtkommst? Für deinen Wissenstand ist die "Beschränkung" auf Konsole doch verständlich. Insbesondere wenn das Ziel des Kurses ist die Grundlagen und vielleicht auch Spezialitäten von Standard- C++ zu lernen. Denn GUIs gehören nicht dazu.

    bis bald
    akari



  • Ich alleine hätte es nie und nimmer gechafft, das ganze in eine "GUI" zu implementieren. Aber deswegen war das ja auch eine PROJEKT-Arbeit, an der nicht ich sondern wir, ein Team aus 5 Programmierern, gesessen haben. Das fertige Projekt, bzw. Programm könnte ich hier ja eigentlich mal reinstellen, damit man sieht, dass wir da (meiner Meinung nach) wirklich was geleistet haben. Und wie ich bereits schrieb glaube ich, mache ich eine Ausbildung. Un bekanntlicher Weise ist das Ziel einer Ausbildung ja dass ich was LERNE und mich nicht BELEHREN lassen muss von Leuten die gerne auf Noobs rumhacken; (akari und KPC ausgeschlossen)

    Werde das Programm bei Gelegenheit hier mal reinstellen.

    Trotzdem Danke an alle die mir geholfen haben und an die jenigen die mich auch im Nachhinein noch unterhalten... :p :p :p

    mfg

    PS: Kann man Dateien hier im Forum hosten lassen?


Anmelden zum Antworten