দক্ষিণ কোরিয়ার পতাকা আঁকুন


58

আমি যখন এই প্রশ্নে হোঁচট খেয়েছি তখন আমার মনে পড়েছিল যে আমি দক্ষিণ কোরিয়ার পতাকা তৈরির জন্যও একবারে সুনির্দিষ্ট নিয়ম দেখেছি। এবং এটি বেশ ভিন্ন নির্মাণ।

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

সূত্র: উইকিপিডিয়া

সুতরাং আপনি এখন এটির একটি সঠিক নির্মাণ আঁকতে পারেন!

সবিস্তার বিবরণী

আপনি ভেক্টর বা রাস্টার গ্রাফিক্স ব্যবহার করে ফাইল বা স্ক্রিনে পতাকাটি রেন্ডার করতে পারেন। যদি আপনার আউটপুটটি রাস্টেরাইজড হয়, আপনার চিত্রের অবশ্যই 450x300 পিক্সেল বা তার বেশি মাত্রা থাকতে হবে।

সমস্ত দৈর্ঘ্যের অনুপাত এবং অবস্থানগুলি নীচের চিত্রের মতো দেখানো উচিত:

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

সূত্র: উইকিপিডিয়া

লক্ষ্য করুন যে দুটি ছোট চেনাশোনাগুলির কেন্দ্রগুলি তির্যকের সাথে সামঞ্জস্য করে।

রঙগুলির জন্য, আপনাকে অবশ্যই নিম্নলিখিত প্যালেটটি ব্যবহার করতে হবে:

  • সাদা: #FFFFFF
  • কালো: # 000000
  • লাল: # C60C30
  • নীল: # 003478

কালো সীমানাটি আঁকতে হবে না যতক্ষণ না আপনার অঙ্কন সিস্টেমটি প্রযুক্তিগত কারণে আপনাকে 3: 2 ক্যানভাস নির্দিষ্ট করতে দেয় না (অন্যথায়, আপনার একটি 3: 2 ক্যানভাস ব্যবহার করা উচিত এবং পতাকাটি সমস্তটি পূরণ করা উচিত)। আপনার যদি সীমানা যুক্ত করার প্রয়োজন হয় তবে এটি নির্বিচারে ঘন হতে পারে - কালো সীমাটির অভ্যন্তরে পতাকাটি কঠোরভাবে বিবেচনা করা উচিত । অন্য কোনও সহায়ক লাইন বা দৈর্ঘ্যের সূচকগুলি আঁকতে হবে না। অর্থাৎ পতাকাটি প্রথম চিত্রের মতোই প্রদর্শিত হবে।

স্কোরিং

এটি কোড গল্ফ, তাই সংক্ষিপ্ত উত্তরটি (বাইটে) জেতে।

সতর্কতা একটি শব্দ, বিদ্যমান সঙ্কোচন ব্যবহার (ক সংকুচিত জিআইএফ এম্বেডিং মত) হিসেবে পড়ে বিভিন্ন মান সমস্যা


2
মজার বিষয় হল, কোরিয়ান পতাকা বাইনারি নম্বর সিস্টেমের একটি প্রাথমিক রূপ ধারণ করে ( britton.disted.camosun.bc.ca/jbbinflag.htm )
ব্রিটিশ

পতাকাটির চেয়ে বড় কোনও HTML পৃষ্ঠা ব্যবহার করার সময়, শ্বেত হওয়া সত্ত্বেও ক্যানভাস / উপাদানটির আকার পতাকাটির সমান হলেও এমনকি কোনও বিচ্ছিন্নতা দেখা যায় না, তখন কি আমাদের সীমানাটি আঁকতে হবে
অপ্টিমাইজার

@ অপ্টিমাইজার, না, যদি ক্যানভাসটি এমনভাবে আবদ্ধ হয় যা কোনওভাবে দৃশ্যমান করা যায় (যেমন আপনার ব্রাউজারের "পরিদর্শন উপাদানটি" ​​হাইলাইট করে) তবে আপনার কোনও সীমানা লাগবে না। কৃষ্ণ সীমানাটি কেবল এমন বিরল ক্ষেত্রে আঁকতে হবে যেখানে ক্যানভাসের সীমা প্রযুক্তিগতভাবে সংজ্ঞায়িত করা যায় না।
মার্টিন ইন্ডার

3
আমি ধরে নিচ্ছি CountryData["ROK","Flag"]গণনা হচ্ছে না?
wchargin

উত্তর:


13

পিএইচপি / এইচটিএমএল / এসভিজি, 324

(সুস্পষ্টতার জন্য লাইন ব্রেকগুলি যুক্ত হয়েছে)

