রংধনু আঁকুন


25

চ্যালেঞ্জটি সহজ: যতটা সম্ভব বাইটে একটি রংধনু আঁকুন

রংধনুটির জন্য চশমা নিম্নরূপ:

  • চিত্রটি অবশ্যই 400 পিক্সেল প্রশস্ত এবং 200 পিক্সেল উচ্চ হতে হবে (allyচ্ছিকভাবে 401x201 আপনি যদি একটি একক কেন্দ্রের পিক্সেল চান)
  • লাল রিংটি চিত্রের সমস্ত সীমানা স্পর্শ করা উচিত (বাহ্যিক ব্যাসার্ধ = 200 পিক্সেল)
  • সমস্ত রিং একই প্রস্থ (10 পিক্সেল) হবে
    • ভায়োলেট রিংটির অভ্যন্তরীণ ব্যাসার্ধ 130 পিক্সেলের হবে
  • ধনুকটি একটি নিখুঁত বৃত্তের উপরের অর্ধেক হওয়া উচিত
  • পটভূমি সাদা হবে (স্বচ্ছ এছাড়াও গ্রহণ করা হয়)
  • চিত্রের সীমানা থাকবে না, (সীমানাটি দমন করা যায় না যদি ব্যতিক্রম হয়)
  • বিল্টিন রংধনু তৈরির কার্যগুলি অনুমোদিত নয়!

নীচের রংগুলি রংধনুতে ব্যবহার করতে হবে:

রামধনু

এটি কোড গল্ফ, তাই বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়!

উদাহরণ:

রামধনু

সম্পর্কিত, কিন্তু ভিন্ন!


26
বিল্টিন রংধনু তৈরির ফাংশনগুলি অনুমোদিত নয় যেমন আমি নিশ্চিত যে ম্যাথামেটিকার একটি রয়েছে
লুইস মেন্ডো

রংধনু কতটা অসম্পূর্ণ হতে পারে? অ্যান্টি-এলিয়াস থেকে ছিঁড়ে যাওয়া নয়? এই উত্তরের
জুড়ে

@aross: এটা উচিত চেহারা নমুনা রামধনু মত (কিছু পিক্সেল বেঠিক গণনার কারণে পরিবর্তিত হতে পারে)। দুটি শেষ রেইনবো খুব "অগোছালো", যখন প্রথমটি ঠিক আছে বলে মনে হচ্ছে। আমার একটি নিখুঁত নিয়ম নেই, সুতরাং আপনি সর্বোত্তম রায়টি ব্যবহার করুন :-)
স্টিভি গ্রিফিন

@ স্টিভিগ্রিফিন কারণ আমি জিজ্ঞাসা করছি কারণ দৃশ্যত পিএইচপি গ্রাফিক্স বেশ বগি, যখন সমাধানটি তত্ত্ব অনুসারে সঠিক । ঠিক আছে, দ্বিতীয়টি হ'ল, তৃতীয়টি অ্যান্টি-
এলিয়াজিংয়ের

ভেক্টর গ্রাফিক্স কি অনুমোদিত নয়? সম্পাদনা: কিছু মনে করবেন না — আমি দেখতে পাচ্ছি যে ইতিমধ্যে একটি টিকজেড উত্তর রয়েছে, তাই আমি তাদের সংগ্রহ করি gather
জুলিয়ান ওল্ফ

উত্তর:


15

এমএটিএল , 107 95 92 87 84 83 বাইট

-200:200 0:200!PYyq10/k12-t8<*t0>*Q7B.561FTh.295Oh.51h4BPFTF6Bl.5hOh4B8$v255*k5M/YG

এটি ভাষা / সংকলকের বর্তমান প্রকাশে (14.0.0) কাজ করে ।

সম্পাদনা (6 জুলাই, 2017) : আপনি এটি এমএটিএল অনলাইনে চেষ্টা করতে পারেন !

রঙগুলি সঠিক কিনা তা পরীক্ষা করতে, শেষ পাঁচটি অক্ষর মুছে ফেলুন (আপনাকে কয়েক সেকেন্ড অপেক্ষা করতে হবে এবং আউটপুট শেষে স্ক্রোল করতে হবে)।

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

ব্যাখ্যা

কোডটির তিনটি প্রধান পদক্ষেপ রয়েছে:

ধাপ 1 থেকে সংখ্যার একটি 201x401 ম্যাট্রিক্স জেনারেট করুন 1থেকে 8। মান সহ 1পিক্সেলগুলি হ'ল ব্যাকগ্রাউন্ড (সাদা), মান সহ পিক্সেল 2, ..., 8রংধনুর প্রতিটি ব্যান্ড উপস্থাপন করে।

অনুভূমিক স্থানাঙ্ক থেকে পরিসীমা -200থেকে 200ডানে বামে, এবং উল্লম্ব স্থানাঙ্ক থেকে পরিসীমা 0থেকে 200নীচে উপরে। সুতরাং উৎপত্তি (0,0) নীচের কেন্দ্র, উপরের বাম কোণটি (-200,200) ইত্যাদি etc.

প্রতিটি পিক্সেল থেকে উত্সের দূরত্ব গণনা করে এবং 10 পিক্সেলের ধাপে কোয়ান্টাইজিংয়ের মাধ্যমে রংধনুর বিভিন্ন ব্যান্ড তৈরি হয়।

পদক্ষেপ 2 : রঙম্যাপটি সংজ্ঞায়িত করে একটি 8x3 ম্যাট্রিক্স উত্পন্ন করুন। প্রতিটি সারিটি প্রয়োজনীয় রঙগুলির মধ্যে একটি (সাদা এবং রংধনুর সাতটি রঙ)। পূর্ববর্তী 201x401 ম্যাট্রিক্সের প্রতিটি মান এই রঙিন মানচিত্রের একটি সারি সূচক হিসাবে ব্যাখ্যা করা হবে।

আমরা প্রতিটি রঙের উপাদানগুলির জন্য 0 এবং 1 এর মধ্যে মানগুলি ব্যবহার করে কালারম্যাপ ম্যাট্রিক্স উত্পন্ন করি এবং তারপরে 255 দ্বারা গুণ করে এবং বৃত্তাকারকে ডাউন করে। এইভাবে সর্বাধিক মান প্রাথমিকভাবে 0 এবং 1 হয়, যা পরে 0 এবং 255 তে পরিণত হবে Inter মধ্যবর্তী মানগুলি 0 এবং 1 এর মধ্যে 2 বা 3 দশমিকের সাথে মান হিসাবে কোডড হয়, এমনটি বেছে নেওয়া হয় যাতে গুণিত এবং বৃত্তাকার সময় যথাযথ পছন্দসই মান দেয়।

পদক্ষেপ 3 : সেই রঙের মানচিত্রের সাহায্যে চিত্রটি প্রদর্শন করুন।

               % STEP 1: CREATE MATRIX DEFINING THE RAINBOW BANDS
-200:200       % row vector [-200, -199, ..., 200]
0:200          % row vector [0, 1, ..., 200]
!P             % transpose and flip: convert into column vector [200; 199; ...; 0]
Yy             % hypotenuse function with broadcast: distance from each point to (0,0)
q10/k          % subtract 1, divide by 10, floor (round down). Gives 20 circular bands
               % 10 pixels wide, with values from 0 to 19
