হ্যালো ওয়ার্ল্ড রেইনবো


11

চিহ্নবিহীন ভাষাগুলিতে রঙ নিয়ে কাজ করা প্রায়শই জিনিসগুলিকে জটিল করে তোলে। আমি বিভিন্ন ভাষায় রঙ কীভাবে ব্যবহৃত হয় তার কিছু প্রকারভেদ দেখতে চাই।

এই প্রতিযোগিতার উদ্দেশ্য হ'ল রংয়ের রংয়ের সাত রঙে 'হ্যালো ওয়ার্ল্ড' আউটপুট দেওয়া।

উইকিপিডিয়া অনুসারে, এটি 7 টি রঙ।

Red      #FF0000 (RGB: 255, 0, 0)
Orange   #FF7F00 (RGB: 255, 127, 0)
Yellow   #FFFF00 (RGB: 255, 255, 0)
Green    #00FF00 (RGB: 0, 255, 0)
Blue     #0000FF (RGB: 0, 0, 255)
Indigo   #6600FF (RGB: 111, 0, 255)
Violet   #8B00FF (RGB: 143, 0, 255)

নিয়ম

  1. প্রোগ্রামটি অবশ্যই 'হ্যালো ওয়ার্ল্ড' আউটপুট দেয়। (অবশ্যই পাঠ্য হওয়ার দরকার নেই, তবে এটি অবশ্যই 'হ্যালো ওয়ার্ল্ড' হিসাবে ছদ্মবেশী হতে পারে)
  2. প্রতিটি বর্ণ অবশ্যই আলাদা বর্ণের হবে।
  3. রঙগুলি যে কোনও ক্রমে হতে পারে।
  4. আপনাকে অবশ্যই সাতটি রঙের প্রতিটি অন্তত একবার ব্যবহার করতে হবে। (আপনি প্রদত্ত রঙের চেয়ে বেশি ব্যবহার করতে পারেন)
  5. কোনও ক্ষেত্রেই মার্কআপ ভাষার ব্যবহার নেই ।

বিজয়ী হলেন যার সাথে সর্বনিম্ন পরিমাণের অক্ষর থাকে এবং নিয়ম অনুসরণ করেন

বোনাস -১ অক্ষরটি এটি ডার্টে লেখা থাকলে

আমি 11 জানুয়ারী বিজয়ীকে বাছাই করব (যদি মনে থাকে; ডি)।

শুভকামনা

বিজয়ী (গুলি)

আমি ভুল করেছিলাম ডি:, আপডেটেড বিজয়ীরা।

1st। স্ট্রানাক - পাইথন, 60 টি অক্ষর

2nd। ইলমারি - করোনেন পার্ল + জিডি, 146 অক্ষর

সমস্ত নিয়ম মেনে চলা স্বল্পতম দৈর্ঘ্য।

ডার্ট উত্তরের জন্য ব্রাউন জিমিনপকে নির্দেশ করেছেন

উত্তর:


7

পাইথন, 60 টি অক্ষর

এখন 7 টি রং এবং "সঠিক" ব্যবহার করা হচ্ছে।

অ্যাসি এস্কেপ সিকোয়েন্স ব্যবহার করে। আন্ডারস্কোরটি ঠিক তাই এটি কোনও অদৃশ্য স্থান নয়।

পাইথনের মুদ্রণটি যেভাবে কাজ করে সে কারণে এই সংস্করণটি কিছু অতিরিক্ত স্পেস প্রিন্ট করে, তবে সেই স্পেসগুলি বেশ কয়েকটি অক্ষর সাশ্রয় করে, তাই আমি তাদের সাথে সেখানে আছি fine

for p in zip(range(7)*2,'Hello_World'):print'\033[3%im%s'%p,

এবং একটি স্ক্রিনশট যা মিঃজান্ডার দ্বারা প্রয়োজনীয়: এখানে চিত্র বর্ণনা লিখুন


আমি কি ত্রুটি করেছি? আপনি সমস্ত রঙ সঠিকভাবে ব্যবহার করেছেন তা প্রমাণ করে একটি স্ক্রিনশট পোস্ট করুন। "কালো থেকে সাদা থেকে 8 টি রঙ" এটি 7 প্রয়োজনীয় রঙ ব্যবহার করে বলে মনে হয় না।
মিঃজান্ডার

@ মিঃজান্ডার: আমি আমার উত্তর আপডেট করেছি, এবং আশা করি এটি এখন আপনাকে সন্তুষ্ট করবে। বিটিডব্লিউ, আপনি নিশ্চিত যে আপনি সরবরাহ করেছেন 6th ষ্ঠ রঙটি সঠিক? এটি প্রায় 7 তম হিসাবে একই।
stranac

এটি সরাসরি উইকিপিডিয়া থেকে নিয়ে গেছে ... আমি কোনও রঙ বিশেষজ্ঞ হাহা না।
মিঃজান্ডার