<?=gzinflate(base64_decode('tVHBioMwFPyVwF5WSOzLi/tswQjdu9cevIk1KqtriaFd9utrgpSWFva0PPImMwzDkGTz
uWXnvrl8Tj8aOPAUebLNs5Y5W33PZrKjtpOrXPOuVEy7KMiD54mKMY3yrO5tPTTMaonM9MOg32qCWgHb5Nmpch076kIih/2y
PC4jRRCIU6BhbkwGV7lmAagk3d5nCfwQdKByVBwOFLagQu6exZLNzk5fjU+B9S4u/dF1Gh/apRw6Cb83uzHm0S69/cWbSIkx
YfSf5QT6dkk5UoACIeAfXTftepb/za8='));

সংক্ষিপ্ত তথ্যটি নীচে দেখানো আমার পূর্ববর্তী উত্তর হিসাবে একই এসভিজি ডেটাতে প্রসারিত হয়েছে, তবে সংক্ষেপণের জন্য দুটি পরিবর্তন সহ:

  1. দুটি <use>বিভাগটি বিভাগের মূল সামগ্রীতে প্রসারিত হয়েছে <defs>। এটি উত্স পাঠ্যকে দীর্ঘায়িত করে তবে এন্ট্রপিকে হ্রাস করে যাতে এটি আরও ভালভাবে সংকোচিত হয়।

  2. প্রথম <g>উপাদান, আমি পরিবর্তিত transform=translate(36,24)rotate(33.69)করতে transform=rotate(33.69)translate(43.27)। এটি জ্যামিতিকভাবে একই প্রভাব ফেলে তবে আরও কমপ্রেস করে কারণ ক্রমটি ><g transform=rotate(এখন দু'বার প্রদর্শিত হয়েছে।

ডিফল্টরূপে, পিএইচপি এটি হিসাবে পরিবেশন করবে Content-Type: text/html, তাই অবৈধ এক্সএমএল সিনট্যাক্সের সমস্যা হওয়া উচিত নয়।

এসভিজি / এইচটিএমএল, 463

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

<svg viewBox=0,0,72,48><defs><path d=M-25-6V6Zm3,0V6m3,0V-6M19-6V6Zm3,0V6m3,0V-6Z stroke=#000
stroke-width=2 id=p /></defs><g transform=translate(36,24)rotate(33.69)><circle r=12 fill=#c60c30
/><path d=M12,0A12,12,0,0,1-12,0A6,6,0,0,0,0,0A6,6,0,0,1,12,0Z fill=#003478 /><use xlink:href=#p
/><path d=M17,0h10z stroke=#fff stroke-width=1 /><g transform=rotate(112.62)><use xlink:href=#p
/><path d=M-27,0h4Zm6,0h4ZM20,0h4Z stroke=#fff stroke-width=1 /></g></g></svg>


44

পাইথন + পাইকাইরো, 371 370 366 বাইট

পতাকা

from cairo import*
p=3.141593
c=Context(SVGSurface("F",12,8))
C=c.set_source_rgb;R=c.rectangle;T=c.rotate;F=c.fill
C(1,1,1);R(0,0,12,8);F()
c.translate(6,4);T(.588);b=3188
for o in[(0,.2,.47),(.77,.05,.19)]*2:C(*o);i=b/2%2;b+=1;c.arc(i,0,2-i,0,p+i*p);F();T(p)
C(0,0,0)
for x in(p,1.966)*2:
 for y in.5,0,1:
    for z in-1,1:R(3+y,-z,1./3,z*(2.75+b%2)/3);F()
    b/=2
 T(x)

নামের একটি ক্ষুদ্র এসভিজি ফাইল আউটপুট দেয় F


C(*[.77,0,.05,.2,.19,.47][i::2])সংক্ষিপ্তC(*[(.77,.05,.19),(0,.2,.47)][i%2])
isaacg

কেন আপনি ন্যায়বিচারের s=SVGSurface("F",12,8);c=Context(s)পরিবর্তে লিখবেন c=Context(SVGSurface("F",12,8))?
লিলি চুং

পছন্দ করুন
এলো

32

এইচটিএমএল + সিএসএস, 966 906 843 792 762 বাইট

যে কোনও সময় বিজয়ী নয়, তবে CSS এ প্রচুর মজাদার অঙ্কন। যদিও এটি অনেক গল্ফ করা যেতে পারে।

সিএসএস, এইচটিএমএল :

*{position:fixed}a{background:linear-gradient(0deg,#003478 50%,#C60C30 50%);width:2in;height:2in;transform:rotate(.6rad);top:1in;left:2in}d,e{width:50%;height:50%;background:#C60C30;left:0;top:25%}a,d,e{border-radius:50%}d{background:#003478;left:50%}b,i{width:1in;height:26em;top:-1em;left:15em;transform:rotate(.98rad)}g,f,k,j{width:1in;height:17%;background:repeating-linear-gradient(0deg,#000,#000 1em,#fff 1em,#fff 1.5em);bottom:0;left:0}g,j,p{top:-.5em}b{transform:rotate(-.98rad)}c,p,v,x{height:2em;width:.5em;background:#fff;transform:rotate(.98rad)}p{top:2.8in;left:28em;transform:rotate(-.98rad) scale(1,4)}x{top:3.9em;left:28.4em}c,v{top:23.8em;transform:none}c{top:3.5em}body{height:4in;width:6in;border:1px solid
<a><d><e></a><b><f><g></b><i><j><k></i><p></p><x><v><c

;border:1px solid<body>ট্যাগটিতে যেমন পরিষ্কার পরিসীমা রয়েছে সেগুলি প্রদর্শনের জন্য যা ওপেনের বক্তব্য অনুসারে পরিদর্শক বা অনুরূপ সরঞ্জামগুলি দ্বারা পর্যবেক্ষণ করা যেতে পারে

দ্রষ্টব্য কেবলমাত্র ফায়ারফক্সে (বা ক্রোম ক্যানারি / দেব) ব্যবহারের কারণে বিক্রেতার নির্দিষ্ট নির্দিষ্ট রূপান্তর এবং গ্রেডিয়েন্টের কারণে কাজ করে Works

এটি কর্মে দেখুন


আমি মনে করি আপনার অক্ষর গণনায় আপনার <লিঙ্ক> বা <স্টাইল> ট্যাগগুলি অন্তর্ভুক্ত করা উচিত। আপনি কয়েকটি অক্ষর সংরক্ষণ করতে পারেন: সিএসএসে 0deg-> 0(দুইবার) এবং এখান left:0থেকে সরিয়ে ফেলতে পারেন a:before। এইচটিএমএলে আপনি ব্যবহার করতে পারেন <p><ul></ul>। ( <p>পূর্বে <ul>
স্পষ্টভাবে

1
ফায়ারফক্স 32 এ কাজ করে Saf সাফারি 7.1। এ দর্শনীয়ভাবে ব্যর্থ।
200_সুসেসস

1
সিএসএসের জন্য কম বা SASS ব্যবহার করুন যা আপনাকে এটিকে কিছুটা সংক্ষিপ্ত করার জন্য যথেষ্ট বিকল্প দেয় should অতিরিক্তভাবে :before{content:''}এবং :after{content:''}কেবলমাত্র অন্য উপাদান যুক্ত করার চেয়ে দীর্ঘতর (এটি প্রকৃতপক্ষে আরও ভাল দেখাচ্ছে সত্ত্বেও)।
ডেভিড মুল্ডার

@ ডেভিড মালদার আমি সংক্ষিপ্ত কোডের চেয়ে মজাদার ফ্যাক্টরটি চেয়েছিলাম। মানুষ কম বা Sass :) আরও সহজে বিশুদ্ধ সিএসএস এর সাথে সম্পর্কিত করতে
অপ্টিমাইজার

সর্বশেষতম ক্রোমেও কাজ করে। @ 200_সাকসেস আপনার সমস্ত সাফের -webkit-আগে যোগ করে সাফারিটিতে এটি কাজ করা সক্ষম হওয়া উচিত transform:, তবে এটি বলার অপেক্ষা রাখে না যে এটি একে আরও দীর্ঘতর করে তুলবে!
ডোরকনবব

20

বিবিসি বেসিক, 349 343 ASCII অক্ষর, টোকেনাইজড ফাইলের আকার 330

Http://www.bbcbasic.co.uk/bbcwin/bbcwin.html এ এমুলেটরটি ডাউনলোড করুন

  p=1049q=25r=100VDU4118;275;-1,49,3076;19,7,-1;-1;531;255;7693;q;40;0;q,97,1200;800;29,640;400;
  FORa=38TO56STEP0.01x=r*COS(a)y=r*SIN(a)b=a*7DIV44/2IFb=3.5z=y<0ELSEz=x>0
  VDU18;1,p;-x;-y;q,153,r;0;18;2,p;x;y;q,153,r;0;18;0
  IFABS(y)DIV1=56VDUp;x*b+y;y*b-x;q;x/3;y/3;q,113,-2*y;2*x;18;7:b-=0.1VDUp;x*b+y/12;y*b-x/12;q;x/2;y/2;q,112-z,-y/6;x/6;
  NEXT

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

অবারিত সংস্করণ

  MODE16
  VDU19,1,-1,49,4,12                :REM adjust shade of red 
  VDU19,7,-1,-1,-1,-1               :REM adjust shade of white to full brightness (63 is 2's complement representation of -1
  VDU19,4,-1,0,13,30                :REM adjust shade of blue
  RECTANGLEFILL40,0,1200,800        :REM plot background rectangle
  ORIGIN640,400
  FORa=38TO56STEP0.01
    x=COS(a)*100
    y=SIN(a)*100
    GCOL1:CIRCLEFILL-x,-y,100       :REM red
    GCOL4:CIRCLEFILLx,y,100         :REM blue
    GCOL0                           :REM black
    b=a*7DIV44/2                    :REM divide a by 2*(22/7) to get integer representation, then divide by 2 again.
    IFb=3.5THENz=y<0ELSEz=x>0       :REM decide whether to cut bar
    REM If the angle is correct (100*sin(a) = 56) draw bar. If required, cut out the middle of the bar.
    IFABS(INT(y))=56 MOVEx*b+y,y*b-x:MOVEBY x/3,y/3:PLOT113,-2*y,2*x:GCOL7:b-=0.1:MOVEx*b+y/12,y*b-x/12:MOVEBY x/2,y/2:IFz PLOT113,-y/6,x/6
  NEXT

প্রোগ্রামটির শুরুতে আমি উত্সটিকে পর্দার কেন্দ্রে নিয়ে যাই।

আমি কোনও বড় রঙিন অর্ধেক বৃত্ত আঁকিনা। পরিবর্তে আমি একটি লুপ চালাচ্ছি যা ছোট লাল এবং নীল চেনাশোনাগুলি আঁকবে, অ্যান্টলিক দিকের দিকে ঘুরছে। আমি প্রায় 3 টি সম্পূর্ণ বিবর্তন করি (ডানদিকে নীল দিয়ে শুরু করে) যা সম্ভবত ডিস্কটি পূরণ করার চেয়ে যথেষ্ট বেশি। আমি তৃতীয় বিপ্লবকে থামিয়েছি, যখন নীচের ডানদিকে নীলটি বারগুলির সাথে লাইন করার সঠিক অবস্থানে রয়েছে (যা প্লট করতে হবে))

যখন কোণটি ঠিক থাকে, আমি বারগুলির মধ্যে একটি আঁকি। বর্তমান ছোট নীল বৃত্ত আঁকার জন্য ভেক্টর এক্স, ওয়াইটি বারটি কোন দিকে থাকবে তা জানানোর জন্য। 3 টি বিপ্লবের প্রত্যেকটির জন্য, পূর্ণসংখ্যার একটি পৃথক মান a*7DIV44গণনা করা হয়, যা প্রথম, দ্বিতীয় বা তৃতীয় বারটি আঁকতে হবে কিনা তা জানিয়ে দেয়, এর অভ্যন্তরীণ প্রান্তটি 6 / 8,7 / 8 বা 8/8 ইউনিট থেকে কেন্দ্র থেকে ( প্রশ্ন বিশ্বে ব্যবহৃত ইউনিটগুলি অনুসারে)) প্রোগ্রাম ইউনিটগুলি চশমাগুলির মধ্যে ১/৪ জন, এটি এখনও একটি অর্ধ-ইউনিট, সুতরাং পুনরাবৃত্তি অর্ধেকটি এড়াতে পরিবর্তনশীল tob saving এ সংরক্ষণ করার আগে আমরা আবার ২ দিয়ে বিভক্ত করি we পরে।

বারগুলি শক্ত আঁকা হয়, তবে প্রয়োজনে মাঝখানে মুছে ফেলা হয়। এটি কিঙ্কসকে অর্ধ-বারে যোগ দিতে বাধা দেয়। ভেরিয়েবল z নির্দেশ করে যে কোনও বার কাটা উচিত কিনা। এটি যখন মাঝারি বারগুলির জন্য y নেতিবাচক এবং যখন x অন্যান্য বারগুলির জন্য ইতিবাচক হয়।

MOVEএকটি পরম পদক্ষেপ। MOVEBYএকটি আপেক্ষিক পদক্ষেপ। PLOT133সর্বশেষ দুটি গ্রাফিক্স কার্সার অবস্থান বিবেচনা করে, এবং নতুনটিকে উল্লিখিত (আপেক্ষিক স্থানাঙ্কে) একটি সমান্তরালগ্রামের তিনটি কোণ এবং সমান্তরালগ্রামের প্লট হিসাবে বিবেচনা করে।

আউটপুট (এবং ভাষা সীমাবদ্ধতার আলোচনা)

আমি 1280x800 লজিকাল পিক্সেল = 640x400 শারীরিক পিক্সেলের একটি স্ক্রিন মোড নির্বাচন করেছি, যা ডিফল্টরূপে একটি কালো ব্যাকগ্রাউন্ড রয়েছে। এটির জন্য আমি আমার "ক্যানভাস" হিসাবে অভিনয় করতে -600, -400 থেকে 600,400 পর্যন্ত একটি সাদা আয়তক্ষেত্র অঙ্কন করি।

বিবিসি বেসিক একটি পুনরায় বিতরণযোগ্য প্যালেট থেকে একবারে 16 টি রঙ পরিচালনা করতে পারে। তবে এটি কেবল 18-বিট রঙকে সমর্থন করে, যেখানে প্রশ্নটি 24-বিট হিসাবে রঙগুলি নির্দিষ্ট করে। যতটা সম্ভব রঙগুলি।

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


2
আমি সীমানাটি সম্পর্কে কিছুটা বিশ্লেষণ করেছি। আপনি যেভাবে এটি পরিচালনা করেছেন তা হ'ল এটির উদ্দেশ্য হিসাবে।
মার্টিন ইন্ডার

16

পাইথন 3 টার্টেল ( 552 549 বাইট)

পতাকা

( পূর্ণ আকারের চিত্র )

সম্পাদনা: এখন আমাদের স্ট্যাক স্নিপেটস রয়েছে , এখানে আর্টঅফকোডের উত্তরের সাহায্যে স্কাল্প্ট ব্যবহার করে একটি স্ট্যাক স্নিপেট পরীক্ষা রয়েছে । দুর্ভাগ্যক্রমে, স্কুল্ট পাইথন এখনও সম্পূর্ণরূপে প্রয়োগ করেনি, তাই এটি কাজ করতে আমার অর্ধেক কোডটি বিভক্ত করতে হয়েছিল। অন্য কথায়, এই স্নিপেটটি কেবলমাত্র আমার প্রোগ্রামটি কীভাবে কাজ করে তা নির্দেশ করার জন্য (পাইথনটি টানানোর প্রয়োজন ছাড়াই)।

(এছাড়াও, আমি এটি সন্ধান করছি যে এটি সম্ভবত কিছু ব্রাউজারে কাজ না করে ...)

function out(a){var b=document.getElementById("output");b.innerHTML+=a}function builtinRead(a){if(void 0===Sk.builtinFiles||void 0===Sk.builtinFiles.files[a])throw"File not found: '"+a+"'";return Sk.builtinFiles.files[a]}
$(document).ready(function run(){Sk.canvas="canvas";Sk.configure({output:out,read:builtinRead});try{Sk.importMainWithBody("<stdin>",!1,'import turtle\nimport math\nt=turtle.Turtle()\nt.speed(9)\nR="#c60c30"\nr=56.3\nk=0.6\ns=60*k\noffsetx,offsety=-215,-145\nt.up()\nt.goto(offsetx,offsety)\nt.down()\ndef q():t.rt(90)\ndef Q():t.lt(90)\ndef K():t.color("black");t.begin_fill();q()\ndef A(g,G):t.fd(g);Q();t.fd(G);Q();t.fd(g);Q();t.fd(G);Q()\ndef E():t.up();t.fd(s);t.down();Q();t.end_fill();t.up();t.fd(30*k);t.down();\ndef i():K();t.up();t.bk(s);t.down();A(120*k,20*k);E()\ndef I():K();t.up();t.fd(5*k);t.down();A(55*k,20*k);t.up();t.bk(65*k);t.down();A(55*k,20*k);E()\ndef C():t.circle(120*k,180)\nA(720*k,480*k)\nt.seth(r)\nt.up()\nt.goto(459.8*k+offsetx,173.4*k+offsety)\nt.down()\nt.color(R)\nt.begin_fill()\nC()\nt.end_fill()\nt.begin_fill()\nt.color("#003478")\nC()\nt.circle(s)\nt.end_fill()\nt.color(R)\nC()\nt.begin_fill()\nt.circle(s)\nt.end_fill()\nq()\nt.up()\nt.fd(s)\nt.down()\ni()\ni()\ni()\nt.up()\nt.bk(530*k)\nt.down()\nI()\nI()\nI()\nt.up()\nt.fd(170*k)\nt.rt(2*r)\nt.fd(180*k)\nt.down()\nI()\ni()\nI()\nt.up()\nt.bk(530*k)\nt.down()\ni()\nI()\ni()\n')}catch(a){throw Error(a.toString());}})
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script><script src="http://www.skulpt.org/static/skulpt.min.js" type="text/javascript"></script><script src="http://www.skulpt.org/static/skulpt-stdlib.js" type="text/javascript"></script>
<canvas height="320" width="480" id="canvas" style="border:1px solid gray">Your browser does not support HTML5 Canvas!</canvas>


আসল কোড:

import turtle as t
b=t.begin_fill
c=t.circle
e=t.end_fill
f=t.fillcolor
R="#c60c30"
r=56.3
F=t.fd
B=t.bk
s=60
def q():t.rt(90)
def Q():t.lt(90)
def K():f(0,0,0);b();q()
def A(g,G):exec("F(g);Q();F(G);Q();"*2)
def E():F(s);Q();e();F(30)
def i():K();B(s);A(120,20);E()
def I():K();F(5);A(55,20);B(65);A(55,20);E()
def C():c(120,180)
A(720,480)
t.seth(r)
t.up()
t.goto(459.8,173.4)
f(R)
b()
C()
e()
b()
f("#003478")
C()
c(s)
e()
C()
f(R)
b()
c(s)
e()
q()
F(s)
i()
i()
i()
B(530)
I()
I()
I()
F(170)
t.rt(2*r)
F(180)
I()
i()
I()
B(530)
i()
I()
i()
t.ht()

যেহেতু কচ্ছপটি এরকম ধীরগতি সম্পন্ন, আপনি যদি তাত্ক্ষণিক ফলাফল চান t.tracer(0)আপনি স্ক্রিপ্টটি চালানোর আগে আপনি প্রথম লাইনের পরে যুক্ত করতে পারেন ।

দ্রষ্টব্য: কোনও কারণে টার্টল অতিরিক্ত কালো পিক্সেলের মতো দেখতে আঁকতে থাকে যদিও আমি ইতিমধ্যে ফোন করেছি up()এবং কেন আমার কোনও ধারণা নেই ...


আমি বিশ্বাস করি স্ট্যাক স্নিপেটস পোস্টে কেউ পাইথন (কচ্ছপ সহ!) প্রয়োগ করেছেন; যদি আপনি কীভাবে তা জানতে চেয়েছিলেন তবে আপনি এই নতুন বৈশিষ্ট্যটি প্রথম ব্যবহার করতে পারেন! ;)
ডোরকনবব

@ ডুরকনব আমি আমার কোডটি এটিকে অস্পষ্টভাবে যা করতে চাইছিলাম তা করার জন্য এটি ধ্বংস করতে হয়েছিল তবে কমপক্ষে এটি পাইথনের মতো এখন দৃশ্যত একইভাবে কাজ করবে। (তবে এটি কোনও কারণে আমার ক্রোমে কাজ করে না ...)
Sp3000

2
Chrome iOS এ দুর্দান্ত কাজ করছে fine আমার প্রকল্পের জন্য কারও ব্যবহার খুঁজে পেয়ে খুশি
হলাম

14

এইচটিএমএল + ইএস 6, 388

<canvas id=D width=576 height=384><script>c=D.getContext('2d')
T=x=>c.translate(x*72,x*48)
R=(x,y)=>T(4)+c.rotate(x*.59)+T(-4)+eval('for(i=j=0;i*j<6;i+=(j^=1))c.fillRect(72+24*i+(i>2)*288,144+j*52,16,44+52*(y>>i&1-j))')
A=(w,x,y,z)=>(c.fillStyle=c.fill()+c.beginPath()||w)*c.arc(x*4,192-y,48*y,0,3.1,z)||A
R(-1,21)
R(2,7)
A(r='#C60C30',72,2,1)('#003478',72,2)(0,84,1,1)(r,60,1)()</script>

যদি আপনার ব্রাউজারটি ES6 সমর্থন করে, আপনি এটি জেএসফিডেলে দেখতে বা স্নিপেট চালাতে পারেন।

এটি কয়েকটি মৌলিক আকারের বাইরে পতাকাটি তৈরি করে, কোণগুলির জন্য অ্যাকাউন্টে প্রথমে ক্যানভাস ঘোরানো rot


শুধু একটি নোট এই Chrome 39 কাজ করে না, ff মধ্যে কাজ করে জরিমানা> 29
JBCP

<canvas width=576 height=384 id=D><script>c=D.getContext('2d')9 বাইট কম। এছাড়াও, পুরো পৃষ্ঠাটি সাদা হওয়ায় আমার মনে হয় আপনার সীমানাটি আঁকতে হবে।
অপ্টিমাইজার

@ অপ্টিমাইজার ধন্যবাদ আমি এটি বুঝতে পারি, সীমান্ত কেবল তখনই দরকার যখন আপনার কাছে অনন্ত ক্যানভাস থাকে।
grc

5
আপনি স্ট্যাক স্নিপেটস দিয়ে এটি চেষ্টা করতে পারেন!
বিটা ক্ষয়

@ বেটাডেকে এটি বাস্তবে কাজ করেছে: o
grc

6

গণিত 404 450

b=1&~Array~13;a=ReplacePart[b,7-> 0];d=Disk;r=RGBColor;
z@{q_,p_,s_}:=ArrayPlot[{q,q,{},p,p,{},s,s},Frame-> False,ImageSize-> 155];
m=r@@{0,.2,.5};
o=r@@{.8,0,.2};
t=-19.1;u=-12.75;v=-5;q=-3.33;
Graphics[{Line[{{-36,-24},{36,-24},{36,24},{-36,24},{-36,-24}}],
Inset[Rotate[z@#,#2 125 Degree],#3]&@@@{{{b,a,b},1,{t,u}},{{a,b,a},1,{-t,-u}},
{{a,a,a},-1,{-t,u}},{{b,b,b},-1,{t,-u}}},
{o,d[{0,0},12,{-.2 Pi,.8Pi}],m, d[{0,0},12,{.8Pi,1.8Pi}],o,d[{v,-q},6],m,d[{-v,q},6]}}]

পতাকা


3

সি ++ খুব বড়

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

আমি এটি একটি কালো পটভূমি দিয়ে শুরু করার জন্য সেট আপ করেছি, তারপরে মাঝখানে একটি সাদা বৃত্ত রাখি, তারপরে তাতে লাল এবং নীল বৃত্ত। বাকী লাল এবং নীল যুক্ত করতে পুনরাবৃত্তির পূর্ণ ব্যবহৃত হয়। তারপরে কালো বারগুলি চিহ্নিত করতে সাদা লাইনগুলির সাথে আয়তক্ষেত্রগুলি আঁকুন। কালো পটভূমি সাদা লাইন দিয়ে 4 বিভাগে বিভক্ত করুন এবং প্রতিটি বিভাগকে সাদা করার জন্য 4 পুনরাবৃত্ত ফিলগুলি ব্যবহৃত হয়। 1 টি পাসে এটি করার ফলে সেগফল্ট হত। রেন্ডার করতে এখনও এটি খুব ধীর।

অবরুদ্ধ মূল কোড (লাইব্রেরির বাকী অংশগুলি অনেক বড়, গল্ফ করা কোনও বিষয় নয়)

#include "PPMDraw.h"
#include <iostream>

int main(){
    std::cout << "Drawing Korean Flag" << std::endl;

    int scale = 150;
    int width = 3 * scale;
    int height = 2 * scale;

    int xc = width/2;
    int yc = height/2;

    // coords for the bar corners
    float nwax = -0.773; float nway = -0.813;
    float nwbx = -0.707; float nwby = -0.773;
    float nwcx = -1.000; float nwcy = -0.360;
    float nwdx = -1.050; float nwdy = -0.400;
    float nwex = -0.667; float nwey = -0.747;
    float nwfx = -0.613; float nwfy = -0.693;
    float nwgx = -0.880; float nwgy = -0.293;
    float nwhx = -0.947; float nwhy = -0.333;
    float nwix = -0.560; float nwiy = -0.667;
    float nwjx = -0.507; float nwjy = -0.627;
    float nwkx = -0.773; float nwky = -0.227;
    float nwlx = -0.840; float nwly = -0.267;

    float neax = 0.747; float neay = -0.813;
    float nebx = 0.867; float neby = -0.627;
    float necx = 0.813; float necy = -0.587;
    float nedx = 0.680; float nedy = -0.773;
    float neex = 0.893; float neey = -0.587;
    float nefx = 1.030; float nefy = -0.400;
    float negx = 0.960; float negy = -0.360;
    float nehx = 0.840; float nehy = -0.547;
    float neix = 0.640; float neiy = -0.747;
    float nejx = 0.920; float nejy = -0.333;
    float nekx = 0.853; float neky = -0.293;
    float nelx = 0.587; float nely = -0.693;
    float nemx = 0.533; float nemy = -0.667;
    float nenx = 0.667; float neny = -0.493;
    float neox = 0.600; float neoy = -0.440;
    float nepx = 0.480; float nepy = -0.627;
    float neqx = 0.693; float neqy = -0.440;
    float nerx = 0.813; float nery = -0.267;
    float nesx = 0.747; float nesy = -0.227;
    float netx = 0.627; float nety = -0.400;

    float swax = -0.773; float sway = 0.200;
    float swbx = -0.507; float swby = 0.613;
    float swcx = -0.560; float swcy = 0.653;
    float swdx = -0.840; float swdy = 0.253;
    float swex = -0.880; float swey = 0.280;
    float swfx = -0.760; float swfy = 0.453;
    float swgx = -0.813; float swgy = 0.493;
    float swhx = -0.947; float swhy = 0.320;
    float swix = -0.733; float swiy = 0.507;
    float swjx = -0.613; float swjy = 0.680;
    float swkx = -0.667; float swky = 0.720;
    float swlx = -0.787; float swly = 0.547;
    float swmx = -0.987; float swmy = 0.347;
    float swnx = -0.707; float swny = 0.760;
    float swox = -0.773; float swoy = 0.800;
    float swpx = -1.053; float swpy = 0.387;

    float seax = 0.747; float seay = 0.200;
    float sebx = 0.813; float seby = 0.253;
    float secx = 0.693; float secy = 0.427;
    float sedx = 0.627; float sedy = 0.387;
    float seex = 0.853; float seey = 0.280;
    float sefx = 0.920; float sefy = 0.320;
    float segx = 0.800; float segy = 0.507;
    float sehx = 0.733; float sehy = 0.453;
    float seix = 0.960; float seiy = 0.347;
    float sejx = 1.036; float sejy = 0.387;
    float sekx = 0.893; float seky = 0.573;
    float selx = 0.840; float sely = 0.520;
    float semx = 0.600; float semy = 0.427;
    float senx = 0.667; float seny = 0.467;
    float seox = 0.547; float seoy = 0.653;
    float sepx = 0.480; float sepy = 0.613;
    float seqx = 0.707; float seqy = 0.493;
    float serx = 0.773; float sery = 0.547;
    float sesx = 0.640; float sesy = 0.733;
    float setx = 0.547; float sety = 0.680;
    float seux = 0.813; float seuy = 0.573;
    float sevx = 0.880; float sevy = 0.613;
    float sewx = 0.747; float sewy = 0.800;
    float sexx = 0.693; float sexy = 0.747;

    PPMDraw flag = PPMDraw(width, height);
    flag.fill(0, 0, 0);

    // draw white circle in middle
    flag.set_color(255, 255, 255);
    flag.draw_fill_circle(xc, yc, scale/2);

    // draw red and blue portions of circle
    flag.set_color(255, 0, 0);
    flag.draw_fill_circle(xc - .21*scale, yc - .14*scale, scale/3.9);
    flag.set_color(0, 0, 255);
    flag.draw_fill_circle(xc + .21*scale, yc + .14*scale, scale/3.9);
    flag.set_color(255, 0, 0);
    flag.recursive_fill(xc + .21*scale, yc - .21*scale);
    flag.set_color(0, 0, 255);
    flag.recursive_fill(xc - .21*scale, yc + .21*scale);

    // draw the northwest bars
    flag.set_color(255, 255, 255);

    flag.draw_line(xc + nwax*scale, yc + nway*scale, xc + nwbx*scale, yc + nwby*scale);
    flag.draw_line(xc + nwax*scale, yc + nway*scale, xc + nwdx*scale, yc + nwdy*scale);
    flag.draw_line(xc + nwbx*scale, yc + nwby*scale, xc + nwcx*scale, yc + nwcy*scale);
    flag.draw_line(xc + nwcx*scale, yc + nwcy*scale, xc + nwdx*scale, yc + nwdy*scale);

    flag.draw_line(xc + nwex*scale, yc + nwey*scale, xc + nwfx*scale, yc + nwfy*scale);
    flag.draw_line(xc + nwex*scale, yc + nwey*scale, xc + nwhx*scale, yc + nwhy*scale);
    flag.draw_line(xc + nwfx*scale, yc + nwfy*scale, xc + nwgx*scale, yc + nwgy*scale);
    flag.draw_line(xc + nwhx*scale, yc + nwhy*scale, xc + nwgx*scale, yc + nwgy*scale);

    flag.draw_line(xc + nwix*scale, yc + nwiy*scale, xc + nwjx*scale, yc + nwjy*scale);
    flag.draw_line(xc + nwix*scale, yc + nwiy*scale, xc + nwlx*scale, yc + nwly*scale);
    flag.draw_line(xc + nwjx*scale, yc + nwjy*scale, xc + nwkx*scale, yc + nwky*scale);
    flag.draw_line(xc + nwlx*scale, yc + nwly*scale, xc + nwkx*scale, yc + nwky*scale);
    //NE
    flag.draw_line(xc + neax*scale, yc + neay*scale, xc + nebx*scale, yc + neby*scale);
    flag.draw_line(xc + neax*scale, yc + neay*scale, xc + nedx*scale, yc + nedy*scale);
    flag.draw_line(xc + nebx*scale, yc + neby*scale, xc + necx*scale, yc + necy*scale);
    flag.draw_line(xc + necx*scale, yc + necy*scale, xc + nedx*scale, yc + nedy*scale);

    flag.draw_line(xc + neex*scale, yc + neey*scale, xc + nefx*scale, yc + nefy*scale);
    flag.draw_line(xc + neex*scale, yc + neey*scale, xc + nehx*scale, yc + nehy*scale);
    flag.draw_line(xc + nefx*scale, yc + nefy*scale, xc + negx*scale, yc + negy*scale);
    flag.draw_line(xc + nehx*scale, yc + nehy*scale, xc + negx*scale, yc + negy*scale);

    flag.draw_line(xc + neix*scale, yc + neiy*scale, xc + nejx*scale, yc + nejy*scale);
    flag.draw_line(xc + neix*scale, yc + neiy*scale, xc + nelx*scale, yc + nely*scale);
    flag.draw_line(xc + nejx*scale, yc + nejy*scale, xc + nekx*scale, yc + neky*scale);
    flag.draw_line(xc + nelx*scale, yc + nely*scale, xc + nekx*scale, yc + neky*scale);

    flag.draw_line(xc + nemx*scale, yc + nemy*scale, xc + nenx*scale, yc + neny*scale);
    flag.draw_line(xc + nemx*scale, yc + nemy*scale, xc + nepx*scale, yc + nepy*scale);
    flag.draw_line(xc + nepx*scale, yc + nepy*scale, xc + neox*scale, yc + neoy*scale);
    flag.draw_line(xc + nenx*scale, yc + neny*scale, xc + neox*scale, yc + neoy*scale);

    flag.draw_line(xc + neqx*scale, yc + neqy*scale, xc + nerx*scale, yc + nery*scale);
    flag.draw_line(xc + neqx*scale, yc + neqy*scale, xc + netx*scale, yc + nety*scale);
    flag.draw_line(xc + nerx*scale, yc + nery*scale, xc + nesx*scale, yc + nesy*scale);
    flag.draw_line(xc + netx*scale, yc + nety*scale, xc + nesx*scale, yc + nesy*scale);

    //sw
    flag.draw_line(xc + swax*scale, yc + sway*scale, xc + swbx*scale, yc + swby*scale);
    flag.draw_line(xc + swax*scale, yc + sway*scale, xc + swdx*scale, yc + swdy*scale);
    flag.draw_line(xc + swbx*scale, yc + swby*scale, xc + swcx*scale, yc + swcy*scale);
    flag.draw_line(xc + swcx*scale, yc + swcy*scale, xc + swdx*scale, yc + swdy*scale);

    flag.draw_line(xc + swex*scale, yc + swey*scale, xc + swfx*scale, yc + swfy*scale);
    flag.draw_line(xc + swex*scale, yc + swey*scale, xc + swhx*scale, yc + swhy*scale);
    flag.draw_line(xc + swfx*scale, yc + swfy*scale, xc + swgx*scale, yc + swgy*scale);
    flag.draw_line(xc + swhx*scale, yc + swhy*scale, xc + swgx*scale, yc + swgy*scale);

    flag.draw_line(xc + swix*scale, yc + swiy*scale, xc + swjx*scale, yc + swjy*scale);
    flag.draw_line(xc + swix*scale, yc + swiy*scale, xc + swlx*scale, yc + swly*scale);
    flag.draw_line(xc + swjx*scale, yc + swjy*scale, xc + swkx*scale, yc + swky*scale);
    flag.draw_line(xc + swlx*scale, yc + swly*scale, xc + swkx*scale, yc + swky*scale);

    flag.draw_line(xc + swmx*scale, yc + swmy*scale, xc + swnx*scale, yc + swny*scale);
    flag.draw_line(xc + swmx*scale, yc + swmy*scale, xc + swpx*scale, yc + swpy*scale);
    flag.draw_line(xc + swpx*scale, yc + swpy*scale, xc + swox*scale, yc + swoy*scale);
    flag.draw_line(xc + swnx*scale, yc + swny*scale, xc + swox*scale, yc + swoy*scale);

    //se
    flag.draw_line(xc + seax*scale, yc + seay*scale, xc + sebx*scale, yc + seby*scale);
    flag.draw_line(xc + seax*scale, yc + seay*scale, xc + sedx*scale, yc + sedy*scale);
    flag.draw_line(xc + sebx*scale, yc + seby*scale, xc + secx*scale, yc + secy*scale);
    flag.draw_line(xc + secx*scale, yc + secy*scale, xc + sedx*scale, yc + sedy*scale);

    flag.draw_line(xc + seex*scale, yc + seey*scale, xc + sefx*scale, yc + sefy*scale);
    flag.draw_line(xc + seex*scale, yc + seey*scale, xc + sehx*scale, yc + sehy*scale);
    flag.draw_line(xc + sefx*scale, yc + sefy*scale, xc + segx*scale, yc + segy*scale);
    flag.draw_line(xc + sehx*scale, yc + sehy*scale, xc + segx*scale, yc + segy*scale);

    flag.draw_line(xc + seix*scale, yc + seiy*scale, xc + sejx*scale, yc + sejy*scale);
    flag.draw_line(xc + seix*scale, yc + seiy*scale, xc + selx*scale, yc + sely*scale);
    flag.draw_line(xc + sejx*scale, yc + sejy*scale, xc + sekx*scale, yc + seky*scale);
    flag.draw_line(xc + selx*scale, yc + sely*scale, xc + sekx*scale, yc + seky*scale);

    flag.draw_line(xc + semx*scale, yc + semy*scale, xc + senx*scale, yc + seny*scale);
    flag.draw_line(xc + semx*scale, yc + semy*scale, xc + sepx*scale, yc + sepy*scale);
    flag.draw_line(xc + sepx*scale, yc + sepy*scale, xc + seox*scale, yc + seoy*scale);
    flag.draw_line(xc + senx*scale, yc + seny*scale, xc + seox*scale, yc + seoy*scale);

    flag.draw_line(xc + seqx*scale, yc + seqy*scale, xc + serx*scale, yc + sery*scale);
    flag.draw_line(xc + seqx*scale, yc + seqy*scale, xc + setx*scale, yc + sety*scale);
    flag.draw_line(xc + serx*scale, yc + sery*scale, xc + sesx*scale, yc + sesy*scale);
    flag.draw_line(xc + setx*scale, yc + sety*scale, xc + sesx*scale, yc + sesy*scale);

    flag.draw_line(xc + seux*scale, yc + seuy*scale, xc + sevx*scale, yc + sevy*scale);
    flag.draw_line(xc + seux*scale, yc + seuy*scale, xc + sexx*scale, yc + sexy*scale);
    flag.draw_line(xc + sevx*scale, yc + sevy*scale, xc + sewx*scale, yc + sewy*scale);
    flag.draw_line(xc + sexx*scale, yc + sexy*scale, xc + sewx*scale, yc + sewy*scale);

    // fill in the black to white
    flag.draw_line(xc, yc - scale/2, xc, 0);
    flag.draw_line(xc, yc + scale/2, xc, height);
    flag.draw_line(xc - scale/2, yc, 0, yc);
    flag.draw_line(xc + scale/2, yc, width, yc);

    flag.recursive_fill(0, 0);
    flag.recursive_fill(0, height-1);
    flag.recursive_fill(width - 1, 0);
    flag.recursive_fill(width - 1, height - 1);

    flag.save("flag.ppm");

}

@ সোহমচৌধুরী সম্পূর্ণরূপে অনিচ্ছাকৃত, SEXY হ'ল দক্ষিণ-পূর্ব কোণ, পয়েন্ট এক্স, ওয়াই সমন্বয়।
ব্যবহারকারী 137

3
তোমার একমাত্র সমাধান যেখানে পতাকাটি বাতাসে wেউ চলছে!
সিজে ডেনিস

2

পোস্টস্ক্রিপ্ট , 572 477 বাইট

গল্ফ কোড:

5 5 scale 36 24 translate /R{.75 .05 .19 setrgbcolor}def/B{0 .20 .47 setrgbcolor}def/a 2 3 atan def/b{0 setgray[18 -6 2 12 21 -6 2 12 24 -6 2 12]rectfill 1 setgray{[18 -.5 2 1 24 -.5 2 1]rectfill}if{21 -.5 2 1 rectfill}if}def a neg rotate R 0 0 12 0 180 arc closepath fill B 0 0 12 180 0 arc closepath fill R -6 0 6 0 360 arc closepath fill B 6 0 6 0 360 arc closepath fill true true b 2 a mul rotate false true b 180 rotate true false b -2 a mul rotate false false b
showpage

অবরুদ্ধ কোড:

5 5 scale                                     % over-all scale
36 24 translate                               % over-all shift
/R {.75 .05 .19 setrgbcolor} def              % prodecure for setting red color
/B {0 .20 .47 setrgbcolor} def                % procedure for setting blue color
/a 2 3 atan def                               % calculate angle = arctan(2/3) = 33.7°
/b {                                          % procedure for drawing bars
 0 setgray                                    %   black
 [18 -6 2 12 21 -6 2 12 24 -6 2 12] rectfill  %   draw 3 bars
 1 setgray                                    %   white
 {[18 -.5 2 1 24 -.5 2 1] rectfill} if        %   conditionally draw gap in inner/outer bars 
 {21 -.5 2 1 rectfill} if                     %   conditionally draw gap in middle bar 
} def
a neg rotate                                  % rotate -33.7°
R 0 0 12 0 180 arc closepath fill             % big red half circle
B 0 0 12 180 0 arc closepath fill             % big blue half circle
R -6 0 6 0 360 arc closepath fill             % small red circle
B  6 0 6 0 360 arc closepath fill             % small blue circle
true true b                                   % draw bars (with gap in all bars)
2 a mul rotate                                % rotate 67.4°
false true b                                  % draw bars (with gap in inner/outer bars)
180 rotate                                    % rotate 180°
true false b                                  % draw bars (with gap in middle bar)
-2 a mul rotate                               % rotate -67.4°
false false b                                 % draw bars (without gaps)
showpage

ফলাফল:

ফলাফল


1

পাইথন 2, 483 বাইট

from math import*
w,k,r,b="255 "*3,"0 "*3,"198 12 48 ","0 52 120 "
print "P3 600 400 255 "
a=atan2(2,3)
c,s=cos(a),sin(a)
T=lambda x,y:(c*x-s*y,s*x+c*y)
S=lambda x,y:150<x<216.6and x%25<16.6and y*y<2500
C=lambda x,y,p=50:(x-p)**2+y*y<2500
for y in range(-200,200):
 for x in range(-300,300):X,Y=T(x,y);W,Z=T(-x,y);print [[w,k][(S(abs(X),Y)and(Y*Y>16or(166.6<X<191.4or-200>X or 0>X>-166.6)))or(S(abs(W),Z)and(W>0 or abs(Z)>4))],[b,r][(Z<0 or C(W,Z))and not C(W,Z,-50)]][W*W+Z*Z<10000]

সম্ভাব্য উন্নতি:

  • হার্ডকোড কোস, পাপ স্থির
  • বাইনারি পিপিএম
  • [3,2] বিমানে রূপান্তর করুন
  • বুলিয়ান বিবৃতি অনুকূলিত করুন

পাঠ্য পিপিএম হিসাবে আউটপুট, ব্যবহার:

python golf_korea.py > korea.ppm

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

বিহীন বিটা সংস্করণ

from math import*
w,k,r,b="255 255 255 ", "0 0 0 ", "255 0 0 ", "0 0 255 "
g="0 255 0 "
print "P3 600 400 255 "
a=atan2(2,3)
c,s=cos(a),sin(a)
trans=lambda x,y:(c*x-s*y,s*x+c*y)
stripe=lambda x:150<x<216.6 and x%25<16.6
small=lambda x,y,p=50:(x-p)**2+y*y<2500
for y in range(-200,200):
 for x in range(-300,300):
  X,Y=trans(x,y)
  W,Z=trans(-x,y)
  if stripe(abs(X)) and Y*Y<2500:
   if abs(Y)>4:  
    print k
   else:
    if X>0:
     if 166.6<X<191.4:
      print k
     else:
      print w
    else:
     if -200<X<-166.6:
      print w
     else:
      print k
  elif stripe(abs(W)) and Z*Z<2500 and(W>0 or abs(Z)>4):
   print k
  elif W*W+Z*Z<100*100:
   if (Z<0 or small(W,Z)) and not small(W,Z,-50):
    print r
   else:
    print b
  else:
   print w
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.