// // do while example of a menu and its sub menu // // #include #include #define EXIT 5 #define OPTION_1 1 #define OPTION_2 2 #define OPTION_3 3 #define OPTION_4 4 #define OPTION_5 5 main() { int choice=0; int ichoice = 0; do { cout << "\tMAIN MENU\n"; cout << "\t*********\n\n"; cout << "\t1. Generate Data\n"; cout << "\t2. Process Data\n"; cout << "\t3. Display Data\n"; cout << "\t4. Miscellaneous\n"; cout << "\t5. Exit Program\n"; cout << "\n\nEnter Choice: "; cin >> choice; switch( choice ) { case OPTION_1: do { cout << "\tGENERATE DATA\n"; cout << "\t*************\n"; cout << "1. Generate Sinewave\n"; cout << "2. Generate Cosine\n"; cout << "3. Generate Noise\n"; cout << "4. Generate Pulse Train\n"; cout << "5. Return to Main Menu\n\n"; cout << "Enter choice: "; cin >> ichoice; switch( ichoice ) { case 1: cout << "Generating Sinewave...\n"; cout << "Press any key to continue...\n"; getch(); break; case 2: cout << "Generating Cosine...\n"; cout << "Press any key to continue...\n"; getch(); break; case 3: cout << "Generating Noise...\n"; cout << "Press any key to continue...\n"; getch(); break; case 4: cout << "Generating Pulse Train...\n"; cout << "Press any key to continue...\n"; getch(); break; case 5: break; default: cout << "*** Invalid Sub Menu Selection ***\n"; cout << "Press any key to continue...\n"; getch(); break; } } while ( ichoice !=5 ); break; case OPTION_2: cout << "Processing Data ...\n"; cout << "Press any key to continue...\n"; getch(); break; case OPTION_3: cout << "Displaying Data...\n"; cout << "Press any key to continue...\n"; getch(); break; case OPTION_4: cout << "Miscellaneous...\n"; cout << "Press any key to continue...\n"; getch(); break; case OPTION_5: cout << "Normal Termination of Program!\n"; cout << "Press any key to continue...\n"; getch(); break; default: cout << "*** INVALID OPTION ***\n"; cout << "Press any key to continue...\n"; getch(); break; } } while ( choice != EXIT ); return 0; }