Если у вас есть 3 простых массива по 8 элементов в каждом, этого должно быть достаточно:
#include <algorithm>
#include <iostream>
using range_type = double; // change to the type you are using
int main() {
range_type sonarRange[8];
range_type sonarRange2[8];
range_type sonarRange3[8];
// fill sonarRanges
// find and store the minimum at each index
range_type result[8];
for(size_t i = 0; i < 8; ++i) {
result[i] = std::min({sonarRange[i], sonarRange2[i], sonarRange3[i]});
}
}
Если ваш компилятор не принимает эту версию std::min
, вы можете добавить ее самостоятельно:
<initializer_list>
template<class T>
T my_min(std::initializer_list<T> ilist)
{
return *std::min_element(ilist.begin(), ilist.end());
}
А затем используйте my_min({sonarRange[i], sonarRange2[i], sonarRange3[i]})
вместо std::min
выше.