ইংরেজী ভাষা এবং সর্বাধিক প্রোগ্রামিং ল্যাঙ্গুয়েজগুলি বাম থেকে ডানে, উপরে থেকে নীচে থেকে লেখা এবং পড়া হয় তবে এটি হওয়া উচিত নয় ।
আসলে টেক্সট ব্লক জন্য
ABC
DEF
আমি এটি পড়তে পারে সম্পর্কিত আটটি উপায় সম্পর্কে ভাবতে পারি:
- বাম থেকে ডান, উপরে থেকে নীচে (এলটিআর-টিটিবি):
ABCDEF
- উপরে থেকে নীচে, বাম থেকে ডান (TTB-LTR):
ADBECF
- বাম থেকে ডান, নীচে থেকে শীর্ষে (এলটিআর-বিটিটি):
DEFABC
- নীচে থেকে উপরে, বাম থেকে ডান (বিটিটি-এলটিআর):
DAEBFC
- ডান থেকে বাম, উপরে থেকে নীচে (আরটিএল-টিটিবি):
CBAFED
- উপরে থেকে নীচে, ডান থেকে বাম (TTB-RTL):
CFBEAD
- ডান থেকে বাম, নীচে থেকে উপরে (আরটিএল-বিটিটি):
FEDCBA
- নীচে থেকে উপরে, ডান থেকে বামে (বিটিটি-আরটিএল):
FCEBDA
চ্যালেঞ্জ
পাঠ্যের একটি আয়তক্ষেত্রাকার ব্লক লিখুন যা আপনার পছন্দের ভাষার আটটি একক লাইনের প্রোগ্রাম হিসাবে উপরের আটটি উপায়ে পড়া যায় । এই প্রোগ্রামগুলির প্রত্যেকের এক থেকে আট পর্যন্ত আলাদা পূর্ণসংখ্যার আউটপুট করা উচিত।
কোন পড়ার দিকনির্দেশটি কোন সংখ্যাকে আউটপুট দেয় তা বিবেচনা করে না, তাদের উপরের সংখ্যাগুলির সাথে মেলে না। উদাহরণস্বরূপ, যদি আপনার পাঠ্য ব্লকটি এখনও থাকত
ABC
DEF
তারপরে প্রোগ্রামটি ABCDEF
আউটপুট 5
এবং FEDCBA
হতে পারে আউটপুট 2
, এবং অন্য ছয়টি প্রোগ্রাম আউটপুট হবে 1
,3
, 4
, 6
, 7
, এবং 8
কিছু যাতে।
পাঠ্য ব্লকে লাইন টার্মিনেটর ব্যতীত অন্য কোনও অক্ষর থাকতে পারে ।
আউটপুট স্টাডাউট বা অনুরূপ বিকল্পে যেতে হবে যদি আপনার ভাষার যথাযথ স্টাডআউট না থাকে। কোনও ইনপুট নেই। আপনি ধরে নিতে পারেন প্রোগ্রামগুলি একটি REPL পরিবেশে পরিচালিত হয়।
Pietu1998 চ্যারিটে জেএসফিডেল লিখেছিল যা পাঠ্যের একটি ব্লক দেওয়ার সময় 8 টি বিভিন্ন সিঙ্গল লাইনের প্রোগ্রাম দেয়। আমি এটিকে একটি স্ট্যাক স্নিপেটে পরিণত করেছি:
<script>function f(n){n=n.split("\n");var e=n.map(function(n){return n.length}).sort()[n.length-1];n=n.map(function(n){return(n+Array(e+1).join(" ")).substring(0,e)});var t=n[0].split("").map(function(e,t){return n.map(function(n){return n[t]}).join("")});n=[n.join(""),n.reverse().join(""),t.join(""),t.reverse().join("")],n=n.concat(n.map(function(n){return n.split("").reverse().join("")})),document.getElementById("a").innerHTML=n.map(function(n,e){return document.getElementById("b").checked?n+" "+"LLTTRRBB"[e]+"T"+"RRBBLLTT"[e]+"-"+"TBLRBTRL"[e]+"T"+"BTRLTBLR"[e]:n}).join("\n")}</script><textarea onkeyup="f(this.value)" id="c" placeholder="Code"></textarea><br/><input type="checkbox" id="b" onchange="f(document.getElementById('c').value)" checked/> <label for="b">Show directions</label><br/><pre id="a"></pre>
আপনি এখনও মার্টিনের সিজেম সংস্করণটি খুঁজে পেতে পারেন এখানে ।
স্কোরিং
আপনার স্কোরটি আপনার পাঠ্যের ব্লকের ক্ষেত্র (উচ্চতার প্রস্থের বার)। সর্বনিম্ন স্কোর সহ জমাটি জয়লাভ করে। (মূলত ক্ষুদ্রতম কোডটি জিততে পারে, তাই কোড-গল্ফ ট্যাগ)) টাইব্রেকার আগের পোস্ট জমা দিতে যায়।
উদাহরণটি 2 বাই 3 সুতরাং এর স্কোর 6 is এর চেয়ে কম স্কোর 4 (2 বাই 2) অসম্ভব কারণ তখন 8 টি প্রোগ্রামের কিছুটি অভিন্ন হবে এবং দুটি ভিন্ন মান আউটপুট করতে পারে না।
String.prototype.repeat()
এখনও নতুন ধরনের মনে হচ্ছে। এছাড়াও এখন IE তে কাজ করার বিষয়টি নিশ্চিত করেছেন। নতুন