bei Eingabe von 0 zur Auswahl zurück wie mache ich das??



  • Hallo
    Ich hab schon wieder eine Frage. Ich habe ein Switch in meinem Programm angwand und ich will nun wenn man sich in einem case befindet z.b 0 drücken kann um dann wieder zur Auswahl zu gelangen. Ich hofffe ihr versteht was ich meine. Vielleicht könnt ihr mir helfen. Wäre euch sehr dankbar.

    //------- Hauptprogramm --------------------Hauptprogramm-----------------------
    
    int main()
    {
    double menge;
    double km;
    double netto;
    double gewicht;
    double bgewicht;
    double fracht;
    double gesamtumsatz;
    double rabatt;
    double zielpreis;
    int auswahl;
    
    string linie( 50, '-');
            cout<<"Bitte waehlen Sie aus folgenden Punkten\n";
            cout<<"1. Abrechnungsberechnung\n";
            cout<<"2. Daten pflegen\n";
            cout<<"0. Beenden\n\n";
            cout<<"Eingabe : "; cin>>auswahl;
            cout<<"\n";
            cout << linie << endl;
            cout << "\n";
    
            switch (auswahl)
            {
     case 1:
    {
    
            cout<<"\t ++++++++++++++++++++++++++++++\n";
            cout<<"\t +                            +\n";
            cout<<"\t +      Auftragsberechnung    +\n";
            cout<<"\t +                            +\n";
            cout<<"\t ++++++++++++++++++++++++++++++\n\n\n";
    
       do
       {
    
            cout<<"Mit Eingabe 0 Stk wird das Programm beendet!!\n\n";
            // Eingabe Auftragsmeneg
            cout<<"Bitte Auftragmenge eingeben:  ";
            cin>>menge; cout<<"\n";
    
            // Anweisung bei Eingabe 0 Stk wird Programm beendet
            if (menge==0)
            {
            return ;
            }
    
            //Eingabe Distanz zum Kunden in km
            cout<<"Bitte Distanz (in km) eingeben:  ";
            cin>>km; cout<<"\n";
    
            // Aufruf der Funktionen
            nettoumsatz(&menge, &netto);
            Fgewicht(&menge, &gewicht);
            berechnetes_gewicht(&gewicht,&bgewicht);
            fracht_funktion(&bgewicht,&km,&fracht);
            gesamt_umsatz(&fracht,&netto,&gesamtumsatz);
            rabatt_funktion(&netto,&rabatt);
            zielpreis_funktion(&rabatt,&gesamtumsatz,&zielpreis);
    
            // Ausgabe der errechneten Werte
            printf("Anzahl der Kartons:                 %10.0f Stk\n",menge);
            printf("Kilometer:                          %10.0f Km\n",km);
            printf("Gewicht:                            %10.0f Kg\n",gewicht);
            printf("Berechnetes Gewicht:                %10.0f Kg\n",bgewicht);
            printf("Fracht:                             %10.2f EUR\n",fracht);
            printf("Nettoumsatz (Umsatz ohne Fracht):   %10.2f EUR\n",netto);
            printf("Gesamtumsatz (Umsatz mit Fracht):   %10.2f EUR\n",gesamtumsatz);
            printf("Rabatt:                             %10.2f EUR\n",rabatt);
            printf("Zielpreis:                          %10.2f EUR\n\n",zielpreis);
        }
        while(menge!=0);
    
    }
    break;
    
    case 2:
            cout<<"Daten pflegen\n\n";
            cout << linie << endl;
    break;
    
    case 0:
    
     cout<<"Aufwiedersehen\n\n";
    
    break;
    
    default:
            cout<<"Falsche Eingabe!!\n\n";
            cout << linie << endl;
    }
    


  • Mit einer Schleife?

    -junix



  • Ich wollte es mit der if Anweisung machen wenn ich hier ja return 0 eingeben wird das programm mit Eingabe von 0 Stk beendet. Es soll aber nicht beendet werden so zurück zum Auswahlmenü.

    if (menge==0) 
            { 
            return 0; 
            }
    

Anmelden zum Antworten