Я хотел бы проверить массив для определенного диапазона значений.т. е. диапазон значений составляет от 0 до> 9, а фактический массив состоит из 50 элементов.
Я также хочу отслеживать, сколько существует каждого значения.то есть, если есть 3 нуля, 8 единиц и 5 двойок, то мой конечный вектор должен выглядеть следующим образом: 3 8 5.
Я смог решить его с помощью кода ниже, НО, я понял, что мои значения диапазонадолжен быть равен размеру моего массива, иначе он не проверяет все элементы.
Есть ли лучший способ сделать это?
int main() {
int intensityRange = 10;
int cloudSize = 10;
int cloud [] = {0, 3, 3, 2, 1, 5, 2, 3, 5, 2};
vector <int> totalGreyValues;
int k = 0;
for (int i = 0; i < intensityRange; i++) {
for (int j = 0; j < cloudSize; j++) {
if (cloud[j] == i) {
k = k + 1;
cout << " " << k;
}
else
cout << " no match ";
}
totalGreyValues.push_back (k);
k = 0;
}
cout << endl << endl << totalGreyValues.size();
for (int h = 0; h < totalGreyValues.size(); h ++)
cout << " " << totalGreyValues[h];
// values --> 0 1 2 3 4 5 6 7 8 9
// answer --> 1 1 3 3 0 2 0 0 0 0
return 0;
}