12-            % subtract 12
t8<*           % values larger than 7 are set to 0
t0>*           % values less than 0 are set to 0. We now have 7 bands with values
               % 1, ..., 7, and the white background with value 0
Q              % add 1: white becomes 1, bands become 2, ..., 8

               % STEP 2: CREATE MATRIX DEFINING THE COLORMAP
7B             % first row: [1 1 1] (7 converted to binary: color white)
.561FTh        % second row (light purple)
.295Oh.51h     % third row (dark purple)
4BP            % fourth row: [0 0 1] (4 converted to binary and flipped: blue)
FTF            % fifth row (green)
6B             % sixth row: [1 1 0] (6 converted to binary: yellow)
l.5hOh         % seventh row: orange
4B             % eigth row: [1 0 0] (4 converted to binary: red)
8$v            % vertically concatenate the 8 eight rows
255*k          % multiply by 255 and round down. Gives exact color values 
5M/            % push 255 again and divide. This is needed because colors in MATL are
               % defined between 0 and 1, not between 0 and 255

               % STEP 3: DISPLAY
YG             % display image with that colormap

28

পিট , 838 কোডেল, কয়েক হাজার পিক্সেল

কারও এটি করতে হয়েছিল:

দারুণ এক রংধনু

আপনি যদি এই চিত্রটি সংরক্ষণ করেন তবে অনলাইনে চেষ্টা করে দেখতে পারেন !

আসল পিট প্রোগ্রামটি কেবল শীর্ষস্থানীয় ~ 125 পিক্সেল, যা আমি লিখেছিলাম পাইথন প্রোগ্রামটি ব্যবহার করে তৈরি করেছি।

এরপরে এটি সম্পাদনা করা সত্যিই আমার দৃষ্টিকে আঘাত করেছে, আমি কয়েক দিনের জন্য ট্রিপিং করব!

এটি চিত্রকে একটি এসভিজি ফর্ম্যাটে আউটপুট করে দেয় কারণ এসভিজি সত্যই (আমার মতে) এটি করার সহজ উপায়। আমি নির্লজ্জভাবে ডোরকনব এর এসভিজি কোডটি চুরি করেছি। আউটপুট:

সঠিক আউটপুট

ভাল, এই সত্যিই:

<svg viewBox='0 0 400 200'><circle cx='200' cy='200' r='200' fill='red'/><circle cx='200' cy='200' r='190' fill='#ff7f00'/><circle cx='200' cy='200' r='180' fill='yellow'/><circle cx='200' cy='200' r='170' fill='lime'/><circle cx='200' cy='200' r='160' fill='blue'/><circle cx='200' cy='200' r='150' fill='indigo'/><circle cx='200' cy='200' r='140' fill='#8f00ff'/><circle cx='200' cy='200' r='130' fill='white'/></svg>

শুভকামনা এই উত্তরটি মারধর করুন, নন-ইসলং ব্যবহারকারীগণ!


2
এই অজগর লিপিটি কি পাবলিক? আমি এমন এক বন্ধুর জন্য জিজ্ঞাসা করছি, যিনি খুব অলস ....
NaCl

এরম, এক্সডি বাস্তবায়নে আক্ষরিক ~ 2 মিনিট সময় লাগে আপনি এখানে একটি পুরানো সংস্করণ খুঁজে পেতে এবং প্রয়োজনে এটি সামঞ্জস্য করতে পারেন: মিডিয়াফায়ারডাউনলোড / ডাউনলোড/0 isocsb81n7r2cv / piet.py (দ্রষ্টব্য: আমি যখন 10 বছর ছিলাম তখন কোডটি বিব্রতকর কমপক্ষে বলতে) - এটির জন্য পাইপএনজি ইনস্টল করা দরকার।
theonlygusti

15

পাইথ, 150 149 128 বাইট

