So I declare an int variable called listOfItems that can accept input from the user.
Now that variable can be a big number but if the user decides to stop adding items into the vector(using the 'string value' var) he/she can easily stop by just typing 'end' into the program.

```
  // DECLARE INT listOfItems and shoppingList vector
  int listOfItems = 0;
  vector<string> shoppingList;
  cout << "Please enter the number of items you wish to purchase: " << endl;
  cout << "type end to finish program " << endl;

  cin >> listOfItems;
  /// SECOND VERSION AFTER READING SOME COMMENTS
  string value;
  do {
    cin >> value;
    shoppingList.push_back(value);  // add new value to vector
  } while(value != "end" && value != "END");

/// MAIN VERSION
for (int i = 0; i < listOfItems; i++) {
    string value;
    cin >> value;
    do {
      shoppingList.push_back(value);  // add new value to vector
    } while(value != "end" && value != "END");
  }

```

In the block above, I just create a for-loop that will run as many times as specified in the listOfItems submitted by the user. Inside said for-loop, I added a do while, that should add items into the vector as long as the string has not met the 'end' or 'END' keyword.

It is not working. Does anyone have any idea on fixing this?