Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 22.03.2017, 16:42   #1 (permalink)
Ариа
Новичок
 
Регистрация: 22.03.2017
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию В массиве выделить число каким-нибудь цветом - C++

Выделить минимальное и максимальное значение в массиве каким-нибудь цветом отличающимся от остальных элементов массива.Вывести массив на экран. Подскажите пожалуйста!!!
setlocale(LC_ALL, "rus");
const int n = 20,i=0;
int A[n],max=A[0],min=A[0];
for (int i = 0; i < n; i++)
{
(A[i] = rand() % 10);

}
for (int i = 0; i < n; i++)
if (min>A[i])
min = A[i];
if (max<A[i])
max = A[i];
SetColor(min, max);
SetColor(15, 0);
for (int i = 0; i < n; i++)
cout << A[i];
Ариа вне форума   Ответить с цитированием

Старый 22.03.2017, 16:42
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Подскажу вам, что проблема может быть решена в похожих темах

Выделить контур на изображение в C#
Можно ли каким-нибудь способом включить отрисовку Open GL в "стандартном" НЕТБУКЕ?
Каким кулером или каким способом можно охладить ЦП AMD FX X8 8150
как выделить?

Старый 08.01.2018, 16:24   #2 (permalink)
alex_kireev
Новичок
 
Регистрация: 07.01.2018
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Хоть я и не от мира сего, но позвольте ВАМ помочь.
Так как форум блокирует мой ссылки на сайты вот текстовый документ с ссылками на сайты.
P.S. Возможно уже поздно.
Вложения
Тип файла: txt Смена цвета.txt (144 байт, 577 просмотров)
alex_kireev вне форума   Ответить с цитированием
Старый 14.01.2018, 19:06   #3 (permalink)
Olej
Member
 
Аватар для Olej
 
Регистрация: 10.01.2018
Сообщений: 38
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от alex_kireev Посмотреть сообщение
Так как форум блокирует мой ссылки на сайты вот текстовый документ с ссылками на сайты.
Правильно блокирует, потому что там описывается откровенная херня пЫанЭрского, привязанная только и исключительно к консоли какой-нибудь выньды ... что где-то будет работать, а где-то не станет даже компилироваться.

А если нужно выделение цветом, то используйте, например, такой открытый проект как rang.
P.S. Этот дурацкий форум не позволяет показать URL, но вы легко найдёте проект rang на GitHiub по имени.
Olej вне форума   Ответить с цитированием
Старый 14.01.2018, 19:53   #4 (permalink)
Olej
Member
 
Аватар для Olej
 
Регистрация: 10.01.2018
Сообщений: 38
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

А выделение мин./макс. элементов массива цветом будет выглядеть так (как вариант):
Код:
#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++.
Olej вне форума   Ответить с цитированием
Старый 14.01.2018, 20:00   #5 (permalink)
Olej
Member
 
Аватар для Olej
 
Регистрация: 10.01.2018
Сообщений: 38
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Цитата:
Сообщение от Olej Посмотреть сообщение
Это будет работать почти в любой операционной системе: Windows, Linux, MacOS.
Выглядит это как-то так...
Миниатюры
minmax.png  
Olej вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 23:37.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.