"<svg viewBox=0,0,400,200>"V8s["<circle cx=200 cy=200 r="-200*TN" fill="@c"red #ff7f00 #ff0 #0f0 #00f indigo #8f00ff #fff"dN" />

এসভিজির ফলাফল:

<svg viewBox=0,0,400,200>
<circle cx=200 cy=200 r=200 fill=red />
<circle cx=200 cy=200 r=190 fill=#ff7f00 />
<circle cx=200 cy=200 r=180 fill=#ff0 />
<circle cx=200 cy=200 r=170 fill=#0f0 />
<circle cx=200 cy=200 r=160 fill=#00f />
<circle cx=200 cy=200 r=150 fill=indigo />
<circle cx=200 cy=200 r=140 fill=#8f00ff />
<circle cx=200 cy=200 r=130 fill=#fff />

রামধনু

ধন্যবাদ @MamaFunRoll 16 বাইট এবং জন্য @PatrickRoberts 6 জন্য আরো!


2
আপনি সম্ভবত স্ট্রিংগুলি প্যাক করে প্রচুর বাইট সংরক্ষণ করতে পারেন।
একটি স্প্যাগেটো

@ অ্যাকোয়াআর্ট যা কিছু করে তা বাইটস যুক্ত করে। ও_ও
ডোরকনবব

3
আমি মনে করি না আপনার কোনও উদ্ধৃতি, শেষের স্ল্যাশ বা শেষ সমাপ্তি </svg>ট্যাগের প্রয়োজন।
মামা ফান রোল

4
দুই প্রস্তাবনা: red #ff7f00 #ff0 #0f0 #00f #8f00ff #fffসব পরামিতির মান বন্ধ একক উদ্ধৃতি তাদের (ইন স্পেস না থাকে যে নিতে রঙ তালিকার জন্য এবং cx, cy, rএবং fill) কিন্তু নিশ্চিত ভরাট মান মধ্যে একটি স্থান ত্যাগ করার /তাই রঙ ভুল ব্যাখ্যা না হয়ে যায় । </svg>উপরের পরামর্শ অনুযায়ী মুছে ফেলুন ।
প্যাট্রিক রবার্টস

1
দুঃখিত, আমি বোঝানো red #ff7f00 #ff0 #0f0 #00f indigo #8f00ff #fff। এছাড়াও যদি আপনি কমাগুলির সাথে স্পেসগুলি প্রতিস্থাপন করেন তবে আপনি viewBoxসেই প্যারামিটারের জন্য একক উদ্ধৃতিও সরাতে পারেন।
প্যাট্রিক রবার্টস

14

মাইনক্রাফ্ট 1.10 (প্রায়), 2677 অক্ষর ওয়ান-কমান্ড, 868 ব্লাইট

ঠিক আছে আমি অবশ্যই একটি ভার্জোজ ভাষা বেছে নিয়েছি।

summon FallingSand ~ ~1 ~ {Block:log,Time:1,Passengers:[{id:FallingSand,Block:redstone_block,Time:1,Passengers:[{id:FallingSand,Block:activator_rail,Time:1,Passengers:[{id:MinecartCommandBlock,Command:"summon ArmorStand ~ ~ ~ {Tags:[\"b\"]}"},{id:MinecartCommandBlock,Command:"summon Pig ~ ~ ~ {NoAI:1b}"},{id:MinecartCommandBlock,Command:setblock ~-1 ~-2 ~6 chain_command_block 3 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=200] ~ ~ ~ tp @e[c=1] ~ -99 ~"}},{id:MinecartCommandBlock,Command:setblock ~-1 ~-2 ~5 chain_command_block 3 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=190,r=200] ~ ~ ~ setblock ~ ~ ~ wool 14"}},{id:MinecartCommandBlock,Command:setblock ~-1 ~-2 ~4 chain_command_block 3 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=180,r=190] ~ ~ ~ setblock ~ ~ ~ wool 1"}},{id:MinecartCommandBlock,Command:setblock ~ ~-2 ~4 chain_command_block 4 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=170,r=180] ~ ~ ~ setblock ~ ~ ~ wool 4"}},{id:MinecartCommandBlock,Command:setblock ~ ~-2 ~5 chain_command_block 2 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=160,r=170] ~ ~ ~ setblock ~ ~ ~ wool 13"}},{id:MinecartCommandBlock,Command:setblock ~ ~-2 ~6 chain_command_block 2 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=150,r=160] ~ ~ ~ setblock ~ ~ ~ wool 11"}},{id:MinecartCommandBlock,Command:setblock ~ ~-2 ~7 chain_command_block 2 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=140,r=150] ~ ~ ~ setblock ~ ~ ~ wool 10"}},{id:MinecartCommandBlock,Command:setblock ~ ~-2 ~8 chain_command_block 2 replace {auto:1,Command:"execute @e[tag=b] ~ ~ ~ execute @e[rm=130,r=140] ~ ~ ~ setblock ~ ~ ~ wool 2"}},{id:MinecartCommandBlock,Command:setblock ~1 ~-2 ~8 chain_command_block 4 replace {auto:1,Command:"tp @e[type=Cow] ~1 ~ ~"}},{id:MinecartCommandBlock,Command:setblock ~1 ~-2 ~7 chain_command_block 3 replace {auto:1,Command:"tp @e[type=Bat] ~-1 ~ ~"}},{id:MinecartCommandBlock,Command:setblock ~1 ~-2 ~6 chain_command_block 3 replace {auto:1,Command:"execute @e[type=Pig] ~ ~ ~ summon Bat ~ ~ ~ {NoAI:1b}"}},{id:MinecartCommandBlock,Command:setblock ~1 ~-2 ~5 chain_command_block 3 replace {auto:1,Command:"execute @e[type=Pig] ~ ~ ~ summon Cow ~ ~ ~ {NoAI:1b}"}},{id:MinecartCommandBlock,Command:setblock ~1 ~-2 ~4 repeating_command_block 3 replace {auto:1,Command:"tp @e[type=Pig] ~ ~1 ~"}},{id:MinecartCommandBlock,Command:setblock ~ ~ ~1 command_block 0 replace {Command:fill ~ ~-3 ~-1 ~ ~ ~ air}},{id:MinecartCommandBlock,Command:setblock ~ ~-1 ~1 redstone_block},{id:MinecartCommandBlock,Command:kill @e[type=MinecartCommandBlock,r=1]}]}]}]}

একটি নতুন সুপারফ্ল্যাট ওয়ার্ল্ড করুন, সেই গণ্ডগোলটি ইমপালস কমান্ড ব্লকে আটকান, আপনার রেন্ডার দূরত্বটি বেশ উচ্চতর সেট করুন এবং এটি চালান। আপনার কম্পিউটারটি স্থগিত হওয়া বন্ধ হয়ে গেলে আর্ম স্ট্যান্ডটি ভাঙ্গুন।

অনুরোধ হিসাবে ফলাফলটি 400 টি ব্লক এবং 200 টি ব্লক লম্বা।

আমি মিঃ গ্রের্ত্তোর এক কমান্ড জেনারেটরটি সমস্ত কিছু একসাথে প্যাক করতে ব্যবহার করেছি এবং তারপরে আরও কয়েকটা বাইট সংরক্ষণ করার জন্য সেই ফলাফলটি কিছুটা সংশোধন করেছি। এখানে এটি ইনপুট:

INIT:summon ArmorStand ~ ~ ~ {Tags:["b"]}
INIT:summon Pig ~ ~ ~ {NoAI:1b}
tp @e[type=Pig] ~ ~1 ~
execute @e[type=Pig] ~ ~ ~ summon Cow ~ ~ ~ {NoAI:1b}
execute @e[type=Pig] ~ ~ ~ summon Bat ~ ~ ~ {NoAI:1b}
tp @e[type=Bat] ~-1 ~ ~
tp @e[type=Cow] ~1 ~ ~
execute @e[tag=b] ~ ~ ~ execute @e[rm=130,r=140] ~ ~ ~ setblock ~ ~ ~ wool 2
execute @e[tag=b] ~ ~ ~ execute @e[rm=140,r=150] ~ ~ ~ setblock ~ ~ ~ wool 10
execute @e[tag=b] ~ ~ ~ execute @e[rm=150,r=160] ~ ~ ~ setblock ~ ~ ~ wool 11
execute @e[tag=b] ~ ~ ~ execute @e[rm=160,r=170] ~ ~ ~ setblock ~ ~ ~ wool 13
execute @e[tag=b] ~ ~ ~ execute @e[rm=170,r=180] ~ ~ ~ setblock ~ ~ ~ wool 4
execute @e[tag=b] ~ ~ ~ execute @e[rm=180,r=190] ~ ~ ~ setblock ~ ~ ~ wool 1
execute @e[tag=b] ~ ~ ~ execute @e[rm=190,r=200] ~ ~ ~ setblock ~ ~ ~ wool 14
execute @e[tag=b] ~ ~ ~ execute @e[rm=200] ~ ~ ~ tp @e[c=1] ~ -99 ~

এটি মোট 15 1.9+ কমান্ড ব্লক, এবং 838 বাইট, সুতরাং 15 * 2 + 838 = 868 ব্লাইট

এখানে (প্রায়) অংশটি রয়েছে, এটি একটি কোণ এবং প্রান্ত হারিয়েছে। এটি যৌক্তিকভাবে করা উচিত নয় - মাইনক্রাফ্ট বাগ? যদি এটি না হয় তবে হুবহু 400x200 ব্লক হবে। আমি বেশি কিছু করতে পারি না।

Rainboom


4
হ্যাঁ, শূকর ভিত্তিক রেইনবো জেনারেটর! +1
14-15 এ টুকসক্রাফটিং

যদি এটি 2677 অক্ষর হয় তবে এটি কেবল 868 "ব্লাইট" কীভাবে হতে পারে? সেই পৃষ্ঠাটি আমি কীভাবে বুঝতে পারি তার থেকে আসল ব্লাইটগুলি 2677 + 4 হওয়া উচিত
Theonlygusti

এটি আপনি যদি এটি পৃথিবীতে তৈরি করেন তবে এটি 868, 2677 যদি আপনি এটি তৈরির জন্য ফলসিং ব্যবহার করেন (যার প্রচুর ওভারহেড রয়েছে)
কোয়াট

12

গণিত 152 144 126 বাইট

Graphics@MapIndexed[{#,Disk[{0,0},4-#/5&@@#2,{Pi,0}]}&,RGBColor/@TextWords@"#f00 #ff7f00 #ff0 #0f0 #00f #4b0082 #8f00ff #fff"]

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

8 বিট কেটে শেভ করার জন্য @ ক্যাটস আরেফ্লফিকে ধন্যবাদ এবং আরও 18 এর জন্য @ এনজিপিপোরগান :)


3
#বনাম #[[1]], #2বনাম #[[2]]এবং @@@বনাম ব্যবহার করুন /@
ক্যালকুলেটরফলাইন

1
এছাড়াও, Threadপরিবর্তে কাজ করে Transpose
LegionMammal978

1
Graphics@MapIndexed[{#,Disk[{0,0},4-#/5&@@#2,{Pi,0}]}&,RGBColor/@TextWords@"#f00 #ff7f00 #ff0 #0f0 #00f #4b0082 #8f00ff #fff"]আরও 18 বাইট সংরক্ষণ করে, তবে ধারণাটি একই।
এনজিপিপোরগান

1
শুধু জানতে আগ্রহী ... হয় একটি "রামধনু builtin"?
mbomb007

@ mbomb007 যে আমি সচেতন তা নয়!
মার্টিন

8

ভীম, 165 142 139

i<svg viewBox=0,0,400,200><cr><circle cx=2<C-n> cy=2<C-n> r=2<C-n> fill=red<cr>#ff7f00<cr>#ff0<cr>#0f0<cr>#00f<cr>indigo<cr>#8f00ff<cr>#fff<esc>2Gqq0y4f=jPBB10<C-x>@qq@qV2G:norm A /><cr>

ইয়েশ, এটি আড়ষ্ট। উন্নতি হতে পারে যা করা যেতে পারে।

আমার পাইথ উত্তরের মতো এসভিজি হিসাবে আউটপুট ।

3 টি বাইট শেভ করার জন্য @ মাইএইচএমডিজেকে ধন্যবাদ !


আপনি আপনার শেষ প্রাক্তন কমান্ডটিkv3G:norm A'/><cr>
ডিজেএমসিএমহেম

আপনি যদি <circle cx...প্রথম বার 2 লাইনে স্ট্রিংটি প্রবেশ করেন , তবে সমস্ত রং টাইপ করে তারপরে প্রবেশ করিয়ে দিলে আপনি আরও 3 টি ছাড়তে পারেন ।
DJMcMayhem

8

এইচটিএমএল + এসভিজি + ইএস 6, 169

<svg width=400 viewBox=0,0,40,20 onload="this.innerHTML=`f00
ff7f00
ff0
0f0
00f
4b0082
8f00ff
fff`.replace(/.+/g,c=>`<circle cx=20 cy=20 r=${--r} fill=#${c} />`,r=21)"/>


ব্যবহার height=200এবং cx=200 cy=200 r=${--r}0পরিবর্তে viewBox='0 0 40 20'। এটি 7 বাইট সংরক্ষণ করা উচিত।
প্যাট্রিক রবার্টস

আমি আশা করি ঠিক আছে যে আমি .replaceপদ্ধতিটি দিয়ে আপনার ধার ধার নিয়েছি ...
প্যাট্রিক রবার্টস

@ পেট্রিক রবার্টস অবশ্যই এটি ঠিক আছে, আমি আপনার কিছু ধার
নিয়েছি

5
আমি অবশ্যই r-=1কোড গল্ফটিতে দেখার আশা করিনি ...
নিল

@ নীল বাহ! এটি ছিল - = 10 চূড়ান্ত প্রকাশের আগে কিছু পুনরাবৃত্তিতে
edc65


6

জাভাস্ক্রিপ্ট (ES6), 171 158 বাইট

document.write`<svg width=400 height=200>${`f00
ff7f00
ff0
0f0
00f
4b0082
8f00ff
fff`.replace(/.+/g,c=>`<circle cx=200 cy=200 r=${i--}0 fill=#${c} />`,i=20)}`

ধারণাটি রূপান্তর করতে @ edc65 এ ক্রেডিট

`[...].map((c,i)=>...)`

থেকে

`...`.replace(/.+/g,c=>...,i=20)

এটি আরও দীর্ঘ দেখায় তবে অ্যারেটি স্ট্রিংয়ের সাথে সংকুচিত করে সংরক্ষণ করা বাইটের পরিমাণ রূপান্তরটির পক্ষে যথেষ্ট। (এটি এই ক্ষেত্রে 13 বাইট সঞ্চয় করে)

ডেমো

document.write`<svg width=400 height=200>${`f00
ff7f00
ff0
0f0
00f
4b0082
8f00ff
fff`.replace(/.+/g,c=>`<circle cx=200 cy=200 r=${i--}0 fill=#${c} />`,i=20)}`


6

এইচটিএমএল (162) + সিএসএস (146)

body{height:200px;width:400px}div{height:100%;box-sizing:border-box;border-radius:50% 50% 0 0/100% 100% 0 0;border:solid;border-width:10px 10px 0}
<div style=color:red><div style=color:#FF7F00><div style=color:#FF0><div style=color:#0F0><div style=color:#00F><div style=color:#4B0082><div style=color:#8F00FF>


এইচটিএমএল (224) + সিএসএস (128)

body{height:200px;width:400px}div{height:100%;box-sizing:border-box;border-radius:50% 50% 0 0/100% 100% 0 0;padding:10px 10px 0}
<div style=background:red><div style=background:#FF7F00><div style=background:#FF0><div style=background:#0F0><div style=background:#00F><div style=background:#4B0082><div style=background:#8F00FF><div style=background:#FFF>


5

স্পেসবিএএস - 318 254 বাইট

যদি আমরা রংধনু আঁকতে থাকি তবে জেডএক্স স্পেকট্রাম বেসিকের উত্তরসূরিটি ব্যবহার করার জন্য এটি একটি ভাল জায়গা বলে মনে হচ্ছে।

1 p,k=20,x1=0,x2=400,y=200
2 FOR EACH s IN [16711680,16744192,16776960,65280,255,4915330,9371903]: PALETTE p,s: INC p: NEXT s
3 CLS 15: DRAW 0,200 TO 70,200: DRAW 330,200 TO 400,200
4 FOR i=1 TO 7
5 INK k: DRAW x1,y TO x2,y,-PI: DRAW x1+10,y TO x2-10,y,-PI: FILL x1+5,190
6 x1+=10,x2-=10,k+=1
7 NEXT i

লাইন 2 স্ট্যান্ডার্ড স্পেকট্রামের রঙ মেলে না বলে প্রয়োজনীয় নির্দিষ্ট আরজিবি মানগুলির জন্য প্যালেট সেট আপ করে (এবং সম্ভবত বাইট গণনাটি সহায়তা করছে না)।

DRAWকমান্ড একটি অতিরিক্ত প্যারামিটার যা একটি নম্বর দিয়ে চালু তোলে নিতে পারেন ডিগ্রী X1, Y1 এবং x2, Y2 মধ্যে রেডিয়ানে। অবশেষে এটি অর্ধবৃত্তগুলিতে সবেমাত্র আঁকা একটি ফাঁক খুঁজে পায় এবং বন্যা বর্তমান রঙে পূর্ণ হয়।

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


5

টিসিএল / টাকা , 263 বাইট

canvas .c -bg #FFF -bo 0 -highlightt 0;pack .c -e 1 -f both;wm ge . 400x200;foreach {r c} {200 #FF0000 190 #FF7F00 180 #FFFF00 170 #00FF00 160 #0000FF 150 #4B0082 140 #8F00FF 130 #FFF} {.c cr o -$r -$r $r $r -outline $c -f $c};after 100 {.c x s -5 u;.c y s -10 u}

হায়রে, এই ধরণের প্রশ্ন সর্বদা কিছু গৌরবময় ভাষার পক্ষপাতী হয় ... যেটি বলেছিল, টিসিএল / টাকা সত্যিই গ্রাফিক্স অপারেশনগুলিকে সমস্তরকম করে তোলে: সহজ, সংক্ষিপ্ত এবং পাঠযোগ্য

এটি বলেছিল, আমি যতটা সম্ভব কম অক্ষর পর্যন্ত বিকল্পগুলি সঙ্কুচিত করতে পাঠযোগ্যতার ত্যাগ করেছি। রঙগুলির তালিকা ক্রাঙ্ক করা কোডটিকে আনপ্যাক করার তুলনায় অনেক বেশি সহায়তা করবে বলে আমি ভাবিনা ...

তুলনা করার জন্য, এখানে আনক্রাচড কোড (380 বাইট):

canvas .c -bg #FFF -borderwidth 0 -highlightthickness 0
pack .c -expand yes -fill both
wm geometry . 400x200
foreach {r c} {
  200 #FF0000 
  190 #FF7F00 
  180 #FFFF00 
  170 #00FF00 
  160 #0000FF 
  150 #4B0082 
  140 #8F00FF 
  130 #FFFFFF
} {
  .c create arc -$r -$r $r $r -extent 180 -outline $c -fill $c
}
after 100 {
  .c xview scroll -5 units
  .c yview scroll -10 units
}

দ্য afterকমান্ড দুর্ভাগ্যবশত প্রয়োজন ছিল যেহেতু (ক্যানভাস এর তুল্য বংশোদ্ভুত) কোন স্ক্রলিং সামনে জানালা পর্দায় ম্যাপ করা হয় করা যাবে।

এছাড়াও, ক্র্যাঞ্চড কোডটি আসলে একটি পূর্ণ অঙ্কন করে (একটি চাপকে পরিবর্তে একটি বৃত্ত ব্যবহার করে) এবং কেবল উইন্ডো ক্লিপিংয়ের উপর নির্ভর করে ...

যাইহোক, আমি আশা করি আপনি সব উপভোগ করবেন। হে)


আপনি সংক্ষিপ্ত করার lmapপরিবর্তে ব্যবহার করতে পারেন foreach
সার্জিওল

এবং আপনি দ্বিতীয়টির মতো প্রথম লাইনটি লাগাতে পারেন:pack [canvas .c -bg #FFF -bo 0 -highlightt 0] -e 1 -f both
সার্জিওল

আপনার কোডের দুটি সংস্করণের মধ্যে একটি অসঙ্গতি রয়েছে। গল্ফড করে create oval; অসম্পূর্ণ না create arc। আপনি দয়া করে ব্যাখ্যা করতে পারেন?
সার্জিওল

মন্তব্যের জন্য ধন্যবাদ. অসম্পূর্ণ সংস্করণটি পাঠযোগ্যতার জন্য, বাস্তবায়নের নির্ভুলতার জন্য নয়। এবং হায়, আমি ফিরে যাব না এবং আমার সমস্ত ভবিষ্যতটি ঠিক করতে যাচ্ছি না -> এলএম্যাপ; এটি পাঠকের জন্য ছেড়ে দেওয়া যেতে পারে ...: ও)
দথোমাস

5

ল্যাটেক্স, 290 বাইট

\documentclass{proc}\input tikz\begin{document}\def\z#1!#2!#3!#4!{\definecolor{t}{rgb}{#1,#2,#3}\fill[color=t](200pt,0)circle(#4pt);}\tikz{\clip(0,0)rectangle(400pt,200pt);\z1!0!0!200!\z1!.5!0!190!\z1!1!0!180!\z0!1!0!170!\z0!0!1!160!\z.29!0!.51!150!\z.56!0!1!140!\z1!1!1!130!}\end{document}

এখানে চেষ্টা করুন

ব্যাখ্যা

\documentclass{proc}
\input tikz
\begin{document}

    %Define macro "\z" with 4 arguments.         
    % The first 3 arguments are rgb values for the color
    % Last argument is the radius in pt that we draw a full circle with

    \def\z#1!#2!#3!#4!
        {\definecolor{t}{rgb}{#1,#2,#3}
         \fill[color=t](200pt,0)circle(#4pt);}

    % Start a Tikz figure

    \tikz{

        % We only draw the top half of the circle

        \clip(0,0)rectangle(400pt,200pt);

        % Draw each circle from biggest to smallest

        \z1!0!0!200!
        \z1!.5!0!190!
        \z1!1!0!180!
        \z0!1!0!170!
        \z0!0!1!160!
        \z.29!0!.51!150!
        \z.56!0!1!140!

        % Draw a white circle last

        \z1!1!1!130!
    }
\end{document}

যোগ করা লিঙ্কটির জন্য ধন্যবাদ
প্রাণঘাতী

4

জাভা, 354 বাইট

public void r() throws IOException{BufferedImage i=new BufferedImage(400,200,2);Graphics2D g=i.createGraphics();g.setStroke(new BasicStroke(10));int[]c={0xFF0000,0xFF7F00,0xFFFF00,0xFF00,255,0x4B0082,0x8F00FF};for(int v=0;v<7;v ++){g.setColor(new Color(c[v]));g.drawArc(v*10+5,v*10+5,390-v*20,390-v*20,0,360);}ImageIO.write(i,"PNG",new File("a.png"));}}

শুধু ব্যবহার করে Graphics2Dরঙগুলি সংরক্ষণ করার জন্য একটি অ্যারে সহ কেবল 7 টি আর্ক আঁকার ক্লাসটি । আমি নিশ্চিত এটি আরও উন্নত করা যেতে পারে।

অবহেলিত কোড:

public void ungolfed() throws IOException {
        BufferedImage i = new BufferedImage(400, 200, 2); // 2 is TYPE_INT_ARGB
        Graphics2D g = i.createGraphics();
        g.setStroke(new BasicStroke(10));
        int[] c = {0xFF0000, 0xFF7F00, 0xFFFF00, 0x00FF00, 0x0000FF, 0x4B0082, 0x8F00FF};
        for(int v = 0; v < 7; v ++) {
            g.setColor(new Color(c[v]));
            g.drawArc(v * 10 + 5, v * 10 + 5, 390 - v * 20, 390 - v * 20, 0, 360);
        }
        ImageIO.write(i, "PNG", new File("a.png"));
    }

2
আপনার 0x0000ffন্যায্য 0xffবা এমনকি ন্যায়সঙ্গত হতে পারে 255, 0x00ff00সত্তার সাথে একই 0xff00। অন্য বাইট সংরক্ষণ 0xff0000করতে পারে 255<<16। আপনার লুপটি আরও কয়েকটি বাইট সংরক্ষণ করতে পারে। ,qআপনার intঘোষণায় একটি যুক্ত করে আপনি আরও একটি বাইট সংরক্ষণ করতে পারেন । আপনি এটা করতে হবে চাই int c[]=পরিবর্তে int[] cতাই qএকটি হল intএবং একটি int[]। এটি q=390-v*20;করা আপনার লুপটিতে একটি যুক্ত করতে দেয় । এবং 390-v*20একটি q এর সাথে প্রতিস্থাপন করুন । এটি একটি বাইট জন্য অনেক কাজ, কিন্তু একটি বাইট একটি বাইট, তাই না ?!
কর্সিকা

2
আপনি আইওএক্সেপশনের পরিবর্তে কেবল ব্যতিক্রম ছুঁড়ে আরও দুটি বাইট সংরক্ষণ করতে পারেন।
কর্সিকা

আমিও ভাবছি যদি আপনি ব্যবহার করতে পারেন drawOvalএবং কেবল চিত্রের উপরের অর্ধেকটি রেন্ডার করতে পারেন ... তবে এটি আরও কিছুটা ব্যয়বহুল হতে পারে ...
কর্সিকা

আমি জানি এটি প্রায় 1.5 বছর void r()throws Exception{BufferedImage i=new BufferedImage(400,200,2);Graphics2D g=i.createGraphics();g.setStroke(new BasicStroke(10));for(int c[]={255<<16,16744192,16776960,65280,255,4915330,9371903},v=0,t;v<7;g.drawArc(t=v*10+5,t,t=390-v++*20,t,0,360))g.setColor(new Color(c[v]));ImageIO.write(i,"PNG",new File("a.png"));}}
কেটে গেছে

4

বুবলগাম , 139 119 বাইট

Hexdump:

00000000: b329 2e4b 5728 cb4c 2d77 caaf b035 d031  .).KW(.L-w...5.1
00000010: d031 3130 d031 3230 b0e3 b249 ce2c 4ace  .110.120...I.,J.
00000020: 4955 48ae b005 f215 922b c154 1198 4ccb  IUH......+.T..L.
00000030: ccc9 b12d 4a4d 51d0 c7ad ced0 12aa 4e39  ...-JMQ.......N9
00000040: 2dcd 3c0d 2884 4fad 0542 2d7e 85e6 3085  -.<.(.O..B-~..0.
00000050: 0604 149a c115 1aa4 e155 680a 5598 9997  .........Uh.U...
00000060: 9299 9e8f 57a9 09cc 4c0b a07f d2f0 1b6b  ....W...L......k
00000070: 8cf0 1148 2100 0a                        ...H!..

দুঃখের বিষয়, এটি আমার পাইথ উত্তরের চেয়ে ছোট । :(

একই এসভিজি ফাইল উত্পন্ন করে।


4

সিএসএস, 244 242 240 বাইট

body{width:400px;height:200px;background-image:radial-gradient(500px at bottom,#FFF 26%,#8F00FF 26%,#8F00FF 28%,#4B0082 28%,#4B0082 30%,#00F 30%,#00F 32%,#0F0 32%,#0F0 34%,#FF0 34%,#FF0 36%,#FF7F00 36%,#FF7F00 38%,red 38%,red 40%,#FFF 40%)}

সম্পাদনা করুন: Chrome এ বাগের চারপাশে কাজ করে 2 বাইট সংরক্ষণ করা হয়েছে। @ ট্র্যাংআলকে আরও 2 বাইট সংরক্ষণ করা হয়েছে।

দ্রষ্টব্য: স্নিপেট <div>স্ট্যাক স্নিপেটের সীমাবদ্ধতার কারণে ব্যবহার করে ।


দেখে মনে হচ্ছে রংধনুটির বাইরের পটভূমিটি লাল (কমপক্ষে আমার ফোনে)।
স্টিভি গ্রিফিন

@ স্টেভিগ্রিফিন অ্যান্ড্রয়েডের জন্য ফায়ারফক্সে আমার জন্য ভাল কাজ করে। (আমি আমার ফোনের ডিফল্ট ব্রাউজারে স্ট্যাক স্নিপেটগুলি কীভাবে সক্ষম করব সে সম্পর্কে আমি কাজ করতে পারি না))
নীল

ঠিক আছে, কিছুটা অদ্ভুত :-) আমি গ্যালাক্সি এস 6 প্রান্ত বিটিডব্লুতে ক্রোম 49.0.2623.91 ব্যবহার করছি।
স্টিভি গ্রিফিন

@ স্টেভিগ্রিফিন দেখে মনে হচ্ছে এটি উইন্ডোজের জন্য ক্রোমেও ভেঙে গেছে।
নীল

@ স্টিভি গ্রিফিন ঠিক আছে আমার কাছে মনে হয় আমার একটি কার্যনির্বাহী আছে এবং এটি দুটি বাইটও বাঁচায়!
নিল

4

জাভাস্ক্রিপ্ট 271 251

c=document.body.appendChild(document.createElement('canvas'))
x=c.getContext('2d')
c.width=400
r=c.height=200
for(i=0;i<8;x.beginPath(),x.arc(r,r,r-i*10,0,7),x.fillStyle="#"+"FF0000FF7F00FFFF0000FF000000FF4B00828F00FFFFFFFF".substr(i++*6,6),x.fill());


ধন্যবাদ @ স্টেভি গ্রিফিন আমি 10 এর জন্য এই পরিবর্তনটি করেছি তবে গণনাটি নিচে নামার চেষ্টা করা হয়েছে তবে ডোরকনবস পাইথ উত্তর থেকে একটি উপায়!
ওল্ফহ্যামার

আপনি বিচ্ছিন্ন হয়ে { ... }বিভাগের জন্য শেষের অভ্যন্তরে সমস্ত কিছু সরিয়ে নিতে পারেন ,। যেমন for(i=0;i<8;x.beginPath(),x.arg(...etc...))। আমি ভুল না হলে আপনি সম্ভবত slice/ spliceঅফ সাবস্ট্রিও ব্যবহার করতে পারেন। <স্ক্যানভাস> ব্যবহার করে তৈরি করা আরও ছোট হতে পারে .innerHTML। অথবা এমনকি একটি এইচটিএমএল + জেএস উত্তর দেয় এবং <স্ক্যানভাস> এবং এর আইডি দেয় cএবং তারপরে এটি স্বয়ংক্রিয়ভাবে জেএস গ্লোবাল ভেরিয়েবল হিসাবে যুক্ত করা উচিত
ডাউনওয়েট

@ ডাউনগোটের substrএখানে সুবিধা রয়েছে যে এর দ্বিতীয় প্যারামিটারটি দৈর্ঘ্য, অফসেট নয়। গল্ফিং হিসাবে, document.bodyমনে হয় যথেষ্ট সংরক্ষণ প্রদান।
নীল

4

সি, 220 217 213 বাইট

#define X printf("%c",s<169|s/401?y:s
i=8e4,t,y=255;main(s){for(puts("P6 400 200 255");i--;X/288?y:s<195?143:s<225?75:0),X<256|s/360?0:s/323?127:y),X<225&s/195?130:s<256?y:0))s=i/400,t=i%400-200,s=(s*s+t*t)/100;}

আউটপুট পিপিএম (বাইনারি ধরণের)।

সম্পাদনা: @ টুকুসি-র জন্য একটি দম্পতি বাইট সংরক্ষণ করা।

2 সম্পাদনা করুন: আরও বেশি সংরক্ষণের জন্য কোডটি পুনরায় সাজানো।


1
আপনি i;s;t;main()-> এর সাথে একটি বাইট শেভ করতে পারেন s;t;main(i)এবং এর জন্য লুপের বডিটির জন্য নিজের অংশটি রেখে: ;)code1,code2;-> ;code2)code1;(একটি কমা সংরক্ষণ করেছেন!)।
tucuxi

4

গুগল ব্লকলি , 48 টি ব্লক, 75 বাইট

সমাধানটিতে নেভিগেট করতে নীচের জিআইএফ-এ ক্লিক করুন, যেখানে আপনি এটি কীভাবে কাজ করে তার একটি নিবিড় চেহারা পেতে পারেন।
ব্যাখ্যা হিসাবে, আমি মনে করি একটি চিত্র হাজার শব্দের মূল্যবান, এবং এইভাবে একটি জিআইএফ হাজার হাজার চিত্রের মূল্য।

বড় পাঠযোগ্য জিআইএফ লিঙ্ক

দ্রষ্টব্য: ব্লকলি কীভাবে গণনা করতে হবে তা সম্পর্কে আমি নিশ্চিত নই, তাই আমি প্রতিটি ব্লককে 1 বাইট এবং প্রতিটি ভেরিয়েবলকে নিয়মিত উপায়ে গণনা করি, যাতে 0== 1 বাইট,530 == 3 বাইট, Arial== 5 বাইট এবং bold== 4 বাইট।
আমি যে বিশেষ চরিত্রটি আমি রংধনুটি 2 বাইট হিসাবে কেটে ব্যবহার করেছি তা গণনা করেছি। মন্তব্যগুলিতে বাইট কাউন্টের কোনও ভুল বা পরামর্শের প্রতিবেদন করুন


4

পোস্টস্ক্রিপ্ট (৮ by বাইট)

হেক্স ডাম্প:

00000000: 3188 0131 2030 2e35 3631 8800 3120 302e  1..1 0.561..1 0.
00000010: 3237 3888 0030 2e35 3188 0030 8801 3088  278..0.51..0..0.
00000020: 0130 8801 3188 0031 2030 2e35 8800 3188  .0..1..1 0.5..1.
00000030: 0030 87c8 0038 7b34 2031 9287 929d 87c8  .0...8{4 1......
00000040: 0030 2032 9258 3087 b400 9205 9216 9242  .0 2.X0........B
00000050: 880a 92a9 7d92 83                        ....}..

আউটপুট:

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


3

এইচটিএমএল + সিএসএস, 310 307 বাইট

<b style=background:red><b style=background:#ff7f00><b style=background:#ff0><b style=background:lime><b style=background:blue><b style=background:indigo><b style=background:#8f00ff><b style=background:#fff;width:260px;height:130px><style>b{float:left;padding:10px 10px 0 10px;border-radius:300px 300px 0 0}

সুপার-ডুপার অবৈধ মার্কআপ (আপনার ব্রাউজারে সঠিক নাও লাগতে পারে)। কেবল এটি সম্ভব কিনা তা দেখতে চেয়েছিলেন।


আপনি হলুদ পরিবর্তে # এফএফ 0 ব্যবহার করে দুটি বাইট কাটতে পারেন। আপনি স্টাইল অ্যাট্রিবিউটের পরিবর্তে বিগকালার অ্যাট্রিবিউট ব্যবহার করতে সক্ষম হতে পারেন।
কৌতূহলীনি

@ কুরিয়াসনদেনি আপনি whiteঅবশ্যই রঙগুলির সম্পর্কে ঠিক বলেছেন ( ছোটও করা যেতে পারে) - কেন জানি না আমি তা দেখিনি। bgcolorযদিও পোস্ট করার আগে আমি চেষ্টা করেছি , তবে দুর্ভাগ্যক্রমে এটি আর সমর্থিত হয়নি (যাইহোক এখানে ক্রোমে রয়েছে)
ফ্ল্যাম্বিনো

3

পিএইচপি, 285 বাইট

<?php $a=imagecreate(400,200);define("b",255);$c=array(b,b,b,b,0,0,b,127,0,b,b,0,0,b,0,0,0,b,75,0,130,143,0,b,b,b,b);for($i=0;$i<9;$i++){imagefilledellipse($a,200,200,420-$i*20,420-$i*20,imagecolorallocate($a,$c[$i*3],$c[$i*3+1],$c[$i*3+2]));}header("Content-type:png");imagepng($a);?>

আউটপুট:

রংধনু উপভোগ করো!


1
চমৎকার চেষ্টা। তবে দয়া করে নোট করুন যে ফাইলের শেষে পিএইচপি ট্যাগ বন্ধ করা গল্ফ না করার পরেও খারাপ অভ্যাস হিসাবে বিবেচিত হয়। এটি সিএলআই স্ক্রিপ্ট হিসাবে সংক্ষিপ্ত হবে, আপনি header()কলটি এবং এমনকি খোলার পিএইচপি ট্যাগটি এড়াতে পারবেন। লিনাক্সে php -r '$a=imagecreate(400,200);const b=255;for($c=[b,b,b,b,0,0,b,127,0,b,b,0,0,b,0,0,0,b,75,0,130,143,0,b,b,b,b];$i<9;)imagefilledellipse($a,200,200,$r=420-$i*20,$r,imagecolorallocate($a,$c[$j=$i++*3],$c[$j+1],$c[$j+2]));imagepng($a);' | displayকমান্ড প্রম্পট থেকে চালানো এবং এটিকে 227 টি অক্ষর হিসাবে গণনা করা সবচেয়ে সহজ as (পিএইচপি 5.6.11 ব্যবহার করে))
manatwork