2
এটি কাজের জন্য একটি কাস্টম প্যালেট উপর নির্ভর করে। উদাহরণস্বরূপ, Hকালো জন্য এস্কেপ কোড ব্যবহার করে প্রিন্ট করা হয়, তাই এটি বেশিরভাগ টার্মিনালে দৃশ্যমান হয় না।
হামার

12

ম্যাথামেটিকাল

ImageMultiply[ColorNegate[Graphics[Text[Style["Hello World",30]],ImageSize->190]],ColorData["Rainbow","Image"]]

আমি জানি, আমি জানি, এটি নিয়ম মেনে চলে না .. তবে ম্যাথামেটিকার ইমেজ প্রসেসিংয়ের কাজগুলি নিয়ে খেলতে হবে আমাকে।

স্ক্রীনশট:

ওহে বিশ্ব!!!!!!!


10

হাস্কেল, 88 টি অক্ষর

f(c,n)=putStr$"\27["++show n++"m"++[c]
main=mapM_ f$zip"Hello World\n"$35:cycle[31..36]

স্ক্রিনশট

নোট করুন যে এটি এএনএসআই টার্মিনাল রঙগুলি ব্যবহার করে যার মধ্যে কেবলমাত্র 6 টি রয়েছে এবং তারা প্রদত্ত সঠিকগুলির সাথে মেলে না।

প্রায় সঠিক রঙ, 107 টি অক্ষর সহ সামান্য দীর্ঘ সংস্করণ

এই সংস্করণে এএনএসআইয়ের পরিবর্তে এক্সটার্মের রঙ ব্যবহার করা হয়েছে। এটি কোনও কাস্টম প্যালেটগুলির উপর নির্ভর করে না এবং 256-রঙের এক্সটার্ম প্যালেটটিতে আমি খুঁজে পেতে পারি এমন ঘনিষ্ঠ রঙগুলি ব্যবহার করে।

f(c,n)=putStr$"\27[38;5;"++show n++"m"++[c]
main=mapM_ f$zip"Hello World\n"$cycle[196,208,226,46,21,57,93]

এখানে চিত্র বর্ণনা লিখুন


7

পাইথন, 261 অক্ষর

C=((255,0,0),(255,127,0),(255,255,0),(0,255,0),(0,0,255),(111,0,255),(143,0,255))
print'P3 67 5 255'
for i in range(335):print'%d %d %d'%(C+C[2:])[i%67/6]if 0x4f7c938a00e7df7d12208a8aa0220820a34413d154044105f7e8828a28808820828cf04f39100e0417d1>>i&1 else'0 0 0'

একটি পিপিএম চিত্র উত্পন্ন করে হুবহু চিত্রটি কার্যকর করে। এখানে ফলাফল, জিআইএফ-তে রূপান্তরিত এবং 4 টির একটি ফ্যাক্টর দ্বারা ছোট করে দেওয়া হয়েছে:

এখানে চিত্র বর্ণনা লিখুন


হেই, দুর্দান্ত। আমাকে বোঝার জন্য একটি বিব্রতকর দীর্ঘ সময় নিয়েছে।
cemper93

2
n=255;C=((n,0,0),(n,127,0),(n,n,0),(0,n,0),(0,0,n),(111,0,n),(143,0,n))
স্টিভেন রাম্বালস্কি

7

পার্ল -> এএনএসআই টার্মিনাল, 53 টি অক্ষর

s//Hello World/;s/./\e[3${[5,(1..6)x2]}[pos]m$&/g;say

এটি হামার হাস্কেল সলিউশন হিসাবে ঠিক একই আউটপুট উত্পাদন করে । এটি ব্যবহার করে say, সুতরাং পারল 5.10+ এবং -M5.010(বা -E) স্যুইচ প্রয়োজন। পুরোনো perls জন্য প্রতিস্থাপন sayসঙ্গে print\eআক্ষরিক ESC চরিত্রের পরিবর্তে একটি তুচ্ছ ওয়ান-অক্ষর হ্রাস অর্জন করা যেতে পারে তবে কোডটি পড়া এবং সম্পাদনা করা আরও কঠিন হয়ে উঠবে।

সম্পাদনা করুন: হামারের আউটপুটটি হুবহু মেলাতে এবং ছয়টি সম্ভাব্য টার্মিনাল রঙগুলি দেখানোর জন্য দুটি অক্ষর যুক্ত করা হয়েছে। (পূর্ববর্তী সংস্করণে, রঙের 6 = সায়নে ছাপানো একমাত্র অক্ষরটি ছিল স্থান))

স্ক্রীনশট:

ওহে বিশ্ব


