Mastering C++: A Step-by-Step Guide to Sorting Words in Dictionary Order

Prerequisites

Before diving into this example, make sure you have a solid grasp of essential C++ topics, including:

  • Arrays
  • Multidimensional arrays
  • Strings
  • For loops

If you’re new to these concepts, take a moment to review them to ensure a smooth learning experience.

The Challenge: Sorting Words in Lexicographical Order

Imagine having to sort 10 words entered by a user in dictionary order. Sounds daunting? Fear not! With the power of C++ and the trusty bubble sort algorithm, we’ll break down this challenge into manageable pieces.

Step 1: Creating an Array of Strings

To begin, we create an array of string objects, str[10], to store the 10 words entered by the user. This array will serve as the foundation for our sorting process.

string str[10];

Step 2: Storing User Input

Next, we prompt the user to enter 10 words, which are then stored in our str[10] array.

for (int i = 0; i < 10; i++) {
  cout << "Enter word " << (i + 1) << ": ";
  cin >> str[i];
}

Step 3: Sorting with Bubble Sort

Now, it’s time to put the bubble sort algorithm to work. We’ll use this efficient sorting technique to arrange the words in lexicographical order.

bool swapped;
do {
  swapped = false;
  for (int i = 0; i < 9; i++) {
    if (str[i] > str[i + 1]) {
      string temp = str[i];
      str[i] = str[i + 1];
      str[i + 1] = temp;
      swapped = true;
    }
  }
} while (swapped);

The Final Result: Displaying the Sorted Words

After sorting the array, we display the words in dictionary order on the screen.

cout << "Sorted words in dictionary order:" << endl;
for (int i = 0; i < 10; i++) {
  cout << str[i] << endl;
}

The end result? A beautifully sorted list of 10 words, thanks to the power of C++ and bubble sort!

Happy coding!

Leave a Reply