Имея три числовых значения - красные, зеленые и синие элементы цвета (восемь бит на канал, от 0 до 255) - ваша программа должна вывести имя данного цвета.
Например;
Input: 255, 0, 0
Output: Red
или же;
Input: 80, 0, 0
Output: Dark Red
Это конкурс популярности, поэтому любой ответ наберет наибольшее количество голосов к первому июля.
Ispired by: Показать входной цвет RGB
popularity-contest
unclemeat
источник
источник
Ответы:
питон
Это скрипт на Python, использующий результаты цветового опроса xkcd , в котором Рэндалл Манро задал тысячам людей один и тот же вопрос. Он пришел к следующему графику:
В опросе есть только данные о полностью насыщенных цветах (я думаю, что ненасыщенные цвета будут описаны как «сероватые»). Это означает, что мы должны сделать некоторые трюки, связанные с цветом, чтобы наш вход стал полностью насыщенным.
То, что я сделал здесь, это просто преобразовал входной цвет в HSV, увеличил насыщенность и назвал это днем. Это, вероятно, не очень правильно с точки зрения восприятия цвета, но здесь это работает достаточно хорошо - и достаточно просто, что вам нужна только стандартная библиотека. Батареи включены действительно.
Скрипт ожидает, что satfaces.txt отсюда ( зеркало ) будет в текущем каталоге.
Пример запускается:
А вот и цвета:
Я бы сказал, что это довольно близко.
источник
Обновление с GUI!
Я беру список цветов с этой страницы Википедии (и связанных страниц).
Я также включил немного NLG для получения результатов, таких как «Болгарская роза с немного меньшим количеством зеленого и синего» и некоторые ее варианты. Попробуйте подыграть, чтобы узнать, сможете ли вы угадать истинную «болгарскую розу», используя эти отзывы. :)
Алгоритм будет пытаться найти цвет, который ближе всего к входу, как это определено евклидовым расстоянием. Таким образом, вы можете ввести любой номер триплета, и он даст цвет, который ближе всего к этому триплету.
(код принимает значения, разделенные запятыми, пробелами или запятыми)
Предупреждение
Этот код подключается к Википедии, поэтому для первого запуска требуется подключение к Интернету (и запись информации в файл в том же словаре). Последующие времена, тем не менее, он будет читать из файла. Если вы хотите автономную версию, код доступен по этой ссылке Ideone (с примером запуска).
Код:
источник
slightly more
чтобыwith a hint of
иslightly less
вsubdued
.JavaScript
Следующая функция написана с учетом собачьих пользователей:
Для более изысканных собак:
источник
else whimper();
- люблю этоJavascript
источник
Mathematica
Обновление: добавлен параметр для установки количества ближайших цветов для отображения. По умолчанию используется 5 цветов.
Учитывая значения RGB безымянного цвета, следующее находит
n
ближайшие цвета из списка из 140 имен цветов HTML. Затем он отображает безымянный цвет и его 5 ближайших соседей в трехмерном пространстве с осями для красного, зеленого и синего цветов. В метке графика он называет ближайший цвет и предоставляет значения RGB.Примеры
Покажите 5 ближайших цветов:
Покажите 15 ближайших цветов:
источник
CJam
Это получает список цветов из xkcd и находит ближайший.
Примечание. Космическая строка в середине - это фактически одна вкладка.
Чтобы запустить его, пожалуйста, используйте переводчик с http://sf.net/p/cjam
Пример:
Вход-
147 125 0
выход
baby poop
источник
р
R имеет встроенный список из 657 названий цветов для построения графиков. Следующий код принимает ввод от пользователя, вычисляет расстояние между этим входным значением rgb и значением rgb этих 657 цветов и выводит имя ближайшего.
Ungolfed:
Примеры:
Изменить: та же идея, но с использованием списка имен из colorHexa :
Пример:
источник
readline
не читать следующую строку кода, как если бы это был стандартный ввод в интерактивном режиме. Я использовал слово «ungolfed», чтобы сказать «отступ, с разрывами строки и комментариями». Если бы я действительно играл в гольф, я бы не использовалcolor_list
имя переменной.Perl
Ожидается
http://xkcd.com/color/rgb.txt
в текущем каталоге. Отображает пять ближайших цветов с хорошим процентом.Пример запуска
Код
источник
Scala
Моя попытка - убийственная особенность в том, что она не требует подключения к Интернету! (Надеюсь, это не слишком долго: D) Кроме того, я вызвал Chtulhu при подготовке базы данных цветов (потому что я проанализировал подмножество HTML с помощью регулярного выражения; регулярное выражение и ссылка на источник есть в комментариях)
Изменить: улучшенная точность
Пример запуска: http://ideone.com/e3n0dG
источник
Ну, так как у меня это лежало , вот в Objective-C:
источник
Pharo Smalltalk
Поместите это в рабочее пространство Pharo и распечатайте .
Результаты имеют смешанное качество. Все более темные цвета называются серыми , темно-серыми или очень темно-серыми . Вероятно
Color
,diff:
метод мог бы быть лучше.Для очень простой визуализации сделайте :
источник
Макрос SAS, основанный на (довольно странных) именах цветов SAS V8, как описано здесь: https://v8doc.sas.com/sashtml/gref/zgscheme.htm#zrs-hues
Пример ввода:
Образец вывода:
РЕДАКТИРОВАТЬ: Обновлено с гораздо более компактной версией.
Версия XKCD - откровенная подтасовка верхнего ответа, но это симпатичная небольшая демонстрация движка URL файла и не требует ручной подготовки CSV:
источник
Решение AC # с Linq и KnownColors из .NET
источник
Tcl
Это ссылки цвета X11 от
rgb.txt
. В моем Ubuntu он есть,/etc/X11/rgb.txt
хотя я знаю, что в некоторых системах он есть/usr/lib/X11/rgb.txt
. Googlergb.txt
и загрузите его, если вы не используете X11.Передайте код цвета в качестве аргумента командной строки.
источник
Python 2.6
С пользовательским интерфейсом:
Запутано (8 397 байт):
Не запутано (6898 байт):
Без интерфейса:
Запутано (6 543 байта):
Не запутано (5050 байт):
источник
Javascript
https://jsfiddle.net/SuperJedi224/goxyhm7a/
Некоторые примеры результатов [по состоянию на 31 июля] (перечисленные цвета по порядку: тот, который он определяет как самый близкий, и тот, который он определяет как второй самый близкий; за исключением случаев, когда дается только один, и в этом случае он был определен как точное совпадение):
Яркий темно-синий / стальной синий
Бронза / Желто-коричневый Желто-оранжевый
Топаз / Груша
Слизь зеленый / оливковый
Виридиан / Изумруд
источник
VB.net
источник