Question
Need help writing this code fragment in C++ for question below: Now, starting with the input range [begin(distances), end(distances), write a for loop that iterates
Need help writing this code fragment in C++ for question below:
Now, starting with the input range [begin(distances), end(distances), write a for loop that iterates through all elements (explicitly) updating index and smallest_distance when a distance is found that is smaller than the smallest_distance variable's value. Some help for this:
- You can write the initialization condition of the for loop as: auto i=begin(distances), iEnd=end(distances); This is not unlike writing for (int i=1, j=2; etc.).
- The for loop will only execute while i and iEnd are not equal.
- The increment portion is ++i;
- To access the distance value pointed to by i write *i (remember iterators are based on pointer syntax).
- You can compute the current index from i by subtracting i from begin(distances), i.e., index = i - begin(distances);. This works because i is an random-access iterator (as are all iterators for vectors, arrays, and strings.)
The last step is to output the name of the closest matching colour if it was found, i.e.,
cout << colour_names[index] << ' ';
But it is possible that index is invalid, so remember to write an if statement to check whether or not index is invalid first. If index is invalid, then do the following:
cout << "ERROR occurred. Aborting... ";
return 1;
Finally close the loop's brace and write the closing brace of main().
//////////////////////////////////////////////////////////////////////////Code Below/////////////////////////////////////////////////////////////////
#include
using namespace std; // place this after the #includes
int main() { array
array
for(rgb value{}; cin >> value;) { vector
begin(colours), end(colours), back_inserter(distances), [&value](auto const& colour) { return distance(colour, value); } size_t index = std::numeric_limits
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started