lancelen

 avatar
unknown
plain_text
10 months ago
1.5 kB
12
Indexable
#include <iostream>
#include <queue>
#include <string>

using namespace std;

int main() {
    queue<string> q;
    int choice;
    string input;

    while (true) {
        cout << "\nChoose an operation:\n";
        cout << "1. Enqueue\n";
        cout << "2. Dequeue\n";
        cout << "3. Display front element\n";
        cout << "4. Exit\n";
        cout << "Enter your choice: ";
        cin >> choice;
        cin.ignore();  // clear newline from input buffer after reading choice

        switch (choice) {
            case 1:
                cout << "Enter a string to enqueue: ";
                getline(cin, input);  // read entire line, including spaces
                q.push(input);
                cout << "'" << input << "' enqueued.\n";
                break;

            case 2:
                if (q.empty()) {
                    cout << "Queue is empty, cannot dequeue.\n";
                } else {
                    cout << "Dequeued: " << q.front() << endl;
                    q.pop();
                }
                break;

            case 3:
                if (q.empty()) {
                    cout << "Queue is empty.\n";
                } else {
                    cout << "Front element: " << q.front() << endl;
                }
                break;

            case 4:
                cout << "Exiting program.\n";
                return 0;

            default:
                cout << "Invalid choice. Please try again.\n";
        }
    }
}
Editor is loading...
Leave a Comment