3

প্রক্রিয়াজাতকরণ, 196 186 181 179 169 163 বাইট

int d=400,i=0;size(d,d/2);background(-1);int[]c={-65536,-33024,-256,#00ff00,#0000ff,#4b0082,#8f00ff,-1};for(noStroke();i<8;ellipse(200,200,d,d),d-=20)fill(c[i++]);

রামধনু

ক্রিটসি লিথোসকে 10 বাইট সংরক্ষণ করা হয়েছে ... এবং ডিজাইমার জন্য
আরও 6 বাইট ধন্যবাদ


2
বা এর অনুরূপfor(int i=0;i<8;i++)for(int i=0;i++<8;)
কোট

কল করার সময় আপনি ভেরিয়েবলগুলি ব্যবহার করতে পারবেন বলে আমি মনে করি নাsize()
ক্রিটশি লিথোস

@ ক্রিতিক্সিলিথোস আপনার অর্থ কী?
ফ্ল্যাম্বিনো

আমি যখন ভ্যারিয়েবলগুলির সাথে আকারকে প্যারামিটার হিসাবে কল করি, এটি আমাকে একটি ত্রুটি দেয় (চালানোর আগে) যা আমি স্ক্রিনে মাত্রা নির্ধারণ করতে ভেরিয়েবলগুলি ব্যবহার করতে পারি না
ক্রিটিকি লিথোস

background(-1)একাধিক বাইট খাটো background(255), এবং আপনি পরিবর্তন করতে পারেন 255অ্যারের মধ্যে cথেকে -1অন্য বাইট সংরক্ষণ করতে
Kritixi Lithos

2

আর, 184 170 বাইট

স্থির পিক্সেল মাত্রা সহ একটি চিত্র তৈরি করা আর এর সাথে আশ্চর্যজনকভাবে জটিল বলে প্রমাণিত হয়েছে, যার প্লটিং ফাংশনগুলি বেশিরভাগই পরিসংখ্যানবিদদের জন্য। বিশেষত আর লেবেলের জন্য অতিরিক্ত স্থান ছেড়ে যায় এবং অক্ষগুলি সমন্বয় করে আপনি কল করে স্পষ্টভাবে শূন্য-প্রস্থ হিসাবে মার্জিন সেট না করে par

অন্যদিকে কিছু প্রয়োজনীয় রঙ (বিশেষত লাল, হলুদ এবং নীল) ডিফল্ট প্যালেটে পাওয়া যায় এবং কেবল পূর্ণসংখ্যার সূচকগুলির দ্বারা উল্লেখ করা যেতে পারে।

png(,400,200)
par(mar=0*1:4)
plot(as.raster(outer(199:0,-199.5:200,function(y,x)c(rep("white",13),"#8F00FF","#4B0082",4,"green",7,"#FF7F00",2)[1+(x^2+y^2)^.5%%200/10])))

2

ফোরথ সেলুন হাইকু (184 বাইট)

আমি এই ফর্ম্যাটটির সাথে মাত্রা সীমাবদ্ধতাগুলি পূরণ করতে পারি না, তবে আমি যাইহোক এটি ভাগ করে নেওয়া উপযুক্ত বলে মনে করি।

: ^ 2 ** ;
: b 0.9 * dup x .5 - ^ y 2.01 / ^
+ sqrt dup rot > swap rot .045
+ < * * + ;
0 .56 .2 b .29 .25 b 1 .4 b
1 .45 b 1 .5 b 0 1 .35 b 1 .4 b
0.5 .45 b 0 1 .2 b .51 .25 b
1 .3 b

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


2

এক্সেল ভিবিএ, 213 202 196 192 172 বাইট

কোড

বেনামে ভিবিই তাত্ক্ষণিক উইন্ডো ফাংশন যা কোনও ইনপুট নেয় না এবং একটি ভেনুর চিত্র হিসাবে একটি রংধনুকে আউটপুট দেয়, শীট (1) অবজেক্টে

For i=0To 7:j=400-20*i:Set s=Sheet1.Shapes.AddShape(20,10*i,10*i,j,j):s.Fill.ForeColor.RGB=Array(255,32767,65535,65280,-31*4^8,8519755,&HE1008F,-1)(i):s.Line.Visible=0:Next

সাবরুটাইন সংস্করণ

Sub a
For i=0To 7
j=400-20*i
set s=Sheet1.Shapes.AddShape(20,10*i,10*i,j,j)
s.Fill.ForeColor.RGB=Array(255,32767,65535,65280,-31*4^8,8519755,&HE1008F,-1)(i)
s.Line.Visible=0
Next
End Sub

.Adjustments(3)=3/80কল সরাতে এবং একটি 8 ম, সাদা চাপ যুক্ত করার জন্য -11 বাইট

-1ওভার ব্যবহারের জন্য -6 বাইট&HFFFFFF

Sheet1ওভার ব্যবহারের জন্য -3 বাইটSheets(1)

withবিবৃতিতে setবিবৃতিতে রূপান্তর করার জন্য--বাইট

Subবেনামে ভিবিই ফাংশনে রূপান্তর করার জন্য -14 বাইট

আউটপুট

ছবি বা এটি ঘটেনি


1

ডিআইভি গেমস স্টুডিও (184 বাইট)

সংক্ষিপ্ত নয় তবে বেশ সহজ। ডিআইভি ডিফল্ট প্যালেট ব্যবহার করে

PROGRAM r;
local
c[]=22,26,235,41,54,82,249,15,15;
BEGIN
set_mode(400200);
for(x=-80;x<80;x+=10)
y=399-x;
draw(5,c[abs(x)/10],15,0,x,x,y,y);
x+=70*(x<0);END
LOOP;FRAME;END
END

ডিভ গেমস স্টুডিওতে রেইনবো

ব্যাখ্যা

প্রোগ্রাম শুরুর সংজ্ঞা দিন (স্থান সংরক্ষণের জন্য "আর" নাম দেওয়া হয়েছে)

PROGRAM r;

প্যালেট সেটআপ করুন

local
c[]=22,26,235,41,54,82,249,15,15;

BEGIN প্রোগ্রাম কোড

BEGIN

ভিডিও মোডকে 400,200 এ সেট করুন

set_mode(400200);

লুপ এক্স (পূর্বনির্ধারিত ভেরিয়েবল) -80 (যা বিজি হ্যাক) থেকে 80 (7 বর্ণ + সাদা কেন্দ্র)

for(x=-80;x<80;x+=10)

এলিপস সীমাবদ্ধতাগুলি সংজ্ঞায়িত করুন

y=399-x;

এলিপস আঁকুন - প্রথম পুনরাবৃত্তিতে এটি পুরো সাদাতে পর্দার চেয়ে বড় একটি বৃত্ত আঁকবে (সূচি -8)

আঁকুন (প্রকার (5 = ভরা এলিপস), রঙ, অস্বচ্ছতা, x0, y0, x1, y1)

draw(5,c[abs(x)/10],15,0,x,x,y,y);

একবার প্রথম হয়ে গেলে, রেড ব্যান্ড আঁকতে শুরু করতে শূন্য পর্যন্ত এক্স টুকরো টানুন

x+=70*(x<0);

লুপ জন্য শেষ

END

অসীম লুপ, অঙ্কন স্ক্রিন।

LOOP;FRAME;END

শেষ (প্রোগ্রামের শীর্ষে বিগিনের সাথে মেলে)

END

1

পার্ল, 175 + 1 = 176 বাইট

perl -MSVG -E '$z=SVG->new(width=>4e2,height=>2e2);@x=qw/#fff #8f00ff indigo #00f #0f0 #ff0 #ff7f00 red/;$z->circle(cx=>200,cy=>200,r=>200-10*$a++,style=>{fill=>pop@x})for 1..8;say$z->xmlify'

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


1

পিএইচপি, 190 বাইট

imagefill($a=imagecreatetruecolor($r=400,200),0,0,$w=0xffffff);foreach([255<<16,0xff7f00,$w-255,65280,255,4915330,9371903,$w]as$i)imagefilledellipse($a,200,200,$r,20+$r-=20,$i);imagepng($a);

এটি এইভাবে চালান:

php -r 'imagefill($a=imagecreatetruecolor($r=400,200),0,0,$w=0xffffff);foreach([255<<16,0xff7f00,$w-255,65280,255,4915330,9371903,$w]as$i)imagefilledellipse($a,200,200,$r,20+$r-=20,$i);imagepng($a);' | display

ফলাফল চিত্র 1

179 বাইটে তত্ত্বের সাথেও কাজ করছে (তবে চিত্রটি দেখতে খারাপ লাগছে, খারাপ জিডি):

php -r '$r=410;imagesetthickness($a=imagecreatetruecolor(400,200),10);foreach([255<<16,0xff7f00,0xffff00,65280,255,4915330,9371903]as$i)imagearc($a,200,200,$r-=20,$r,1,0,$i);imagepng($a);' | display

ফলাফল 2

এছাড়াও নিখুঁত চিত্র নয়, তবে উপরের (এবং @ 166 বাইট) এর চেয়ে অনেক ভাল:

php -d error_reporting=30709 -r '$a=imagecreatetruecolor($r=400,200);foreach([255<<16,0xff7f00,0xffff00,65280,255,4915330,9371903]as$i)for(;++$$i<21;)imageellipse($a,200,200,$r,$r--,$i);imagepng($a);' | display

ফলাফল 3

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