সম্পাদনা 2: যদি একটি কাস্টম টার্মিনাল প্যালেট (এবং স্থানের জন্য একটি আন্ডারস্কোর) ব্যবহারের অনুমতি দেওয়া হয়, তবে আমি সহজেই কেবল 50 টি অক্ষরের সাহায্যে বর্ণনায় দেওয়া সঠিক রংগুলি পুনরুত্পাদন করতে পারি:

$_=Hello_World;s/./\e[3${[(0..6)x2]}[pos]m$&/g;say

স্ক্রীনশট:

ওহে বিশ্ব


3

পার্ল -> এইচটিএমএল, 99 টি অক্ষর

@c=(("00")x5,77,(ff)x5,77)x2;print"<font color=#",@c[$i+8,$i+4,$i++],">$_"for split//,"Hello World"

স্ক্রীনশট:

ওহে বিশ্ব

এইচটিএমএল সম্ভবত কোনও যাচাইকারী পাস করবে না, তবে প্রায় সমস্ত ব্রাউজার দ্বারা বোঝা উচিত। এই কোডটি আপনার তালিকাভুক্ত সঠিক আরজিবি রঙগুলি তৈরি করে না তবে এটি খুব কাছাকাছি আসে। বিশেষত, বর্ণগুলির রঙগুলি হ'ল:

H  Red           #FF0000
e  Orange        #FF7700
l  Yellow        #FFFF00      
l  Chartreuse    #77FF00
o  Green         #00FF00
  (Spring green  #00FF77)
W  Cyan          #00FFFF
o  Sky blue      #0077FF
r  Blue          #0000FF
l  Indigo        #7700FF
d  Violet        #FF00FF

আউটপুটটি একটি কালো পটভূমিতে বেশ সুন্দর দেখায়, তবে স্পষ্টভাবে একটি মুদ্রণ করা <body bgcolor=black>আমার 28 টি অতিরিক্ত অক্ষরের জন্য ব্যয় করে। পরিবর্তে একই প্রভাব অর্জন করতে আপনি আপনার ব্রাউজার সেটিংস সামঞ্জস্য করতে পারেন। :-)


3
নিয়ম ৫-এর সাথে আমি যথেষ্ট সুনির্দিষ্ট না হয়ে থাকতে পারি I আমি অন্য ভাষার সাথে মিলিয়ে মার্কআপ ব্যবহার করতে চাইনি। তবে যে কোনও ক্ষেত্রে, খুব সৃজনশীল কোড।
মিঃজান্ডার

3

পার্ল + জিডি, 146 টি অক্ষর

আমার অন্যান্য উত্তরের মন্তব্যগুলিতে , এখানে একটি সমাধান রয়েছে যা সরাসরি জিডি লাইব্রেরি ব্যবহার করে একটি চিত্র ফাইল তৈরি করে:

use GD'Simple;move{$m=new GD'Simple 70,12}2,12;s//Hello World/;s/./fgcolor$m(((0)x5,127,(255)x5,127)x2)[$i+8,$i+4,$i++];string$m$&/eg;print$m->png

এবং আউটপুট এখানে:

ওহে বিশ্ব

আবার, একটি কালো ব্যাকগ্রাউন্ড ব্যবহার করা আরও ভাল দেখাচ্ছে তবে আমার জন্য 29 টি অক্ষর ( $m->bgcolor(0,0,0);$m->clear;) লাগবে ।

সম্পাদনা: পরোক্ষ বস্তু স্বরলিপি এবং অন্যান্য কয়েকটি টুইট ব্যবহার করে কীভাবে 20 অক্ষর শেভ করবেন (আব্বু) ured নতুন কোডটি একটি সতর্কতা প্রকাশ করে, তবে এখনও ঠিক আছে।


এটি এর মতো আরও;)
মিঃজান্ডার

এখনও অবধি, এটি সর্বনিম্ন চরিত্রের গণনা যা বিন্দুতে সমস্ত নিয়ম অনুসরণ করে।
মিঃজান্ডার

3

পোস্টস্ক্রিপ্ট 155 143

এটি ঘোস্টস্ক্রিপ্টের "ফিগার আউট" করার ক্ষমতার উপর নির্ভর করে যে পালাটিনো-রোমানের জন্য প্যালাটিনো সংক্ষিপ্ত।

/h{c 1 1 sethsbcolor}def/c 0 def
200 400 moveto/Palatino 36 selectfont
h{32 ne{/c c .14 add dup 1 gt{1 sub}if def}if pop
h}(Hello World!)kshow

1
আমি মনে করি "টাইমস" সংক্ষিপ্ত, তবে ...
luser droog

আপনার কিছু ধারণাগুলি চুরি করেছেন ...
থমাস ডাব্লু।

3

এটি করার জন্য কিছু ভিন্ন পদ্ধতি

পোস্টস্ক্রিপ্ট

প্রথম: সংক্ষিপ্ততম এক ( 89 ):

