ab*1'3:*2+*0pnd3*:::::::::::::::1'3:*3+*0p1'3:*5+*0p1'3:*d+*0p1'3:*f+*0p1'3:*fa++*0p1'3:*fd++*0p1'4'3*f-*0p1'4'3*7-*0p1'4'3*5-*0p6:*:*4-1p6:*:*4+1p6:*:*8+1p6:*:*a+1p6:*:*8+2p6:*:*f1++2p6:*:*f3++2pn75*1-:1'3:*4+*0p6:*:*f2++2pnaa*:::::::::::::::::1'3:*6+*0p1'3:*7+*0p1'3:*f1++*0p1'3:*f2++*0p1'3:*fe++*0p1'3:*ff++*0p1'4'3*e-*0p1'4'3*d-*0p1'4'3*4-*0p1'4'3*3-*0p6:*:*3-1p6:*:*2-1p6:*:*b+1p6:*:*c+1p6:*:*9+2p6:*:*a+2p6:*:*f4++2p6:*:*f5++2pn67*::::::::::1'3:*8+*0p1'3:*a+*0p1'3:*f4++*0p1'3:*f5++*0p1'4'3*f-5-*0p1'4'3*c-*0p1'4'3*2-*0p6:*:*1-1p6:*:*d+1p6:*:*b+2p6:*:*f6++2pna5*::1'3:*9+*0p1'3:*f3++*0p6:*:*1pn68*:::::1'3:*b+*0p1'3:*f8++*0p1'4'3*f-2-*0p1'4'3*9-*0p1'4'3*1+*0p6:*:*f7++2pne8*:::::::1'3:*c+*0p1'3:*f9++*0p1'4'3*f-1-*0p1'4'3*8-*0p1'4'3*2+*0p6:*:*f2++1p6:*:*f+2p6:*:*f8++2pnf4*:1'3:*e+*0p1'4'3*3+*2pn77*::::1'3:*f6++*0p1'4'3*f-4-*0p6:*:*f1++1p6:*:*c+2p6:*:*e+2pnb4*1-::1'3:*f7++*0p6:*:*f+1p6:*:*d+2pnf4*1-::1'3:*fb++*0p6:*:*7+2p1'3:*1+*2pnf4*2-1'3:*fc++*0pn95*:::1'4'3*f-3-*0p1'4'3*a-*0p1'4'3**0p6:*:*1+1pn87*1'4'3*b-*0pnac*2-:1'4'3*6-*0p1'4'3*3+*0pnf4*3-1'4'3*1-*0pn88*2-6:*:*5-1pnc9*1-6:*:*2+1pnb4*:6:*:*3+1p6:*:*6+1pn88*6:*:*9+1pnd4*1-6:*:*e+1pnc8*2-:1'3:**1p1'3:**2pnd7*2+6:*:*4+2pn75*6:*:*6+2pn>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>ab*1'3:*2+*0pnd3*:::::::::::::::1'3:*3+*0p1'3:*5+*0p1'3:*d+*0p1'3:*f+*0p1'3:*fa++*0p1'3:*fd++*0p1'4'3*f-*0p1'4'3*7-*0p1'4'3*5-*0p6:*:*4-1p6:*:*4+1p6:*:*8+1p6:*:*a+1p6:*:*8+2p6:*:*f1++2p6:*:*f3++2pn75*1-:1'3:*4+*0p6:*:*f2++2pnaa*:::::::::::::::::1'3:*6+*0p1'3:*7+*0p1'3:*f1++*0p1'3:*f2++*0p1'3:*fe++*0p1'3:*ff++*0p1'4'3*e-*0p1'4'3*d-*0p1'4'3*4-*0p1'4'3*3-*0p6:*:*3-1p6:*:*2-1p6:*:*b+1p6:*:*c+1p6:*:*9+2p6:*:*a+2p6:*:*f4++2p6:*:*f5++2pn67*::::::::::1'3:*8+*0p1'3:*a+*0p1'3:*f4++*0p1'3:*f5++*0p1'4'3*f-5-*0p1'4'3*c-*0p1'4'3*2-*0p6:*:*1-1p6:*:*d+1p6:*:*b+2p6:*:*f6++2pna5*::1'3:*9+*0p1'3:*f3++*0p6:*:*1pn68*:::::1'3:*b+*0p1'3:*f8++*0p1'4'3*f-2-*0p1'4'3*9-*0p1'4'3*1+*0p6:*:*f7++2pne8*:::::::1'3:*c+*0p1'3:*f9++*0p1'4'3*f-1-*0p1'4'3*8-*0p1'4'3*2+*0p6:*:*f2++1p6:*:*f+2p6:*:*f8++2pnf4*:1'3:*e+*0p1'4'3*3+*2pn77*::::1'3:*f6++*0p1'4'3*f-4-*0p6:*:*f1++1p6:*:*c+2p6:*:*e+2pnb4*1-::1'3:*f7++*0p6:*:*f+1p6:*:*d+2pnf4*1-::1'3:*fb++*0p6:*:*7+2p1'3:*1+*2pnf4*2-1'3:*fc++*0pn95*:::1'4'3*f-3-*0p1'4'3*a-*0p1'4'3**0p6:*:*1+1pn87*1'4'3*b-*0pnac*2-:1'4'3*6-*0p1'4'3*3+*0pnf4*3-1'4'3*1-*0pn88*2-6:*:*5-1pnc9*1-6:*:*2+1pnb4*:6:*:*3+1p6:*:*6+1pn88*6:*:*9+1pnd4*1-6:*:*e+1pnc8*2-:1'3:**1p1'3:**2pnd7*2+6:*:*4+2pn75*6:*:*6+2pn>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
এটি অনলাইন চেষ্টা করুন!
এটি তৈরি করা একটি নরকপথে ছিল।
এটি কীভাবে কাজ করে:
প্রোগ্রামটি হ'ল পুট স্টেটমেন্টগুলির একটি গুচ্ছ যা নিজের চারপাশে একটি প্রোগ্রাম বি একত্রিত করে যা উত্স বাইটের অর্ধেক মুদ্রণ করে দুবার স্থানান্তরিত হয়।
প্রোগ্রামটি আসলে 1300 বাইট প্রোগ্রামের 2 টি অনুলিপি হয়, এটি নিশ্চিত করা হয় যে পুরো 1300 বাইট প্রোগ্রামটি সর্বদা সামগ্রিকভাবে চালিত হয়।
আরও ভাল ব্যাখ্যা:
প্রতিটি বেফঞ্জ -৮৮ কোয়েনে এমন একটি @
বা q
এবং ,
সমস্যা থাকা দরকার: এই চিহ্নগুলির মধ্যে কোনওটিই ভাল প্রারম্ভিক বিষয় নয় @
এবং q
তাত্ক্ষণিকভাবে প্রোগ্রামটি শেষ করে দেয়।
সমাধান : উত্স কোডে এই অক্ষরগুলি থেকে মুক্তি পান
সমস্যা : কীভাবে?
সমাধান : p
প্রয়োজনীয় অক্ষরগুলি অন্তর্ভুক্ত করার জন্য উত্স কোডটি সংশোধন করতে (পুট) কমান্ডগুলি ব্যবহার করুন যা একটি বাইট দ্বারা স্থানান্তরিত উত্স কোডটি মুদ্রণ করবে এবং প্রতারণা করছে এমন কমান্ডটি ব্যবহার করবে নাg
।
সমস্যা : (দীর্ঘশ্বাস কখন শেষ হবে)
একটি কমান্ড 3 টি মানকে পপ করে n x y
যা অক্ষর নির্ধারণ করে, এক্স-কোর্ড, ওয়াই-কোর্ড তবে যখন এই মানগুলির সূচনাটি অর্ধে বিভক্ত হয় তবে এটি সূচনা উত্সের কোডটিতে খারাপ অক্ষর লিখতে পারে যা একে অকেজো করে তোলে কুইনিংয়ের জন্য
সমাধান : (শেষটি আমি প্রতিশ্রুতি দিয়েছি)
উত্স কোডের 2 টি অনুলিপি ব্যবহার করুন, দ্বিতীয়টি "সঠিক এক" হ'ল এটি ঘটনাক্রমে অন্য একটি সমস্যার সমাধান করে যা হ'ল একটি বিবৃতি (পি কমান্ড + ধ্রুবক আরম্ভকারী) যা অর্ধেক ইচ্ছায় বিভক্ত হয় মৃত্যুদন্ড কার্যকর করা হবে না, এটি প্রতিটি বিবৃতিতে 2 কপি থাকার মাধ্যমে স্থির করা হয়েছে। সর্বশেষে এটির কাজ করার দরকারটি হল কীভাবে আমরা পুরো উত্স কোডটিকে অর্ধেকের বাইরে করব?
উত্তর :
এটি স্ট্রিং বাইটের দুটি কপি কেন স্থানান্তরিত হয়েছে তার দর্শনীয় প্রমাণ == বাইট স্থানান্তরিত স্ট্রিংয়ের দুটি অনুলিপি। এর অর্থ আমরা কোডের অর্ধেক নিতে পারি, বাইটটি শিফট করে, তারপরে এটি দুটি বার মুদ্রণ করুন (বা কোডের অর্ধেক অংশ নেবেন, বাইট শিফট করুন, মুদ্রণ করুন, পুনরাবৃত্তি করুন [আসলে এটি ঘটে]]
এটি কীভাবে কার্যকর করা হয় : ধরে নিন 0123456789abcdef উত্স
বেফঞ্জ সিউডোকোড:
0123456789abcv;;"123456789abcdef" < go this way <--
>PS'0, repeat 2x ^
পিএস মানে মুদ্রণ স্ট্যাক (একটি সত্য নির্দেশ নয়)। আমরা উত্স কোডের অর্ধেকটি উল্টে স্ট্যাকের উপরে চাপ দিয়ে ব্যবহার ""
করি আমরা স্ট্যাকটি মুদ্রণ করি এবং তারপরে আমরা '
প্রথম ক্যারেক্টারটি ( কমান্ড) 0
পাই যা আমরা সামনে উপস্থিত করি '
এবং এটি শেষ প্রিন্ট করে যা বাইট শিফটের কারণ হয়, তারপরে আমরা চক্রটি পুনরাবৃত্তি করি দ্বিতীয় কপি প্রিন্ট করতে আরও একবার। এর সাথে মোকাবেলা করার জন্য একটি প্রযুক্তিগত উত্সের অভ্যন্তরস্থ প্রতীকগুলি, উত্স কোডটি সম্পাদন করার সময় আমরা যদি এটি লিখি তবে এটি সমস্যার কারণ হতে পারে, আমি বহিরাগতভাবে এটির যত্ন নেওয়ার জন্য আরও পুরা স্টেটমেন্ট যোগ করে এটিকে অবরুদ্ধ করেছিলাম।
এটি কোডটিকে এমন কিছু দেখায়:
ব্যাখ্যা :
সবুজ হাইলাইট: উত্সে অক্ষরগুলি যুক্ত করার যত্ন নেওয়ার কোডটি
ধূসর বর্ণগুলি (দরিদ্র দৃশ্যের জন্য দুঃখিত): যে কোডটি গ্রিন কোড দ্বারা যুক্ত হয়
রেড হাইলাইট: কোড যা নীল অঞ্চলে উত্স কোডের দ্বিতীয়ার্ধের প্রথম অক্ষরকে সরিয়ে দেয় ।
নীল হাইলাইট: রেড হাইলাইট
কমলা হাইলাইট দেখুন: কোডটি নিশ্চিত করে যে আমরা @
হলুদ অঞ্চলে একটি (টার্মিনেট) কমান্ড রেখে 2 বাইট স্থানান্তরিত অনুলিপিগুলি লেখার পরে শেষ করব।
তীরগুলি আশা করে কোড প্রবাহ কীভাবে যায় তা পরিষ্কার করে দেওয়া উচিত।
এখানে গত শক্ত অংশ আসে
কোথায় শিশুদের সোর্স কোড থেকে এসেছে?
সংক্ষিপ্ত উত্তর: সি # ম্যাজিক
দীর্ঘ উত্তর: 100+ বেফুঞ্জ কোড স্নিপেটস সি # কোড দিয়ে সংকলিত hand আমি ম্যানুয়ালি হাতে প্রায় 100 ধ্রুবক প্রারম্ভিক (বেফুং কোডের একটি টুকরো যা একটি নির্দিষ্ট নম্বরকে স্ট্যাকের জন্য ঠেলাঠেলি করে) লিখেছিলাম এবং তারপরে 1300 বাইট বেফঞ্জ আউটপুটটিতে এটি সংকলন করতে একটি কাস্টম সি # প্রোগ্রাম ব্যবহার করেছি, যা আমি পরে দুবার পেস্ট করে চূড়ান্ত করেছিলাম কার্যক্রম.
এখানে এখনো আপনি? পড়ার জন্য আপনাকে ধন্যবাদ! (বা কমপক্ষে শেষ পর্যন্ত স্ক্রোলিং)
আমি আশা করি আমার খারাপ রসিকতা মজাদার ছিল এবং বিরক্তিকর ছিল না।
দ্রষ্টব্য: এই কোডে কোনও পুট স্টেটমেন্ট এজি কমান্ড তৈরি করে না যা প্রতারণা করবে।
সম্পাদনা: বিকাশকারী সরঞ্জাম ব্যবহার করে টিআইওতে নিম্নলিখিত জাভাস্ক্রিপ্ট কোডটি ব্যবহার করে আমি কোডটি যাচাই করেছি
setInterval(()=>{document.getElementById("code").value =
document.getElementById("output").value;
document.getElementById("run").click();}, 2000);