А выделение мин./макс. элементов массива цветом будет выглядеть так (как вариант):
Код:
#include <iostream>
#include <algorithm>
using namespace std;
#include "rang.hpp"
int main( int argc, char** argv ) {
int array[] = { 10, 9, 11, 8, 13, 6, 14, 4, 12, 2, 8 },
size = sizeof( array ) / sizeof( array[ 0 ] );
auto mm = minmax_element( array, array + size );
cout << "диапазон: '" << *mm.first << "' ... '" << *mm.second << "'" << endl;
for( auto ia = array; ia < array + size; ia++ )
if( ia == mm.first )
cout << rang::fg::red << *ia << rang::style::reset << ' ';
else if ( ia == mm.second )
cout << rang::fg::green << *ia << rang::style::reset << ' ';
else
cout << *ia << ' ';
cout << endl;
}
1. Это будет работать почти в
любой операционной системе: Windows, Linux, MacOS.
2. Это нужно компилировать с опцией совместимости со стандартом C++11, так для упрощения записан код. Но это легко переписать (вместо auto записать реальный тип итераторов) так, чтобы всё было корректно и в более ранних стандартах C++.