"dos menü"



  • hallo

    ich will für mein program ein menü mahcen in dem man paar sachen auswählen kann und zwar dann auch mit untermenü und genau da weiss ich net wie ich des machen muss mein code schaut so bis jetzt aus:

    #include <iostream.h>
    
    //Prototypen
    
    int H_menu();
    int Count_menu();
    int Stop_menu();
    
    int main()
    {
    
    	int choice = H_menu();    //hauptmenü auswahl
    	int choice1 = Count_menu();
    	switch(choice)
    	{
    	case 1: Count_menu();
    			break;
    	case 2: Stop_menu();
    		break;
    	case 3: cout << "Auf wiedersehen!\n";
    		break;
    	}
    
    return 0;
    }
    
    //Funktionen
    
    int H_menu()
    {
    	int choice;
    	cout << "\n***** Hauptmenue *****\n";
    	cout << "(1) Countdown\n";
    	cout << "(2) Stoppuhr\n";
    	cout << "(3) Beenden\n";
    	cout << " : ";
    	cin >> choice;
    		return choice;
    }
    
    int Count_menu()
    {
    	int choice1;
    	cout << "***** Countdown *****\n";
    	cout << "(1) Default\n";
    	cout << "(2) Optionen\n";
    	cout << "(3) Beenden\n";
    	cout << " : ";
    	cin >> choice1;
    		return choice1;
    }
    
    int Stop_menu()
    {
    	int choice2;
    
    	cout << "***** Stopuhr *****\n";
    	cout << "(1) Default\n";
    	cout << "(2) Beenden\n";
    	cout << " : ";
    	cin >> choice2;
    	return choice2;
    }
    

    wie muss ich des schreiben dass ich in die untermenüs komme und zwar so dass das "Hauptmenü" nicht wiederholt wird denn so hät ich es schon geschafft aber des will ich nicht.

    hoffe mir kann einer helfen wenn mein problem zu unklar ist sagt es dann versuch ich es ausfürhlicher zu erklären



  • Alles wichtige wie bereits erklärt
    Hier meine kleine Demo des prinzips:

    #include <iostream>
    
    using namespace std;
    
    void menue();
    int showmain();
    int showsub1();
    int showsub1sub1();
    void wait();
    
    int main()
    {
    
     menue();
    
    return 0;
    }
    
    void menue()
    {
     int kennziffer = 0;
     int exit =0;
    
    while(!exit)
    {
     switch (kennziffer)
     {
            case 0:
                 kennziffer = showmain();
                 break;
            case 100:
                 kennziffer = showsub1();
                 break;
    
                 //...
    
            case 110:
                 kennziffer = showsub1sub1();
                 break;
    
                 //...
    case 666:
         exit = 1;
         break;
    
     }
    }
    }
    
    int showmain()
    {
     int inp;
     cout << "MAIN:" << endl << "(1)Sub1" << endl << "(0)exit" << endl;
     cin >> inp;
     if (inp == 1)
        return 100;
     else return 666;
    }
    
    int showsub1()
    {
     int inp;
     cout << "SUB1:" << endl << "(1)Sub11" << endl << "(0)zurück" << endl;
     cin >> inp;
     if (inp == 1)
        return 110;
     else return 0;
    }
    
    int showsub1sub1()
    {
     int inp;
     cout << "SUB1SUB1:" << endl << "(0)zurück" << endl;
     cin >> inp;
     if (inp == 1)
        return 100;
     else return 100;
    }
    

    PS: keine kommentare zum stil, das war nur eben schnell ausm ärmel geschüttelt :p 😃


Anmelden zum Antworten