দৃশ্য সেটিং:
এটি আপনার একটি দীর্ঘ সময় বাদে আপনার প্রিয় মনমুগ্ধকর বিষয়ে জড়িত হয়ে: পিপিসিজিতে মনোমুগ্ধকর প্রশ্নের জাঁকজমকপূর্ণ জবাব দেওয়ার কারণে এটি গড়ে একটি গড় বিকেল। এটি আপনার জন্য ভাল দিন ছিল না; এই জঘন্য পাইথ প্রোগ্রামাররা সর্বোত্তম উত্তর পেতে থাকে এবং এটি আপনার বৌটিকে মেরে ফেলছে। হঠাৎ করেই, আপনি লক্ষ্য করেছেন একটি নতুন প্রশ্ন পোস্ট করা হয়েছে! আপনি আপনার মন আপ করুন; এবার নয় সিজেমার্স। তীব্রভাবে, আপনি টাইপ করতে শুরু করেন, অক্ষরের একটি ধারা প্রবাহিত করে; আপনার শেষ পণ্যটি হবে এমন গৌরবময় ব্রেইনফাক লুপের একটি ভ্রূণ। আপনি টাইপ করুন এবং টাইপ করুন। দ্রুত! আরও দ্রুত! আপনি এতই কেন্দ্রীভূত হন যে আপনি এমনকি আপনার পর্দার আলোগুলি জ্বলজ্বল শুরু করতে এবং বন্ধ করতে দেখেন না। হঠাৎ, মনিটরটি সবুজ ঝলকান, ডেস্কটপে ব্র্যান্ডেড চিহ্নের মতো এলিয়েন। আপনার অনর্থক দক্ষতা ব্যবহার করে আপনিcat ~/Desktop/aliensymbol
এবং একটি সংখ্যার সংখ্যার সাথে একটি বার্তা উপস্থাপন করুন! আপনি যে বুদ্ধিমান পিপিসিজি প্রোগ্রামার হচ্ছেন, আপনি লক্ষ্য করেছেন যে এটি ASCII এর মতো দেখাচ্ছে। আপনার জন্য কোনও ব্যাপার নয়, আপনি print(chr(i) for i in file)
এবং বার্তাটি বোঝাচ্ছেন। আপনার প্রথম চিন্তা: "আমার এটি সম্প্রদায়ের সাথে ভাগ করে নেওয়া দরকার!"।
...
কে এটা ভাববে? এলিয়েনের সাথে যোগাযোগ করা প্রথম ব্যক্তিরা হবেন পিপিসিজির নম্র প্রোগ্রামার। আমরা? হতে পারে কারণ আমরা মানব বুদ্ধির প্রতিচ্ছবি। বা হতে পারে কারণ ব্রেইনফাক যেমন আমাদের কাছে একটি এলিয়েন ভাষা রয়েছে তত কাছাকাছি। তবুও, এলিয়েনরা - অতি-বুদ্ধিমান জীবন যা তারা হ'ল - তারা পরীক্ষা করতে চায় যে তাদের মানব জাতিকে বুদ্ধিমান হিসাবে শ্রেণিবদ্ধ করা উচিত কিনা। আমাদের মানসিক দক্ষতার পরীক্ষা হিসাবে, এলিয়েনরা আমাদের প্রযুক্তিগতভাবে সভ্য বলে প্রমাণ করার জন্য তাদের কয়েকটি কম্পিউটার প্রোগ্রাম প্রেরণ করতে বলেছে। বিষয়টি হ'ল, তারা যে একমাত্র মানব ভাষা বুঝতে পারে তা হ'ল সংখ্যার এএসসিআইআই!
প্রকৃত বুদ্ধিজীবী আলফা কে সেই প্রাণীগুলিকে মানব জাতিকে দেখাতে সহায়তা করুন। আমাদের তাদের একটি স্ক্রিপ্ট প্রেরণ করা দরকার যা আমাদের পাঠ্য ভিত্তিক উত্স কোডগুলিকে তাদের সংখ্যাগত ASCII সংস্করণে রূপান্তর করবে। দুর্ভাগ্যক্রমে, আমাদের অনুন্নত প্রযুক্তির কারণে (ওবামা ধন্যবাদ), আমাদের যথাসম্ভব ছোট একটি অনুবাদ প্রোগ্রাম প্রেরণ করতে হবে। তারা পিপিসিগির সাথে যোগাযোগ করার জন্য ভাল জিনিস!
চ্যালেঞ্জ:
এই চ্যালেঞ্জের ভিত্তিটি সহজ: আপনাকে এমন একটি প্রোগ্রাম লিখতে হবে যা কোনও প্রোগ্রামের সোর্স কোড (বা সেই বিষয়ে কোনও সাধারণ পাঠ্য ফাইল) নেবে এবং প্রতিটি লাইনের নীচে একটি এসএসআইআই অনুবাদ সহ এর স্পেস বিভাজনিত সংস্করণ আউটপুট করবে। এটি, একটি পাঠ্য ফাইলের একটি ইনপুট দেওয়া হলে, আপনাকে of ফাইলের প্রতিটি লাইন আউটপুট করতে হবে তারপরের রেখার প্রতিটি অক্ষরের ASCII উপস্থাপনা সমন্বিত একটি লাইন (প্রতিটি সংখ্যাটি এটি প্রতিনিধিত্ব করে এমন অক্ষরের সাথে আবদ্ধ থাকে) output
একটি উদাহরণ এটি ব্যাপকভাবে স্পষ্ট করবে। hello world
ইনপুট হিসাবে কুখ্যাতদের উত্স কোড নেওয়া :
#include <stdio.h>
int main() {
printf("hello, world\n");
return 0;
}
আপনার প্রোগ্রাম আউটপুট করা উচিত:
# i n c l u d e < s t d i o . h >
35 105 110 99 108 117 100 101 32 60 115 116 100 105 111 46 104 62 10
10
i n t m a i n ( ) {
105 110 116 32 109 97 105 110 40 41 32 123 10
p r i n t f ( " h e l l o , w o r l d \ n " ) ;
32 32 32 32 112 114 105 110 116 102 40 34 104 101 108 108 111 44 32 119 111 114 108 100 92 110 34 41 59 10
r e t u r n 0 ;
32 32 32 32 114 101 116 117 114 110 32 48 59 10
}
125 10
বাস্তবায়নের বিশদ:
আপনি যে কোনও ফর্মটি (ওপেনিং ফাইল, কমান্ড লাইন পাইপ, ফাংশন প্যারামিটার ইত্যাদি) ইনপুট নেওয়া চয়ন করতে পারেন এবং আপনাকে স্টাডআউটে আউটপুট দিতে হবে বা কোনও ফাংশন থেকে আউটপুট ফিরিয়ে দিতে হবে।
বিষয়গুলি লক্ষণীয়
- আউটপুটে প্রতিটি অক্ষর একটি '\ t' দ্বারা পৃথক করে নীচের লাইনে 3 ডিজিটের ফাঁকির জন্য লাইন আপ করতে দেয় (আমরা ধরে নিচ্ছি যে আপনার ট্যাবটি 4 স্পেস বা তার বেশি সেট করা আছে)।
- রিটার্ন কী টিপে দেওয়া হয়েছিল সেই লাইনে নিউলাইনগুলি প্রদর্শিত হয় (উদাহরণে 10 এর লক্ষ্য করুন)
- '\ T' এবং '\ n' মুদ্রণের প্রয়োজনীয়তা শিথিল। আপনার আউটপুটটি অবশ্যই সাধারণ অর্থে চোখের কাছে সন্তুষ্ট হওয়া আবশ্যক (সেই ধরণের এলিয়েনদেরও আমাদের নান্দনিক বোধ থাকতে হবে তা দেখানো দরকার) এবং যদি আপনি দৃশ্যমান অখণ্ডতা বজায় রেখে পূর্ববর্তী দুটি পয়েন্টগুলি বাঁকতে পারেন তবে আপনাকে ক্ষমা করা হবে।
- আপনি শেষ লাইনের শেষে একটি নতুন লাইন আছে কিনা তা ধরে নিতে বেছে নিতে পারেন।
স্কোরিং
এটি কোড-গল্ফ তাই সংক্ষিপ্ততম প্রোগ্রামের জয়। দ্রষ্টব্য, এমনকি যদি আপনার প্রোগ্রামটি সবচেয়ে স্বল্পতম না হয় তবে আপনি যে ভাষাটি ব্যবহার করছেন তার তুলনায় সত্যিই ঝরঝরে কৌশলগুলি ব্যবহার করে, আপনার কাছে অনেকগুলি +1!
শুভকামনা। মানবতার আন্তঃগঠাকর বুদ্ধিমত্তার র্যাঙ্কিংটি আপনার কাঁধে রয়েছে।
দ্রষ্টব্য: প্লট গর্ত ক্ষমা করুন। আমি লেখক নই : ডি