9 9 moveto/Courier 9 selectfont
0{pop pop 
dup 1 1 sethsbcolor
.07 add}( Hello World)kshow

ফলাফল ফলাফল

আন golfed:

9 9 moveto
/Courier 9 selectfont
0                       % hue
{                       % hue c1 c2
  pop pop               % hue
  dup 1 1 sethsbcolor   % hue
  .07 add               % newHue
}( Hello World)kshow

এটি এইচএসবি রঙের স্থানটি ব্যবহার করে ক্রমাগত x দিকের রঙ পরিবর্তন করছে। (এইচএসবি রঙ এবং Kshow ব্যবহার করার আইডিয়াটি লুসার ড্রোগের কাছে জমা দেওয়া হয় - তার এন্ট্রি দেখুন!) এটি মিস্টারজান্ডার প্রদত্ত সঠিক সাতটি রঙ ব্যবহার করে না।

মিঃজান্ডারের রঙগুলিতে নিজেকে সীমাবদ্ধ করার সময় আমি 141 টি অক্ষর ব্যবহার করে সেখানে পৌঁছে যাই :

9 9 moveto/Courier 9 selectfont(H e*l4l4oI  WIosrsl{d~)dup
0 2 20{2 copy
1 add get 32 sub 166 div 1 1 sethsbcolor
1 getinterval show
dup}for

ফলাফল ফলাফল

এটি মুদ্রণযোগ্য এএসসিআইআই রেঞ্জের এক বাইট হিসাবে মিস্টারজান্ডারের রঙের হিউ মানকে এনকোড করে। এই বাইটটি 0 এবং 1 এর মধ্যে একটি বিস্তৃত মানগুলিতে 32 কে বিয়োগ করে এবং 166 দ্বারা বিভাজক করে অনুবাদ করা হয় "

আন golfed:

9 9 moveto
/Courier 9 selectfont
(H e*l4l4oI  WIosrsl{d~)dup     % string string
0 2 20{                         % string string index
  2 copy                        % string string index string index
  1 add get                     % string string index hueChar
  32 sub 166 div                % string string index hueValue
  1 1 sethsbcolor               % string string index 
  1 getinterval                 % string substring
  show                          % string
  dup                           % string string
}for

টোডো : রঙগুলির সাথে কিছু ঠিক নেই।


2

কিছু প্রতারণা করলেও সমস্যার সমাধান হয়

বাশ + রুবি ( lolcatরত্নের প্রয়োজন )

echo Hello World | lolcat -p 0.25

রেইনবো হ্যালো ওয়ার্ল্ড


1

এইচটিএমএল থেকে শুরু করুন, 135 134-1 = 133

main(){for(var s="Hello World",i=0;i<11;print("<font color=#${'F00F60FB0FF06F00F00B606B00F60F90F'.substring(i*3,i*3+3)}>${s[i++]}"));}

মার্কআপ ল্যাঙ্গুয়েজ ব্যবহার না করে রঙ করার কোনও উপায় আছে কি? আমি ক্যানভ্যাসগুলি পরীক্ষা করতে পারি না ...


ওওও ... +1 এইচটিএমএল
সহও

1

আমি জানি এটি "কোনও ক্ষেত্রেই মার্কআপ নেই" বলে, তবে আমি এই সিএসএসটি 468 টি অক্ষরে জমা দিতে চাই:

<style>b{font-weight:normal}i{font-style:normal}u{text-decoration:none}b:after{content:'e';color:orange}b:before{content:'H';color:red}i:after,i:before{content:'l'}i:before{color:#ff0}i:after{color:#0f0}u:before{content:'o ';color:#66f}u:after{content:'W';color:blue}s{text-decoration:none}s:before{content:'o';color:#006}s:after{content:'r';color:#60f}p{display:inline}p:before{content:'l';color:#8b00ff}p:after{content:'d'}</style><b></b><i></i><u></u><s></s><p></p>

স্টাইলিংগুলির কোনওটিই মার্কআপ দিয়ে সম্পন্ন হয় না।


0

চুনি

আরও 242 পদ্ধতিগত পদ্ধতি:

require 'paint'

s = "HelloWorld"
out = ""
[
  '#FF0000',
  '#FF7F00',
  '#FFFF00',
  '#00FF00',
  "#00FFFF",
  "#5555FF",
  '#0000FF',
  '#000077',
  '#6600FF',
  '#8B00FF'
].each_with_index { |c, i| out << "#{Paint[s[i], c.dup]}" }
puts out

আমি যদি রঙগুলি উত্পন্ন করার জন্য আরও ভাল উপায়ের কথা চিন্তা করি তবে আমি যা করব। মধ্যবর্তী কয়েকটি দিয়ে আমি রংগুলি বন্ধ করার জন্য কিছু পরীক্ষা এবং ত্রুটি করেছি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.