एक आरजीबी रंग ग्रिड उत्पन्न करें


47

इस! एक RGB रंग ग्रिड है ...

बेसिक RGB ग्रिड

मूल रूप से यह एक 2-आयामी मैट्रिक्स है जिसमें:

  • पहली पंक्ति, और पहला स्तंभ, लाल हैं।
  • दूसरी पंक्ति, और दूसरा स्तंभ, हरा है।
  • तीसरी पंक्ति, और तीसरा स्तंभ, नीला है।

आर, जी, और बी अक्षर का उपयोग करते हुए यहां रंगों को रेखांकन द्वारा वर्णित किया गया है।

पंक्ति और स्तंभ आरेख

यहां बताया गया है कि हम ग्रिड पर प्रत्येक स्थान के रंग की गणना कैसे करते हैं।

  • लाल + लाल = लाल (# FF0000)
  • हरा + हरा = हरा (# 00FF00)
  • नीला + नीला = नीला (# 0000FF)
  • लाल + हरा = पीला (# FFFF00)
  • लाल + नीला = बैंगनी (# FF00FF)
  • हरा + नीला = चैती (# 00FFFF)

चुनौती

  • RGB रंगीन ग्रिड बनाने के लिए कोड लिखें।
  • यह कोड गोल्फ है, इसलिए कम से कम बाइट्स में ऐसा करने का प्रयास करें।
  • अपनी ग्रिड उत्पन्न करने के लिए किसी भी प्रोग्रामिंग भाषा या मार्कअप भाषा का उपयोग करें।
  • जिन चीजों की मुझे परवाह है:
    • परिणाम को परिभाषित रंगों के साथ आरजीबी ग्रिड को रेखांकन करना चाहिए।
  • जिन चीजों की मुझे परवाह नहीं है:
    • यदि आउटपुट एक छवि, HTML, SVG या अन्य मार्कअप है।
    • रंग ब्लॉक का आकार या आकार।
    • ब्लॉकों के बीच या आसपास की सीमाएँ, रिक्ति आदि।
    • यह निश्चित रूप से आपको यह बताने के लिए लेबल नहीं होना चाहिए कि पंक्ति और स्तंभ रंग क्या होना चाहिए।

2
क्या हम अपनी भाषा के लिए मूल वस्तु का उत्पादन कर सकते हैं, उदाहरण के लिए BitmapC # में एक वस्तु?
अज्ञान

1
@EmbodimentofIgnorance मुझे ठीक लगता है।
AJFaraday

11
मैं Piet
manassehkatz

4
@manassehkatz क्या यह संभव है कि डेटा को हार्ड-कोडिंग करना बेहतर होगा कि इसे निष्पादित करने से बेहतर गोल्फ हो?
AJFaraday

3
ऐसा नहीं है कि यह वास्तव में मायने रखता है, लेकिन मैंने व्यक्तिगत तौर पर चैती और बैंगनी (या कुछ और) के बजाय सियान और मैजेन्टा का इस्तेमाल किया होगा । जहाँ तक मुझे पता है, ये CMYK जैसे रंग मॉडल को प्रिंट करने या घटाने में उपयोग किए जाने वाले आधिकारिक शब्द हैं ।
अरनौलड

जवाबों:


34

बैश, ४४

  • 2 बाइट्स ने @NahuelFouilleul को धन्यवाद दिया
  • 2 बाइट्स @manatwork की बदौलत बच गईं
printf "${f=^[[3%dm.}$f$f
" 1 3 5 3 2 6 5 6 4

यहां, ब्लॉक .वर्ण हैं। ^[एक शाब्दिक ASCII भागने चरित्र (0x1b) है।

यहाँ छवि विवरण दर्ज करें

आप इस स्क्रिप्ट को इस प्रकार बना सकते हैं:

base64 -d <<< cHJpbnRmICIke2Y9G1szJWRtLn0kZiRmCiIgMSAzIDUgMyAyIDYgNSA2IDQ= > rgbgrid.sh

11
क्या बिल्ली है? कृपया स्पष्ट करें :)
दोष

1
खोल विस्तार का उपयोग कर 2 बाइट्स बचा सकता हैprintf ${f=\\e[3%dm.}$f$f\\n 1 3 5 3 2 6 5 6 4
नाहुएल फॉइलुल

1
यह वास्तव में मेरे दिन को रोशन करता है, धन्यवाद!
एजेफराडे

4
printf \\e[3%dm. 1'फैलता है \\e[31m.जो लाल और इतने पर एएनएसआई से बचने के लिए कोड है और .प्रिंट करने के लिए चरित्र है।
फ्रेड्रिक पिहल

3
@ NahuelFouilleul के सुझाव के साथ आगे बढ़ते हुए, इसे डबल कोट करें: printf "${f=^[[3%dm.}$f$f␤" 1 3 5 3 2 6 5 6 4(जहाँ ^[शाब्दिक पलायन वर्ण = 1 बाइट और by शाब्दिक नई पंक्ति वर्ण = 1 बाइट) हो
manatwork

26

8088 विधानसभा, आईबीएम पीसी डॉस,  44  43 बाइट्स

लिस्टिंग:

BE 0122     MOV  SI, OFFSET CTBL    ; load color bar table into [SI]
        LOOP_COLOR: 
B9 0001     MOV  CX, 1              ; display 1 char and clear CH (changed by INT 10H:3)
AC          LODSB                   ; load next color byte 
8A D8       MOV  BL, AL             ; move new color to BL
3C 10       CMP  AL, 010H           ; if this is third color in row: SF=0, CF=0 
                                    ; else if last color: SF=1, CF=0
                                    ; else continue on same row: CF=1
B8 09DB     MOV  AX, 09DBH          ; AH=9 (write char with attr), AL=0DBH (a block char) 
CD 10       INT  10H                ; call PC BIOS, display color block
B4 03       MOV  AH, 3              ; get cursor position function
CD 10       INT  10H                ; call PC BIOS, get cursor
72 04       JC   NEXT_COL           ; if not last in row, move to next column 
78 09       JS   EXIT               ; if last color, exit 
B2 FF       MOV  DL, -1             ; otherwise move to first column and next row 
        NEXT_COL:
42          INC  DX                 ; move to next column (and/or row)
B4 02       MOV  AH, 2              ; set cursor position function 
CD 10       INT  10H                ; call PC BIOS, set cursor position
EB E2       JMP  LOOP_COLOR         ; loop to next color byte 
        EXIT:
C3          RET                     ; return to DOS
CTBL    DB  0CH, 0EH, 1DH, 0EH, 0AH, 1BH, 0DH, 0BH, 91H ; color table

यह INT 10Hस्क्रीन पर रंगीन ग्रिड लिखने के लिए IBM PC BIOS वीडियो सेवाओं का उपयोग करता है । दुर्भाग्य से एक विशिष्ट रंग विशेषता लिखने का एकमात्र तरीका कर्सर को अगले सही स्थान पर रखने के लिए कोड लिखना भी आवश्यक है, इसलिए इसके लिए बहुत अधिक कोड है।

यहां आईबीएम पीसी सीजीए (40x25 पाठ मोड में इसे बड़ा बनाने के लिए) पर चल रहा है।

यहाँ छवि विवरण दर्ज करें

डाउनलोड करें और DOS के लिए RGBGRID.COM का परीक्षण करें ।


1
क्या यह काम डॉस में होगा, लेकिन अगर यह किया तो शांत नहीं होगा।
मार्शल शिल्प

@marshalcraft हाँ, वास्तव में यह केवल DOS में काम करेगा, या DOS एमुलेटर जैसे DOSBox, pcjs.org आदि का उपयोग करके, मैंने निष्पादन योग्य डाउनलोड करने के लिए एक लिंक जोड़ा है ताकि आप इसे आज़मा सकें।
640KB

विंडोज़ सीमित डॉस इम्यूलेटर के साथ आता है, जिसे अब कमांड प्रॉम्प्ट कहा जाता है, जिसे मुझे शायद कहना चाहिए था, अगर यह cmd या पावरस्लेहा के साथ काम करता तो अच्छा होता।
मार्शल शिल्प

1
@marshalcraft आप सही हैं, हालाँकि जब से यह डॉस के लिए है यह एक 16-बिट निष्पादन योग्य है, और यदि आपके पास विंडोज़ का 32-बिट संस्करण है, तो यह वास्तव में चलना चाहिए क्योंकि इसमें 16-बिट रनटाइम वातावरण है। हालाँकि विंडोज का 64-बिट संस्करण इसे नहीं चलाएगा क्योंकि इसमें केवल 32-बिट रनटाइम है।
640KB

1
भगवान यह एक अच्छा जवाब है
Samy Bencherif


18

80386 मशीन कोड, आईबीएम पीसी डॉस, 38 बाइट्स

हेक्स:

B0 13 CD 10 68 00 A0 1F 66 C7 06 00 00 28 2C 24
00 66 C7 06 40 01 2C 30 34 00 66 C7 06 80 02 24
34 20 00 CD 16 C3

एएसएम:

mov al,13h
int 10h ; initialize vga 13h mode (320x200x256 colors)
push 0a000h
pop ds ; push video buffer address to ds
mov dword ptr ds:0, 242c28h ; print 3 pixels
mov dword ptr ds:320, 34302ch ; print 3 pixels
mov dword ptr ds:640, 203424h ; print 3 pixels
int 16h ; wait for any keypress
ret ; exit to os

dosbox से बढ़ाया उत्पादन:

यहाँ छवि विवरण दर्ज करें


ध्यान दें कि mov al, 13hयह गलत है जब तक कि यह DOSBox द्वारा ah = 0प्रोग्राम एंट्रीपॉइंट पर होने की गारंटी नहीं है ।
मार्गरेट ब्लूम

@MargaretBloom कुल्हाड़ी एमएस डॉस में कॉम एप्लिकेशन की शुरुआत में 0 है
इल्या बुर्सोव

धन्यवाद Iłya, यह जानना अच्छा है!
मार्गरेट ब्लूम

18

एक्सेल VBA (तत्काल विंडो), 80 बाइट्स

For i=1To 9:Cells(i Mod 3+1,(i+1)/3).Interior.ColorIndex=Mid(673486857,i,1):Next

एक्सेल VBA (फ़ंक्शन), 96 बाइट्स

Sub g()
For i=1To 9
Cells(i Mod 3+1,(i+1)/3).Interior.ColorIndex=Mid(673486857,i,1)
Next
End Sub

नौकरी के लिए एक भयानक उपकरण नहीं ... मैं इस तथ्य की सराहना करता हूं कि एक्सेल पहले से ही एक ग्रिड दिखाता है इसलिए यह पृष्ठभूमि का रंग स्थापित करने का मामला है।

एक्सेल कलर ग्रिड

43 बाइट की बचत के लिए अग्रणी का उपयोग ColorIndexकरने का सुझाव देने के लिए @Neil को क्रेडिट Color

-21 बाइट्स @Keeta को धन्यवाद

"तत्काल विंडो" का सुझाव देने के लिए @Chronocidal को -16 बाइट्स धन्यवाद

-2 बाइट्स @i_saw_drones को धन्यवाद

मेरे मूल सबमिशन से बहुत सारे बदलाव :)


1
आप शायद इसके साथ बेहतर कर सकते हैं ColorIndexक्योंकि यहाँ 3 से 8 तक की संख्या है, जिसे आप किसी स्ट्रिंग या किसी चीज़ में एनकोड कर सकते हैं।
नील

@ नील - वास्तव में :) मैं इसे इस्तेमाल करने में थोड़ा छोटा था। पारितोषिक के लिए धन्यवाद।
दाना

मैंने कुछ भी नहीं देखा जो आपको अधिक बचत के लिए इसे सब एफ () और एंड सब में बदलने से रोकता है।
कीता

1
इसे एक फ़ंक्शन न बनाएं, और 21 बाइट्स को छोड़ने के लिए इसे तत्काल विंडो में for i=1 To 3:for j=1 To 3:Cells(i,j).Interior.ColorIndex=Mid("367408005",i*j,1):next j,i
चलाएं

1
आप स्ट्रिंग से उद्धरण भी निकाल सकते हैं, VBA संख्या को स्वचालित रूप से स्ट्रिंग में ले जाएगा।
I_saw_drones

16

जीएफए बेसिक 2.02 (अटारी एसटी), 48 बाइट्स

एक .LST प्रारूप में मैन्युअल रूप से संपादित लिस्टिंग। कई गैर-मुद्रण योग्य वर्ण शामिल हैं, जिनके कोड को कोष्ठक के भीतर दिखाया गया है।

?"[ESC]c[SOH] [ESC]c[ETX] [ESC]c[ENQ] "[CR]
?"[ESC]c[ETX] [ESC]c[STX] [ESC]c[ACK] "[CR]
?"[ESC]c[ENQ] [ESC]c[ACK] [ESC]c[EOT] "[CR]

अटारी एसटी का ऑपरेटिंग सिस्टम विस्तारित वीटी 52 कमांड को परिभाषित करता है जो यहां उपयोग किए जाते हैं।

उत्पादन

24×248×8

उत्पादन

स्टीम एसएसई से स्क्रीनशॉट


मेरे भरोसेमंद पुराने एसटी के लिए मुझे सभी उदासीन बनाने के लिए +1।
वोसनेम

16

एसवीजी, 210 182 बाइट्स

<svg><path d="h3v3h-3" fill=#f0f/><path d="h2v2h-2" fill=#ff0/><path d="m1 1h2v2h-2" fill=#0ff/><line x2=1 stroke=red/><path d="m1 1h1v1h-1" fill=#0f0/><path d="m2 2h1v1" fill=#00f/>

चूंकि रंग ब्लॉक का आकार या आकार कोई मायने नहीं रखता है, इसलिए कुछ बाइट्स को इस थोड़े अजीब लेआउट के साथ बंद किया जा सकता है:

svg लेआउट


मुझे वास्तव में इस समाधान की सरलता पसंद है।
AJFaraday

16

HTML + CSS, 121 120 बाइट्स

HTML का सबसे खराब टुकड़ा मैंने कभी लिखा है। एक बाइट @Gust वैन डे वाल के लिए धन्यवाद बचाओ

b{color:#ff0}a{color:cyan}i{color:lime}u{color:blue
<pre><body bgcolor=#f0f text=red><b>█
█<i><a>█
 █<u>

HTML + CSS, 114 बाइट्स (अर्ध वैध)

मैं इसे अर्ध-वैध के रूप में डाल रहा हूं क्योंकि नीला बिल्कुल # 0000FF नीला नहीं है और लिंक पर क्लिक न करने पर भी निर्भर करता है।

विचार के लिए @Lynn को धन्यवाद

b{color:#ff0}i{color:lime}c{color:cyan
<pre><body bgcolor=#f0f text=red><b>█
█<i><c>█
 █<a href=x>


3
आप सीएसएस में अंतिम समापन ब्रैकेट को छोड़ सकते हैं। इसके अलावा, अविश्वसनीय (और बीमारी) काम!
गस्ट वैन डे वाल

3
आप स्वरूपण, जैसे डिफ़ॉल्ट सीएसएस से बचने के लिए टैग नाम बदल सकते हैं <w>, <x>, <y>, और <z>
darrylyeo

1
<a href=x>█डिफ़ॉल्ट रूप से नीला होगा, आपको CSS :) के कुछ बाइट्स बचाएंगे
Lynn

15

ditaa , 118 बाइट्स

/----+----+----\
|cF00|cFF0|cF0F|
+----+----+----+
|cFF0|c0F0|c0FF|
+----+----+----+
|cF0F|c0FF|c00F|
\----+----+----/

यह आउटपुट -Eविकल्प का उपयोग कर रहा है:

यहाँ छवि विवरण दर्ज करें


13

आर, 89 50 48 बाइट्स

नवीनतम संस्करण:

image(matrix(c(6,4,5,2:4,1,2),3),col=rainbow(6))

वेक्टर में पर्याप्त तत्व 3x3 मैट्रिक्स को भरने के लिए नहीं है, इसलिए यह चारों ओर लपेटता है और पहले तत्व का पुन: उपयोग करता है।

पुराने संस्करणों:

image(matrix(c(6,4,5,2:4,1,2,6),3),col=rainbow(6))

image(matrix(c(3,5,6,2,4,5,1:3),3),col=c('red','yellow','magenta','green','cyan','blue'))

यहाँ छवि विवरण दर्ज करें


3
PPCG में आपका स्वागत है!
अज्ञान


@alephalpha Yikes, मुझे विश्वास नहीं हो रहा है कि मैं चूक गया। मैंने आगे बढ़कर सबसे पुराना संस्करण और चरित्र गणना तय की
अंजामा

12

एक्सेल-वीबीए, 89 73 72 70 बाइट्स

संपादित करें: आप 16 बाइट्स को बचाने के लिए Sub/ के साथ तत्काल विंडो और डिस्पेंस का उपयोग कर सकते हैं End Sub:

For i=1To 9:[A:C].Cells(i).Interior.ColorIndex=Mid(367648785,i,1):Next

मूल उत्तर:

Sub a()
For i=1To 9
[A1:C3].Cells(i).Interior.ColorIndex=Mid(367648785,i,1)
Next
End Sub

यह इस उत्तर पर नील के सुझाव से प्रेरित था , और यह मेरा पहला सबमिशन है!

नतीजा:

परिणाम ग्रिड

-2 बाइट्स : सेल पंक्ति संख्याओं को हटाना - टेलर स्कॉट को धन्यवाद !


3
PPCG में आपका स्वागत है!
जोहान डू टिट

1
धन्यवाद! उम्मीद है कि मैं स्वामी से कुछ सीख
लूंगा

For i=1To 9:[A:C].Cells(i).Interior.ColorIndex=Mid(367648785,i,1):Next70 के लिए
टेलर स्कॉट

11

पर्ल 6 (और शायद कई भाषाओं के लिए समान) (31 बाइट्स)

{'ÿ   ÿÿÿ ÿ ÿÿ  ÿ ÿÿÿ ÿ ÿÿ  ÿ'}   # replace spaces with ASCII 00
                                  # which I can't seem to enter

यह एक हेडलेस TIFF फ़ाइल को आउटपुट करता है, जो कि फ़ाइल एक्सटेंशन .raw के साथ फ़ोटोशॉप द्वारा उत्पन्न किया जाता था और इसे तब तक वर्गाकार माना जाता है जब तक कि इसे खोलने के समय निर्दिष्ट न किया गया हो। रंग की गहराई के साथ चारों ओर खेलना (यदि अनुमति हो) इसे और कम कर सकता है।


11

ffplay (ffmpeg), 93 बाइट्स

ffplay -f rawvideo -s 3x3 -pix_fmt rgb24 "data:/;base64,/wAA//8A/wD///8AAP8AAP///wD/AP//AAD/"

पुराना :

ffplay -f lavfi -i testsrc=s=3x3,geq=r=255*not(X*Y):g=255*not((X-1)*(Y-1)):b=255*not((X-2)*(Y-2))

10

TEX(MathJax), 122bytes

Golf'd:

$\def\c#1{\color{#1}{\rule{5em}{5em}}}\c{red}\c{yellow}\c{fuchsia}\\\c{yellow}\c{lime}\c{aqua}\\\c{fuchsia}\c{aqua}\c{blue}$

Ungolf'd:

$$
\def\coloredBox#1{\color{#1}{\rule{5em}{5em}}}
\coloredBox{red}
\coloredBox{yellow}
\coloredBox{fuchsia} \\
\coloredBox{yellow}
\coloredBox{lime}
\coloredBox{aqua}    \\
\coloredBox{fuchsia}
\coloredBox{aqua}
\coloredBox{blue}
$$

संपादन:

  1. रंगों को ठीक करने के तरीके के लिए @flawr को धन्यवाद !

  2. मुंडन करा सकते थे14bytes\rule{5em}{5em}

    , लेकिन अभी बहुत समान नहीं दिखता है।

  3. संभवतः कुछ और बाइट्स निकाल सकते हैं रंग के नाम जो संभवतया इच्छित रंगों से मिलते हैं।

  4. बस यह दिखाने के लिए कि एक शालीनता से क्या हैTEX'd

    RedGreenBlueRedGreenBlue.


1
मुझे लगता है कि आपके रंग सही नहीं हैं। लेकिन इसके अलावा मैं आपके पोस्ट को केवल शीर्षक के लिए
अपटूडेट करूंगा

TEX

1
ऐसा लगता है कि mathjax css रंग नामों का उपयोग करता है। तो अगर आप बदल सकते purpleके साथ fuchsiaऔर tealसाथ aquaऔर greenसाथ limeतो चीजें सही मुझे लगता है कि होगा।
दोष

बस इसे नोट करने के लिए: ऊपर कुछ और हटाने से गोल्फ थोड़ा और अधिक हो सकता है {}। लेकिन यह मेरी पवित्रता के लिए कई स्वच्छ कोडिंग सिद्धांतों का उल्लंघन करेगा। = पी
नट

5
बस ध्यान दें कि पीपीसीजी समुदाय कभी भी अपनी पवित्रता के लिए प्रसिद्ध नहीं था। अगर कमी के लिए कुछ भी हो सकता है।
flawr

10

Lua + LuaVE / Love2D , 186 183 बाइट्स

t={[0>1]=0,[0<1]=1}l=love g=l.graphics function l.draw()for i=1,3 do for j=1,3 do g.setColor(t[i<2 or j<2],t[i==2 or j==2],t[i>2 or j>2])g.rectangle('fill',j*10,i*10,10,10)end end end

इसे ऑनलाइन आज़माएं!

यहाँ छवि विवरण दर्ज करें

मेरा पहला कोड गोल्फ प्रविष्टि!


1
कोड गोल्फ में आपका स्वागत है! अच्छा काम!
AJFaraday

1
मुझे लगता है कि आप अपनी सत्य तालिका में अभिव्यक्ति का उपयोग कर सकते हैं t={[0>1]=0,[0<1]=1}:।
13

1
@ मैनटवर्क स्मार्ट!
भेड़चाल

एक और लोवर, यहाँ आपको देखकर अच्छा लगा
Lycea


9

ऑक्टेव / MATLAB , 57 56 40 बाइट्स

-17 बाइट के लिए @ExpiredData को धन्यवाद! उनके भी गोल्फ समाधान की जाँच करें !

image(reshape(de2bi(126973007),[3,3,3]))

इसे ऑनलाइन आज़माएं!


1
क्या केवल छवि imshow के बजाय काम करती है? मतलूब का कोई लाइसेंस नहीं है और मैं फोन पर हूँ इसलिए इसका परीक्षण नहीं कर सकता हूँ
एक्सपायर्ड डेटा

2
@ExpiredData बहुत बहुत धन्यवाद, जो वास्तव में काम करता है!
flawr


1
@ExpiredData --- बहुत अच्छी चाल, बहुत बहुत धन्यवाद! :) --- आप इसे स्वयं के उत्तर के रूप में क्यों पोस्ट नहीं करते हैं?
flawr

3
ठीक है, मैं ऐसा करूंगा
समय सीमा समाप्त डेटा 7

9

फैक्टरियो ब्लूप्रिंट स्ट्रिंग, 705 बाइट्स

मैं मानता हूँ, मैं एक समाधान के रूप में क्या मायने रखता है की सीमाओं को धक्का दे रहा हूँ।

0eNrdWNGOqyAQ/ReedeNo0daH/ZHNTYOW7ZJFNAi91zT99wua7ZpdaaT1pb40oQ6HOecwA3pGBde0kUwolJ8RK2vRovztjFp2FITb/1TXUJQjpmiFAiRIZUdtzYkMGyIoR5cAMXGg/1AOlz8BokIxxegA0w+6vdBVQaUJuAKQstSV5kTV0qA2dWvm1MKuZ3FecIA6lIf4BV8uwS+YeDKPXzBhPKAkUxjJPAy4AbG5QljZFBEqLOuqYGKa1Vc6YAQzE5Ss+b6gH+TETLQJeWdcUemQ/8Sk0oSPHOgjQkkPqMfT1kEYWzEsI2hpc2gtFtgfO2NkDTMjbIKnCOLv1SrCechJ1UzwSm7zKpksNVN78+xwnffOZKv2s2kS0akPJo4D10FslEd2UDVE9oLn6NU+1i01S/HaKqmkpvNl2DhkSGfJEK1Eha1DhWyWCmvZCzuHCtu7aj5asuQ7ynn99/GqT0f07BjAwXnnx3kohEW7XMPE5+OEs5+EUwdhiL4T0IVh3LNzHlMwfUoB+LTPeK19A2LPkoGbety1f46SUvH4BoLExTHxOCKe3mmIXTJ43ogGp5MlnS47soTR+GeryFyUscex+PzOu65IkPr0OrzW2wFkHn0Ar3c3eN6S4pt63NUH7GvtAn3AafTOo+yf3+jhbDcv9/1XgHz00SBAJ+NNn3uWRJDiDcDWXIf+Aya7oEk=

इन-गेम (कम ग्राफिक्स सेटिंग्स का उपयोग) किए जाने पर उत्पादित आउटपुट:

यहाँ छवि विवरण दर्ज करें

यह साबित करने के लिए कि यह पिक्सेल के इस ग्रिड का नमूना लेने के लिए एक वैध समाधान है जो विनिर्देश से बिल्कुल मेल खाता है:

यहाँ छवि विवरण दर्ज करें

शेष छवि को सीमा या रिक्ति के रूप में वर्गीकृत किया गया है, जैसा कि प्रश्न में कहा गया है, इससे कोई फर्क नहीं पड़ता।



8

HTML / CSS, 278 141 137 बाइट्स

r{color:red}y{color:#ff0}m{color:#f0f}g{color:#0f0}c{color:#0ff}l{color:#00f
<pre><r><y><m><y><g><c><m><c><l>

टिप्पणीकारों के लिए -137 बाइट्स, सबसे विशेष रूप से @ डाटा
-4 बाइट्स @ ईनाचियो के लिए धन्यवाद

"ब्लॉक" के लिए यूनिकोड (U + 2588) का उपयोग करता है, और उन्हें रंगने के लिए CSS कक्षाओं / इनलाइन शैली का उपयोग करता है।

मुझे लगता है कि <font>टैग को और अधिक गढ़ा जा सकता है, हालांकि उन्हें छोटे टैग में बदलना जैसे <a>कि colorविशेषता को तोड़ता है


1
बाहर निकलें </td>, ब्राउज़र इस समापन टैग को स्वचालित रूप से जोड़ने के लिए पर्याप्त स्मार्ट है
फेरीबग

3
अगर पदावनत तत्वों का उपयोग कर रहे हैं, तो आप एक सेल की पृष्ठभूमि का रंग भी निर्दिष्ट कर सकते हैं<td bgcolor=#f00>
फेरीबग

2
हो सकता है कि एक नॉब सवाल हो, लेकिन क्या आप टेबल का उपयोग करने से बच सकते हैं और सिर्फ █ प्रिंट कर सकते हैं और <br> के साथ एक नई लाइन पर जा सकते हैं?
frarugi87

1
@ frarugi87 हाँ - 235 कुल:<span style="color:red">█<span class=a>█<span class=b>█<br><span class=a>█<span style="color:#0f0">█<span class=c>█<br><span class=b>█<span class=c>█<span style="color:#00f">█
केवल

1
@ ASCII-only b {color: # ff0} u {color: # f0f} i {color: # 0ff} <pre> <font color = red> █ <b>> <u>> <b> font <font color = लाइम> l <i> █ <u> █ <i>> <फ़ॉन्ट रंग = नीला>
डेटा

7

जावास्क्रिप्ट, 108 102 बाइट्स

console.log(`%c█%c█%c█
`.repeat(3),...[...`320251014`].map(c=>`color:#`+`f0ff00f0`.substr(c,3)))

कोई स्निपेट नहीं क्योंकि यह केवल वास्तविक ब्राउज़र कंसोल में काम करता है न कि स्निपेट के कंसोल पर। संपादित करें: स्क्रीनशॉट के लिए @AJFaraday को धन्यवाद। स्पष्टीकरण: ब्राउज़र console.logप्रतिस्थापन को शामिल करने के पहले पैरामीटर की अनुमति देते हैं। %cप्रतिस्थापन एक पैरामीटर लेता है और के रूप में (स्वच्छ) सीएसएस यह लागू होता है। इसलिए प्रत्येक ब्लॉक को f0ff00f0तीन-हेक्स-डिजिट रंग कोड के रूप में व्याख्या किए गए उपयुक्त विकल्प के उपयोग से रंगीन किया जाता है।

कोड निष्पादन का उदाहरण


1
मुझे नहीं लगता कि यह कैसे काम करता है?
मार्शल शिल्प

1
@marshalcraft %cका उपयोग एक प्रारूप स्ट्रिंग बनाने के लिए किया जाता है, इसके बाद पाठ के लिए CSS शैलियों का तर्क दिया जा रहा है
ASCII-only

1
तो यह मूल रूप से डॉस संस्करणों की तरह है लेकिन क्रोम ब्राउज़र के साथ है?
मार्शल शिल्प

1
बस जिज्ञासु लेकिन आप उपयोग करने के लिए fs / 0s की सबसे छोटी संभव श्रृंखला खोजने के बारे में कैसे गए?
मैरी

2
@ मैरी मैंने शुरू कर दी थी ff0ffजिसमें सभी मिश्रित रंग 00f00शामिल थे और सभी शुद्ध रंग शामिल थे। यदि आप उन्हें संक्षिप्त करते हैं, तो आप के लिए डुप्लिकेट स्थिति प्राप्त करते हैं ff0और f00इसलिए आप पहले और अंतिम पात्रों को हटा सकते हैं। मैंने तब यह सुनिश्चित करने के लिए कि सभी 7-वर्ण स्ट्रिंग्स की जांच करने के लिए एक छोटी स्क्रिप्ट लिखी थी, जिसमें 8 इष्टतम था।
नील

7

HTML (GIF), 108 बाइट्स

यह वेब-आधारित छवि प्रारूपों की लड़ाई है! (कोई TIF या JPG दावेदार वहाँ से बाहर?)

@AC द्वारा उत्तर ।

<img src=data:image/gif;base64,R0lGODdhAwADAMIGAAAA//8AAP8A/wD/AAD/////AAAAAAAAACwAAAAAAwADAAADBhglNSQEJAA7>


HTML (BMP), 116 115 बाइट्स

@ ASCII- केवल द्वारा उत्तर ।

<img src=data:image/bmp;base64,Qk0+AAAAQVNDTxoAAAAMAAAAAwADAAEAGAD/AP///wD/AAAAAAAA//8A/wD//wAAAAAAAP8A////AP8AAAA>


HTML (वेबपी), 116 बाइट्स

@Hohmannfan द्वारा उत्तर दिया गया

<img src=data:image/webp;base64,UklGRjYAAABXRUJQVlA4TCoAAAAvAoAAAC8gEEjaH3qN+RcQFPk/2vwHH0QCg0I2kuDYvghLcAoX0f/4Hgc>


HTML (PNG), 151 136 135 बाइट्स

-15 बाइट्स @Hohmannfan को धन्यवाद ।

<img src=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAIAAADZSiLoAAAAFElEQVR4AWP4z8Dw/z8DEIIodB4A4D0O8pOGuTgAAAAASUVORK5CYII>


इसके अलावा, मेरे सीएसएस और एसवीजी उत्तर देखें।


3
अच्छा विचार है लेकिन .. यह मुझे लगता है कि एक 9 पिक्सेल छवि के लिए 89 बाइट फ़ाइल थोड़ी बहुत है। हो सकता है कि मैन्युअल रूप से BMP हेडर लिखने से यह नीचे गिर सके। अगर मैं गलत नहीं हूं, तो नंगे न्यूनतम हेडर 26 बाइट्स हैं, वास्तविक डेटा के 12 प्लस (4 पिक्सेल की 3 पंक्तियाँ) छवि को 38 बाइट्स तक नीचे ट्रिम कर सकते हैं, जिसका अर्थ है कि बेस 64 में 119 के बजाय 51 या 52 अक्षर हैं
frarugi87

2
११:: <img src="data:image/bmp;base64,Qk0+AAAAQVNDTxoAAAAMAAAAAwADAAEAGAD/AP///wD/AAAAAAAA//8A/wD//wAAAAAAAP8A////AP8AAAA=">। 14 बाइट फ़ाइल हेडर, 12 बाइट एप्लिकेशन हेडर, 9 वास्तविक डेटा प्रति पंक्ति (+3 को पैड से 4 के कई तक), हाँ
ASCII- केवल

2
मैंने गिना नहीं है, लेकिन मुझे संदेह है कि <img src="data:image/gif;base64,R0lGODdhAwADAMIGAAAA//8AAP8A/wD/AAD/////AAAAAAAAACwAAAAAAwADAAADBhglNSQEJAA7">कम है
एसी

2
यहाँ एक png फ़ाइल है जो 15 बाइट्स छोटी है जब base64 एन्कोडेड है:iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAIAAADZSiLoAAAAFElEQVR4AWP4z8Dw/z8DEIIodB4A4D0O8pOGuTgAAAAASUVORK5CYII=
Hohmannfan

2
प्रारूप लड़ाई जारी रखने के लिए, यहां दोषरहित वेबपी समाधान है। मैं कल्पना का उल्लंघन किए बिना इसे और कम नहीं कर सकता, इसलिए बीएमपी ने इसे 116 बाइट्स में हरा दिया। <img src=data:image/webp;base64,UklGRjYAAABXRUJQVlA4TCoAAAAvAoAAAC8gEEjaH3qN+RcQFPk/2vwHH0QCg0I2kuDYvghLcAoX0f/4Hgc>
होहमनफैन

6

dc (xterm पर), 64 बाइट्स

Fi16[AP]sF36dD6r31 101dD6rD1[1CP61P[38;5;]Pn[mX]Pz3%0=Fz0<M]dsMx

आपको बस रंगों के बजाय निराला भागने के कोड का एक गुच्छा मिलेगा, लेकिन आप अभी भी इसे ऑनलाइन आज़मा सकते हैं!

मेरी समझ से, 16 बुनियादी एएनएसआई रंग व्याख्या करने के लिए स्वतंत्र हैं, हालांकि टर्मिनल चाहता है। दूसरी ओर, xterm कलर क्यूब में 216 रंगों का RGB मान स्पष्ट है। मैं इन कोड का उपयोग कर रहा हूं और Xएस का एक ग्रिड प्रिंट कर रहा हूं :

बंचा रंगीन 'x's

पहले हमने इनपुट मूलांक को आधार 15 के साथ सेट किया Fi। यह दो बाइट की लागत है, लेकिन तीन वापस देता है, इसलिए ... एक बाइट का शुद्ध लाभ (और पठनीयता में एक बड़ा राजभाषा नुकसान)। इसके बाद हम स्टैक पर हमारे रंग मूल्यों को प्राप्त करने की कोशिश कर रहे हैं। दशमलव में, यह होगा 21 51 201 51 46 226 201 226 196, लेकिन हम निराला मोड में हैं इसलिए यह होने जा रहा है 16 36 D6 36 31 101 D6 101 D1। हम एक स्थान को एक मैक्रो में स्लॉट करके समाप्त करते हैं, जिसे हमें कुछ बिंदु पर परिभाषित करने की आवश्यकता होती है, [AP]sF(जो बस एक लाइन फ़ीड प्रिंट करता है)। हम सिकुड़ सकते हैं 36 D6 36और 101 D6 101स्टैक पर पहला मूल्य रखकर, इसे डुप्लिकेट करके, दूसरा रखकर, और फिर स्वैपिंग ( 36dD6r, 101dD6r) कर सकते हैं।

मैक्रो Mप्रिंटिंग और व्हाट्सएप को संभालता है। 1CPबच चरित्र को प्रिंट करता है। ब्रैकेट्स का उपयोग स्ट्रिंग को परिसीमित करने के लिए किया जाता है, और जहां तक ​​मुझे पता है कि यह पलायन योग्य नहीं है, इसलिए हमें ब्रैकेट को एएससीआईआई मान के साथ प्रिंट करने की आवश्यकता है 61P[38;5;]Pकोड सूची से 'सेट अग्रभूमि रंग' है। nस्टैक डब्ल्यू / ओए न्यूलाइन के शीर्ष से मूल्य को प्रिंट करता है, इसे पॉपिंग करता है। [mX]Pकोड को समाप्त करता है और एक 'X' प्रिंट करता है। z3%0=Fस्टैक डेप्थ मॉड 3 की जांच करता है, Fजब आवश्यक हो तो हमारी लाइन फीड मैक्रो को चला रहा है। जब तक स्टैक पर सामान z0<Mरहता है Mतब तक चलता रहता है । dsMxचलाने के लिए।

ध्यान दें कि यदि आप इसे एक xterm में डीसी में चलाते हैं, तो यह आपके अग्रभूमि रंग को नीला छोड़ देगा। 1CP61P74P(इनपुट स्क्रीनशॉट में दिखाया गया है) इसे रीसेट करना चाहिए।


6

ब्लॉक कछुआ, 45 ब्लॉक

इसे ऑनलाइन आज़माएं!

कैसे के बारे में हम नौकरी के लिए सबसे हास्यास्पद उपकरण खोजने का एक छोटा सा खेल खेलते हैं?

आउटपुट:

गंदे प्रोग्रामिंग के इस शानदार टुकड़े का शानदार आउटपुट

कार्यक्रम (अतिरिक्त विधर्मियों के लिए स्क्रीनशॉट के रूप में):

अतिरिक्त पाषंड के लिए स्क्रीनशॉट के रूप में कार्यक्रम

नोट: ग्रे आउट ब्लॉक को भी मीट्रिक की ओर गिना जाता है।


1
मुझे लगता है कि एक मानक पीसीजी चुनौती हो प्यार करता हूँ! इसके बजाय यह कुछ कोड गोल्फ पहेली पर व्यवस्थित रूप से होता है
AJFaraday

5

नोड.जेएस, 79 बाइट्स

require('fs').writeFile(a='P',a+[...'3331100110101110010011101011001'].join` `)

पीपीएम प्रारूप में "P" नामक एक फाइल का निर्माण करता है जिसमें रंग ग्रिड होता है।


5

टीआई-बेसिक, एक्स बाइट्स (स्कोर जब मैं कर सकता हूं)

नोट: सामग्री फ़िल्टर मुझे इनमें से प्रत्येक आदेश के लिए टोकन आकार देखने से रोक रहा है। अगर कोई मेरे लिए स्कोर करना चाहता है, तो इसके लिए जाएं।

TextColor(11
Text(0,0,"0"
TextColor(19
Text(0,2,"0"
Text(2,0,"0"
TextColor(13
Text(4,0,"0"
Text(0,4,"0"
TextColor(14
Text(2,2,"0"
TextColor(18
Text(2,4,"0"
Text(4,2,"0"
TextColor(17
Text(4,4,"0"

यह मेरी छोटी कैलकुलेटर स्क्रीन पर वास्तव में बुरा लग रहा है। लेकिन हे, आकार कोई फर्क नहीं पड़ता: ^)

गोल्फ उत्पादन: 8x बड़े उत्पादन के लिए संशोधित:

यहाँ छवि विवरण दर्ज करें



यहाँ छवि विवरण दर्ज करें



टीआई-बेसिक, एक्स बाइट्स

पाठ के बजाय Pxl-On का उपयोग करना:

Pxl-On(0,0,11
Pxl-On(0,1,19
Pxl-On(0,2,13
Pxl-On(1,0,19
Pxl-On(1,1,14
Pxl-On(1,2,18
Pxl-On(2,0,13
Pxl-On(2,1,18
Pxl-On(2,2,17

आउटपुट: ऊपर उड़ा ~ 11x:

यहाँ छवि विवरण दर्ज करें



यहाँ छवि विवरण दर्ज करें


यह 180 अक्षर है, लाइन ब्रेक को छोड़कर। मुझे यकीन नहीं है कि कैसे / अगर लाइन ब्रेक कोड गोल्फ में गिने जाते हैं।
नेट

4
हां, लेकिन TI-BASIC एक टोकन भाषा है - उदाहरण के लिए, दुभाषिया TextColor2 बाइट्स के रूप में देखता है , 9 नहीं जैसा कि आप @Nat से उम्मीद करेंगे
बेंजामिन Urquhart

4

सी ++, एसएफएमएल, 177 बाइट्स

#include<SFML/Graphics.hpp>
int d[]={255,65535,0xFF00FF,65535,65280,0xFFFF00,0xFF00FF,0xFFFF00,0xFF0000};void f(){sf::Image g;g.create(3,3,(sf::Uint8*)d);g.saveToFile("a.jpg");}

sf::Image::create(int,int,unsigned char*)इसमें आरजीबी मूल्यों के साथ एक छवि बनाने के लिए विधि का उपयोग करता है


आप के 0xFF0000रूप में लिखकर एक बाइट दाढ़ी कर सकते हैं 255<<16
ब्रोक्ज़ियर

1
इसे थोड़ा आगे बढ़ाते हुए, आप सरणी से पहले चर में R / G / B रंग मानों को परिभाषित करके 13 बाइट्स बचा सकते हैं:int b=255<<16,g=65280,r=255,d[]={r,g|r,b|r,g|r,g,b|g,b|r,b|g,b};
Broxzier

4

सी #, 248 204 198 बाइट्स

class P{static void Main(){for(int i=0;i<12;i++){foreach(dynamic n in Enum.GetValues(typeof(ConsoleColor)))if((""+n)[0]=="RYMRYGCRMCBR"[i])Console.BackgroundColor=n;Console.Write(i%4<3?" ":"\n");}}}

आउटपुट:
यहाँ छवि विवरण दर्ज करें



3

वोल्फ्राम भाषा (गणितज्ञ), 72 बाइट्स

Grid@Partition[RGBColor/@Unitize[Total/@Tuples[IdentityMatrix@3,{2}]],3]

यहाँ छवि विवरण दर्ज करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.