7 , 10 বাইট, 27 টি অক্ষর
115160723426754314105574033
এটি অনলাইন চেষ্টা করুন!
ডিস্কে এই প্রোগ্রামটির প্যাকড উপস্থাপনাটি হ'ল ( xxd
ফর্ম্যাট):
00000000: 269c 3a71 6f63 308b 7c0d &.:qoc0.|.
ব্যাখ্যা
আমরা অটোমেট সেভিং দ্য ওয়ার্ল্ডে সংখ্যার এই ক্রমটি আগে দেখেছি , যা নিয়মিত বিরতিতে সংখ্যাগুলি মুদ্রণের বিষয়ে ছিল, এটি খুব পুরানো ভাষার ব্যবহারের প্রয়োজনের মাধ্যমে আকর্ষণীয় করে তুলেছিল। যদিও আরও নতুন ভাষাগুলির নিজস্ব টুইস্ট থাকতে পারে যা এই চ্যালেঞ্জটিকে আকর্ষণীয় করে তোলে। (হ্যাঁ, এই অনুচ্ছেদটি এবং আসলে যে কারণে আমি এই উত্তরটি লিখতে শুরু করেছি, এটি কার্যকরভাবে সম্পর্কিত চ্যালেঞ্জগুলি সাইডবারে একসাথে দেখানোর এক উপায় মাত্র; সাধারণভাবে লোকেরা মন্তব্যগুলি ব্যবহার করে তবে আমার যথেষ্ট রেপ নেই) ।)
প্রথম বিষয়টি লক্ষ্য করুন যে 7 সম্পূর্ণ ডিজিট দিয়ে তৈরি, সুতরাং এখানে বোনাসের জন্য কাজ করার সম্ভাবনা নেই (যদিও আপনি যদি প্রোগ্রামটিকে অক্টের ক্রম হিসাবে দেখেন তবে এগুলির কোনওটিই মূল সংখ্যার কোনও হিসাবে ASCII উপস্থাপনার সাথে সামঞ্জস্য নয়) , যাতে আপনি সেই অর্থে বোনাসটি দাবি করতে পারেন)। পরের বিষয়টি লক্ষণীয়: 7 টিতে কমান্ড সিক্যুয়েন্সটি পুনরায় তৈরি করার জন্য কমান্ড রয়েছে যা সম্ভবত একটি নির্দিষ্ট অংশের ডেটা তৈরি করেছে; সুতরাং আমরা সম্ভবত 4815162342
একটি 7 টি প্রোগ্রামের অংশ হিসাবে লস্ট সংখ্যাগুলি ব্যাখ্যা করতে পারি ?
উত্তরটি "বেশ নয়"। সবচেয়ে সমস্যাযুক্ত অংশটি হ'ল দ্বিতীয় সংখ্যা 8
,। Programs টি প্রোগ্রাম অষ্টালে লেখা হয়; ৮ এর মতো সংখ্যা নেই So সুতরাং স্ট্রিংয়ের খুব শুরুতেই আলাদাভাবে মুদ্রণ করতে হবে।
প্রোগ্রামটির ভিত্তি তাই 7 "হ্যালো ওয়ার্ল্ড" প্রোগ্রামের উপর ভিত্তি করে:
5431410557403
543141055 string literal
7 separate data from code
4 rearrange stack: {program's source}, empty element, {literal}
0 escape {the literal}, appending it to {the empty element}
3 output {the escaped literal}, pop {the program's source}
নিখরচায় আক্ষরিক একটি ডোমেন-নির্দিষ্ট ভাষায় রয়েছে যার ব্যাখ্যা নীচে দেওয়া হয়েছে:
5 output format: US-TTY using pairs of digits in the string
43 select character set: digits and common symbols
14 "4"
10 "8"
55 forget the set output format
এটির পরে একটি অতিরিক্ত আসে 3
, যা বাকী স্ট্যাক উপাদানকে ছাড়িয়ে যায় (এবং অপর্যাপ্ত অবশিষ্ট স্ট্যাকের কারণে প্রস্থান করে)। সেই উপাদানটি প্রোগ্রামের শুরুতে নির্দিষ্ট করা হয় এবং তুলনাহীনতা এড়ানোর জন্য 6
(যা ক্লোজিং ব্র্যাকেটের মতো কিছুটা কাজ করে), আমরা সরাসরি এটি ডেটা হিসাবে লেখার পরিবর্তে কোড ব্যবহার করে তৈরি করি। (নোট করুন যে 7
প্রোগ্রামটির শুরুতে দুটি সূচিত অক্ষর রয়েছে, যা এখানে প্রাসঙ্গিক):
{77}115160723426
7 empty stack element
7 11516 append "1151"
0 append "6"
723246 append "2324"
এটি নিম্নলিখিত আক্ষরিক উত্পাদন করে:
115162324
1 set output format: literally as octal
15162324 "15162324"
যা মুদ্রিত হয়ে যায়।