Advertisement
Guest User

Untitled

a guest
Dec 6th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 22.97 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Rechnung
  6. {
  7. friend class MonatListe;
  8. friend class Kategorie;
  9. private:
  10.     int Betrag;// Rechnungsbetrag
  11.     int Nummer; //Nummer der Rechnung
  12.     string Kategorie;//Kategorie der Rechnung
  13.     const int Jahr=2017; //Wird nicht verwendet, aber in Aufgabenstellung verlangt
  14.     Rechnung *nachfolger;
  15. public:
  16.  
  17. Rechnung(){}                          //Defaultkonstruktor
  18. Rechnung(int betrag, int nummer, string kategorie):Betrag(betrag),Nummer(nummer),Kategorie(kategorie)
  19. {
  20.     nachfolger=0;
  21.  
  22. }
  23.  
  24.  
  25. int get_Betrag() //getter Methode fuer den Betrag
  26. {
  27.  
  28.     return Betrag;
  29. }
  30.  
  31. int get_Nummer()//getter Methode fuer die Nummer
  32. {
  33.     return Nummer;
  34. }
  35.  
  36. string get_Kategorie()//getter Methode fuer die Kategorie
  37. {
  38.     return Kategorie;
  39. }
  40.  
  41.  
  42.  
  43. void data_out()
  44. {   cout<<"Methode data_out"<<endl;
  45.     cout<<"Rechnungs Betrag: "<<get_Betrag()<<endl;
  46.     cout<<"Rechnungs Nummer: "<<get_Nummer()<<endl;
  47.     cout<<"Rechnungs Kategorie: "<<get_Kategorie()<<endl;
  48. }
  49.  
  50. };
  51.  
  52.  
  53. // Grundgerüst
  54. class MonatListe //Liste welche alle Rechnungen hineinschreibt
  55. {
  56.     friend class Rechnung;
  57.     friend class Kategorie;
  58.     // Listenkopf
  59.     Rechnung *kopf;
  60.  
  61.     // Listenende
  62.     Rechnung *ende;
  63. private:
  64.         int BudgetWert=500; //Monatsbudget fuer jeden Monat gleich
  65.         MonatListe *nachfolger;
  66. public:
  67.  
  68.     // Konstruktor
  69.     MonatListe()
  70.     {
  71.         kopf = ende = NULL;
  72.     }
  73.  
  74.     // Destruktor
  75.     ~MonatListe()
  76.     {
  77.         cout << "Liste gelöscht" << endl;
  78.     }
  79.  
  80.     void Ausgabenchecker(int Bet)
  81.     {
  82.         BudgetWert-=Bet;
  83.  
  84.         if(BudgetWert<=0)
  85.         {
  86.             cout<<"AUSGABENLIMIT UEBERSCHRITTEN"<<endl;
  87.         }
  88.     }
  89.     // eine Rechnung in die Liste einfügen
  90.     void hinzufuegen(Rechnung rechnung)
  91.     {
  92.         // Ein neues Listenelement erstellen und mit 'rechnung' initialisieren
  93.         Rechnung *neuesListenelement = new Rechnung(rechnung);
  94.  
  95.         // liste ist leer
  96.         if(istLeer())
  97.             ende = kopf = neuesListenelement;
  98.         else
  99.         {
  100.             // das letzte Element zeigt auf das neue Element
  101.             ende->nachfolger = neuesListenelement;
  102.  
  103.             // das neue Element wird zum Letzten
  104.             ende = neuesListenelement;
  105.  
  106.             // der Nachfolger vom Ende ist NULL
  107.             ende->nachfolger = NULL;
  108.         }
  109.     }
  110.  
  111.     // prüft ob die Liste leer ist
  112.     bool istLeer()
  113.     {
  114.         return (kopf == NULL); //? true : false;
  115.     }
  116.  
  117.     // Liste löschen
  118.         void loeschen()
  119.     {
  120.         if(istLeer())
  121.             return;
  122.  
  123.         // solange der Zeiger nicht Null ist, also noch Elemente vorhanden sind...
  124.         while(kopf->nachfolger != NULL)
  125.         {
  126.             // ...suche das vorletzte ELement
  127.             Rechnung *vorletztesElement = kopf;
  128.             while(vorletztesElement->nachfolger != ende)
  129.             {
  130.                 vorletztesElement = vorletztesElement->nachfolger;
  131.             }
  132.  
  133.             // lösche das letzte Element
  134.             delete ende;
  135.  
  136.             // das vorletzte Element wird zum Letzten
  137.             vorletztesElement->nachfolger = NULL;
  138.             ende = vorletztesElement;
  139.         }
  140.  
  141.         // zuletzt noch den Listenkopf löschen
  142.         delete kopf;
  143.  
  144.     }
  145.  
  146.  
  147.  
  148.  
  149.  
  150.     // zeigt alle Listenelemente
  151.     void elementeAnzeigen()
  152.     {
  153.         // aktueller Knoten
  154.         Rechnung *p = kopf;
  155.  
  156.         // solange der Knoten nicht Null ist, also das Ende nicht erreicht ist...
  157.         while(p != NULL)
  158.         {
  159.             // ...Inhalt ausgeben
  160.             cout << "Kategorie: "<< p->Kategorie
  161.                 << "\tRechnungsnummer: " << p->Nummer
  162.                 << "\tBetrag: " << p->Betrag
  163.                 << "\tJahr: " << p->Jahr << endl;
  164.             // der Nachfolger wird zum aktuellen Knoten
  165.             p = p->nachfolger;
  166.         }
  167.     }
  168.  
  169.  
  170. };
  171.  
  172.  
  173.  
  174. // Grundgerüst
  175. class Kategorie
  176. {
  177.  
  178. private:
  179.  
  180.        int Summe; //enthaelt die summe der kategorie
  181.  
  182. public:
  183.  
  184.     // Konstruktor
  185.     Kategorie()
  186.     {
  187.  
  188.     }
  189.  
  190.     // Destruktor
  191.     ~Kategorie()
  192.     {
  193.         cout << "Liste gelöscht" << endl;
  194.     }
  195.  
  196.     void Summation(int Betr) //Addiert fuer die Kategorien auf
  197.     {
  198.         Summe+=Betr;
  199.     }
  200.  
  201.  
  202.     //getter-Methode SUmme
  203.     int get_sum()
  204.     {
  205.     return Summe;
  206.     }
  207.  
  208.  
  209.  
  210. };
  211.  
  212.  
  213.  
  214.  
  215.  
  216. void rechnung_detail(string *ka,int *be, int *reNr) //Hole mir die rechnung details
  217. {
  218.  
  219.     cout<<"Creating"<<endl;
  220.     int RechnungsNr;
  221.     int Betrag;
  222.     int KategorieAuswahl;//Kategorie der Rechnung
  223.  
  224.     string Kategorie;
  225.     cout<<"Nummer der Rechnung"<<endl;
  226.     cin>>RechnungsNr;
  227.     cout<<"Rechnungsbetrag?"<<endl;
  228.     cin>>Betrag;
  229.     cout<<"Aus welcher Kategorie stammt die Rechnung?"<<endl;
  230.     cout<<"[1] Klettern"<<endl;
  231.     cout<<"[2] Essen"<<endl;
  232.     cout<<"[3] Trinken"<<endl;
  233.     cout<<"[4] Auto"<<endl;
  234.     cout<<"[5] Freundin"<<endl;
  235.     cout<<"[6] Kaffee"<<endl;
  236.     cout<<"[7] Studium"<<endl;
  237.     cout<<"[8] Haustier"<<endl;
  238.     cin>>KategorieAuswahl;
  239.  
  240.     switch(KategorieAuswahl)
  241.     {
  242.     case 1: Kategorie="Klettern";
  243.     break;
  244.     case 2: Kategorie="Essen";
  245.     break;
  246.     case 3: Kategorie="Trinken";
  247.      break;
  248.     case 4: Kategorie="Auto";
  249.      break;
  250.     case 5: Kategorie="Freundin";
  251.      break;
  252.     case 6: Kategorie="Kaffee";
  253.      break;
  254.     case 7: Kategorie="Studium";
  255.      break;
  256.     case 8: Kategorie="Haustier";
  257.      break;
  258.     default: cout<<"Falsche Auswahl"<<endl;
  259.     break;
  260.     }
  261.  
  262.     cout<<"RechnungsNr: "<<RechnungsNr<<endl;
  263.     cout<<"Betrag: "<<Betrag<<endl;
  264.     cout<<"Kategorie: "<<Kategorie<<endl;
  265.     cout<<"Rechnung successfully created"<<endl;
  266.     *ka=Kategorie;
  267.     *be=Betrag;
  268.     *reNr=RechnungsNr;
  269.  
  270. }
  271.  
  272.     //Global definierte Listen
  273.     MonatListe Januar; //Erstelle das Objekt der Klasse MonatListe mit dem Namen Januar
  274.     MonatListe Februar; //Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  275.     MonatListe Maerz; //Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  276.     MonatListe April; //Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  277.     MonatListe Mai;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  278.     MonatListe Juni;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  279.     MonatListe Juli;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  280.     MonatListe August;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  281.     MonatListe September;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  282.     MonatListe Oktober;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  283.     MonatListe November;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  284.     MonatListe Dezember;//Erstelle das Objekt der Klasse MonatListe mit dem Namen...
  285.  
  286.     Kategorie Klettern;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  287.     Kategorie Essen;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  288.     Kategorie Trinken;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  289.     Kategorie Auto;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  290.     Kategorie Freundin;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  291.     Kategorie Kaffee;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  292.     Kategorie Studium;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  293.     Kategorie Haustier;//Erstelle das Objekt der Klasse KategorieListe mit dem Namen...
  294.  
  295.  
  296.  
  297.     void KategorieChooser(string Kat, Rechnung *obj,int betr)//Entscheidet zu welcher Kategorie die Rechnung hinzuzufuegen ist und wohin der betrag summiert wird
  298.     {
  299.         if(Kat=="Klettern")
  300.         {
  301.          //   Klettern.hinzufuegen(*obj);
  302.             Klettern.Summation(betr);
  303.         }
  304.         else if(Kat=="Essen")
  305.         {
  306.            // Essen.hinzufuegen(*obj);
  307.             Essen.Summation(betr);
  308.         }
  309.         else if(Kat=="Trinken")
  310.         {
  311.            // Trinken.hinzufuegen(*obj);
  312.             Trinken.Summation(betr);
  313.         }
  314.         else if(Kat=="Auto")
  315.         {
  316.           //  Auto.hinzufuegen(*obj);
  317.             Auto.Summation(betr);
  318.         }
  319.         else if(Kat=="Freundin")
  320.         {
  321.            // Freundin.hinzufuegen(*obj);
  322.             Freundin.Summation(betr);
  323.         }
  324.         else if(Kat=="Kaffee")
  325.         {
  326.           //  Kaffee.hinzufuegen(*obj);
  327.             Kaffee.Summation(betr);
  328.         }
  329.         else if(Kat=="Studium")
  330.         {
  331.            // Studium.hinzufuegen(*obj);
  332.             Studium.Summation(betr);
  333.         }
  334.         else if(Kat=="Haustier")
  335.         {
  336.            // Haustier.hinzufuegen(*obj);
  337.             Studium.Summation(betr);
  338.         }
  339.     }
  340.  
  341.  
  342. int Auswahl() //Liefert mir die momentane Moeglichkeit zuruck
  343. {
  344.     int Moeglichkeiten;
  345.  
  346.     cout<<"Was moechten sie tun?"<<endl;
  347.     cout<<"[1] Rechnung anlegen"<<endl;
  348.     cout<<"[2] Alle Ausgaben, sortiert nach Monat ausgeben"<<endl;
  349.     cout<<"[3] Summe der Ausgaben pro Kategorie ausgeben"<<endl;
  350.     cout<<"[4] Rechnung loeschen"<<endl;
  351.     cout<<"[5] Programmende"<<endl;
  352.     cin >>Moeglichkeiten;
  353.     system("cls");
  354.     string kat;//Kategorie
  355.     int reNr; //rechnungsnr
  356.     int be; //betrag
  357.  
  358.     switch(Moeglichkeiten)
  359.     {
  360.         case 1: //Rechnung anlegen
  361.  
  362.         int Monat;
  363.         cout<<"Fuer welchen Monat soll die Rechnung erfasst werden?"<<endl;
  364.         cout<<"[1]  Januar"<<endl;
  365.         cout<<"[2]  Februar"<<endl;
  366.         cout<<"[3]  Maerz"<<endl;
  367.         cout<<"[4]  April"<<endl;
  368.         cout<<"[5]  Mai"<<endl;
  369.         cout<<"[6]  Juni"<<endl;
  370.         cout<<"[7]  Juli"<<endl;
  371.         cout<<"[8]  August"<<endl;
  372.         cout<<"[9]  September"<<endl;
  373.         cout<<"[10] Oktober"<<endl;
  374.         cout<<"[11] November"<<endl;
  375.         cout<<"[12] Dezember"<<endl;
  376.         cin>> Monat;
  377.  
  378.             switch(Monat)
  379.             {
  380.             case 1: //Januar Rechnung erstellen
  381.             {
  382.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  383.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  384.                 created_Rechnung->data_out();
  385.                 Januar.hinzufuegen(*created_Rechnung);
  386.                 KategorieChooser(kat,created_Rechnung,be);
  387.                 system("cls");
  388.                 Januar.Ausgabenchecker(be);
  389.                 delete(created_Rechnung);
  390.  
  391.             }
  392.             break;
  393.  
  394.             case 2: //Februar Rechnung erstellen
  395.                 {
  396.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  397.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  398.                 created_Rechnung->data_out();
  399.                 Februar.hinzufuegen(*created_Rechnung);
  400.                 KategorieChooser(kat,created_Rechnung,be);
  401.                 system("cls");
  402.                 Februar.Ausgabenchecker(be);
  403.                 delete(created_Rechnung);
  404.                 }
  405.             break;
  406.             case 3: //Maerz Rechnung erstellen
  407.                 {
  408.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  409.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  410.                 created_Rechnung->data_out();
  411.                 Maerz.hinzufuegen(*created_Rechnung);
  412.                 KategorieChooser(kat,created_Rechnung,be);
  413.                 system("cls");
  414.                 Maerz.Ausgabenchecker(be);
  415.                 delete(created_Rechnung);
  416.                 }
  417.             break;
  418.             case 4: //April Rechnung erstellen
  419.                 {
  420.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  421.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  422.                 created_Rechnung->data_out();
  423.                 April.hinzufuegen(*created_Rechnung);
  424.                 KategorieChooser(kat,created_Rechnung,be);
  425.                 system("cls");
  426.                 April.Ausgabenchecker(be);
  427.                 delete(created_Rechnung);
  428.                 }
  429.             break;
  430.             case 5: //Mai Rechnung erstellen
  431.                 {
  432.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  433.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  434.                 created_Rechnung->data_out();
  435.                 Mai.hinzufuegen(*created_Rechnung);
  436.                 KategorieChooser(kat,created_Rechnung,be);
  437.                 system("cls");
  438.                 Mai.Ausgabenchecker(be);
  439.                 delete(created_Rechnung);
  440.                 }
  441.             break;
  442.             case 6: //Juni Rechnung erstellen
  443.                 {
  444.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  445.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  446.                 created_Rechnung->data_out();
  447.                 Juni.hinzufuegen(*created_Rechnung);
  448.                 KategorieChooser(kat,created_Rechnung,be);
  449.                 system("cls");
  450.                 Juni.Ausgabenchecker(be);
  451.                 delete(created_Rechnung);
  452.                 }
  453.             break;
  454.             case 7: //Juli Rechnung erstellen
  455.                 {
  456.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  457.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  458.                 created_Rechnung->data_out();
  459.                 Juli.hinzufuegen(*created_Rechnung);
  460.                 KategorieChooser(kat,created_Rechnung,be);
  461.                 system("cls");
  462.                 Juli.Ausgabenchecker(be);
  463.                 delete(created_Rechnung);
  464.                 }
  465.             break;
  466.             case 8: //August Rechnung erstellen
  467.                 {
  468.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  469.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  470.                 created_Rechnung->data_out();
  471.                 August.hinzufuegen(*created_Rechnung);
  472.                 KategorieChooser(kat,created_Rechnung,be);
  473.                 system("cls");
  474.                 August.Ausgabenchecker(be);
  475.                 delete(created_Rechnung);
  476.                 }
  477.             break;
  478.             case 9: //September Rechnung erstellen
  479.                 {
  480.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  481.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  482.                 created_Rechnung->data_out();
  483.                 September.hinzufuegen(*created_Rechnung);
  484.                 KategorieChooser(kat,created_Rechnung,be);
  485.                 system("cls");
  486.                 September.Ausgabenchecker(be);
  487.                 delete(created_Rechnung);
  488.                 }
  489.             break;
  490.             case 10: //Oktober Rechnung erstellen
  491.                 {
  492.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  493.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  494.                 created_Rechnung->data_out();
  495.                 Oktober.hinzufuegen(*created_Rechnung);
  496.                 KategorieChooser(kat,created_Rechnung,be);
  497.                 system("cls");
  498.                 Oktober.Ausgabenchecker(be);
  499.                 delete(created_Rechnung);
  500.                 }
  501.             break;
  502.             case 11: //November Rechnung erstellen
  503.                 {
  504.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  505.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  506.                 created_Rechnung->data_out();
  507.                 November.hinzufuegen(*created_Rechnung);
  508.                 KategorieChooser(kat,created_Rechnung,be);
  509.                 system("cls");
  510.                 November.Ausgabenchecker(be);
  511.                 delete(created_Rechnung);
  512.                 }
  513.             break;
  514.             case 12: //Dezember Rechnung erstellen
  515.                 {
  516.                 rechnung_detail(&kat,&be, &reNr); //gehe mir mit diesen adressen in die funktion rechnungdetail und weise den adressen entsprechende werte zu
  517.                 Rechnung *created_Rechnung= new Rechnung(be,reNr,kat); //Die Rechnung wurde erstellt und kann nun in die Liste eingegliedert werden
  518.                 created_Rechnung->data_out();
  519.                 Dezember.hinzufuegen(*created_Rechnung);
  520.                 KategorieChooser(kat,created_Rechnung,be);
  521.                 system("cls");
  522.                 Dezember.Ausgabenchecker(be);
  523.                 delete(created_Rechnung);
  524.                 }
  525.             break;
  526.             default: //Falsche Auswahl
  527.                 cout<<"Falsche Auswahl"<<endl;
  528.                Auswahl();
  529.  
  530.             }
  531.         break;
  532.         case 2: //Alles Ausgaben nach Monat sortiert ausgeben
  533.             system("cls");
  534.             cout<<"Alles Ausgaben nach Monat ausgeben"<<endl;
  535.             cout<<"---Januar---"<<endl;
  536.             Januar.elementeAnzeigen();
  537.             cout<<"---Februar---"<<endl;
  538.             Februar.elementeAnzeigen();
  539.             cout<<"---Maerz---"<<endl;
  540.             Maerz.elementeAnzeigen();
  541.             cout<<"---April---"<<endl;
  542.             April.elementeAnzeigen();
  543.             cout<<"---Mai---"<<endl;
  544.             Mai.elementeAnzeigen();
  545.             cout<<"---Juni---"<<endl;
  546.             Juni.elementeAnzeigen();
  547.             cout<<"---Juli---"<<endl;
  548.             Juli.elementeAnzeigen();
  549.             cout<<"---August---"<<endl;
  550.             August.elementeAnzeigen();
  551.            cout<<"---September---"<<endl;
  552.             September.elementeAnzeigen();
  553.             cout<<"---Oktober---"<<endl;
  554.             Oktober.elementeAnzeigen();
  555.              cout<<"---November---"<<endl;
  556.             November.elementeAnzeigen();
  557.             cout<<"---Dezember---"<<endl;
  558.             Dezember.elementeAnzeigen();
  559.  
  560.  
  561.  
  562.         break;
  563.  
  564.         case 3: //Summe der Ausgaben pro Kategorie ausgeben
  565.             system("cls");
  566.             cout<<"Summe der Ausgaben pro Kategorie ausgeben"<<endl;
  567.             cout<<"---Klettern---"<<endl;
  568.          //   Klettern.elementeAnzeigen();
  569.            cout<<"Klettersumme: "<<Klettern.get_sum()<<endl;
  570.             cout<<"---Essen---"<<endl;
  571.           //  Essen.elementeAnzeigen();
  572.           cout<<"Essensumme: "<<Essen.get_sum()<<endl;
  573.             cout<<"---Trinken---"<<endl;
  574.          //   Trinken.elementeAnzeigen();
  575.          cout<<"Trinken: "<<Trinken.get_sum()<<endl;
  576.             cout<<"---Auto---"<<endl;
  577.          //   Auto.elementeAnzeigen();
  578.          cout<<"Auto: "<<Auto.get_sum()<<endl;
  579.             cout<<"---Freundin---"<<endl;
  580.         //    Freundin.elementeAnzeigen();
  581.         cout<<"Freundin: "<<Freundin.get_sum()<<endl;
  582.             cout<<"---Kaffee---"<<endl;
  583.        //     Kaffee.elementeAnzeigen();
  584.        cout<<"Kaffee: "<<Kaffee.get_sum()<<endl;
  585.             cout<<"---Studium---"<<endl;
  586.         //    Studium.elementeAnzeigen();
  587.         cout<<"Studium: "<<Studium.get_sum()<<endl;
  588.             cout<<"---Haustier---"<<endl;
  589.     //        Haustier.elementeAnzeigen();
  590.     cout<<"Haustier: "<<Haustier.get_sum()<<endl;
  591.  
  592.  
  593.  
  594.         break;
  595.  
  596.         case 4: //Rechnung loeschen
  597.             system("cls");
  598.             cout<<"Rechnung loeschen"<<endl;
  599.             int delete_Rechnung;
  600.             cout<<"Welche Rechnung soll geloescht werden?"<<endl;
  601.             cout<<"[1] Januar"<<endl;
  602.             cout<<"[2] Februar"<<endl;
  603.             cout<<"[3] Maerz"<<endl;
  604.             cout<<"[4] April"<<endl;
  605.             cout<<"[5] Mai"<<endl;
  606.             cout<<"[6] Juni"<<endl;
  607.             cout<<"[7] Juli"<<endl;
  608.             cout<<"[8] August"<<endl;
  609.             cout<<"[9] September"<<endl;
  610.             cout<<"[10] Oktober"<<endl;
  611.             cout<<"[11] November"<<endl;
  612.             cout<<"[12] Dezember"<<endl;
  613.             cin>>delete_Rechnung;
  614.                 switch(delete_Rechnung)
  615.                 {
  616.                     case 1:
  617.                     {
  618.                     Januar.loeschen();
  619.                     break;
  620.                     }
  621.                     case 2:
  622.                     {
  623.                     Februar.loeschen();
  624.                     break;
  625.                     }
  626.                     case 3:
  627.                     {
  628.                     Maerz.loeschen();
  629.                     break;
  630.                     }
  631.                     case 4:
  632.                     {
  633.                     April.loeschen();
  634.                     break;
  635.                     }
  636.                     case 5:
  637.                     {
  638.                     Mai.loeschen();
  639.                     break;
  640.                     }
  641.                     case 6:
  642.                     {
  643.                     Juni.loeschen();
  644.                     break;
  645.                     }
  646.                     case 7:
  647.                     {
  648.                     Juli.loeschen();
  649.                     break;
  650.                     }
  651.                     case 8:
  652.                     {
  653.                     August.loeschen();
  654.                     break;
  655.                     }
  656.                     case 9:
  657.                     {
  658.                     September.loeschen();
  659.                     break;
  660.                     }
  661.                     case 10:
  662.                     {
  663.                     Oktober.loeschen();
  664.                     break;
  665.                     }
  666.                     case 11:
  667.                     {
  668.                     November.loeschen();
  669.                     break;
  670.                     }
  671.                     case 12:
  672.                     {
  673.                     Dezember.loeschen();
  674.                     break;
  675.                     }
  676.                     default:
  677.                     cout<<"Falsche Auswahl"<<endl;
  678.                     Auswahl();
  679.  
  680.                 }
  681.  
  682.         break;
  683.  
  684.         case 5:
  685.             cout<<"Programmende"<<endl;
  686.  
  687.         break;
  688.  
  689.         default: //Falsche Auswahl
  690.             cout<<"Falsche Auswahl"<<endl;
  691.             Auswahl();
  692.  
  693.  
  694.  
  695.     }
  696.     return Moeglichkeiten;
  697. }
  698.  
  699. int main()
  700. {
  701.  int programstate;
  702.  
  703.  
  704. do{
  705.    programstate=Auswahl();
  706.  
  707. }
  708. while(programstate!=5);
  709.  
  710.  
  711.  
  712. return 0;
  713.  
  714. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement