আপনার চ্যালেঞ্জটি হ'ল অসীম লোডিং স্ক্রিন তৈরি করা, যা দেখতে এটির মতো দেখাচ্ছে:
বা, আরও সুনির্দিষ্ট হতে হবে:
- কোনও ইনপুট নিবেন না।
- আউটপুট
Loading..., একটি পিছনের স্থান সহ, তবে কোনও নতুন লাইনে নেই। - অক্ষর মাধ্যমে অসীম চক্র
|,/,-এবং\কিছু: প্রতিবার 0.25 সেকেন্ড, ক্রমানুসারে পরবর্তী সঙ্গে গত এক ওভাররাইট করবে। আপনি কেবলমাত্র সর্বশেষ অক্ষরটি ওভাররাইট করতে পারেন, বা যতক্ষণ নাLoading...অপরিবর্তিত রয়েছেন ততক্ষণ পুরো লাইনটি মুছে ফেলতে এবং পুনরায় লিখতে পারেন ।
বিধি
- আউটপুট পাঠ্য নির্দিষ্ট হিসাবে অবশ্যই দেখতে হবে। ট্রেলিং নতুনলাইন / স্পেস গ্রহণযোগ্য।
- প্রাথমিকভাবে আউটপুট দেখানোর আগে আপনাকে 0.25 সেকেন্ড অপেক্ষা করা উচিত নয় - প্রোগ্রামটি চালুর সাথে সাথে প্রথম ফ্রেমটি মুদ্রণ করা উচিত।
- আপনার প্রোগ্রামটি অনির্দিষ্টকালের জন্য চালাতে সক্ষম হওয়া উচিত। উদাহরণস্বরূপ, যদি আপনি ফ্রেমগুলির জন্য একটি কাউন্টার ব্যবহার করেন তবে কাউন্টারটি কখনই আপনার ভাষায় সর্বাধিককে অতিক্রম করে ত্রুটি ঘটায় না।
- যদিও প্রতিটি "ফ্রেম" এর মধ্যে অপেক্ষার সময়টি 0.25 সেকেন্ড হওয়া উচিত, অবশ্যই এটি কখনই সঠিক হতে পারে না - 10% বা ততোধিক ত্রুটির মার্জিন অনুমোদিত।
- আপনি কোনও ফাংশন জমা দিতে পারেন তবে এটিতে মুদ্রণ করতে হবে
stdout। - যতক্ষণ না এটি লোডিং অ্যানিমেশন তৈরি করতে সক্ষম হয় আপনি নন-কনসোল (তবে এখনও পাঠ্য ভিত্তিক) পরিবেশে একটি উত্তর জমা দিতে পারেন।
- এটি কোড-গল্ফ , তাই সংক্ষিপ্ততম সমাধান (বাইটে) জিতেছে। স্ট্যান্ডার্ড কোড-গল্ফ লুফোলস প্রয়োগ হয়।
- যদি সম্ভব হয় তবে আপনার লোডিং স্ক্রিনটি কার্যত একটি জিআইএফ সরবরাহ করুন।
উদাহরণ
উদাহরণটি তৈরি করতে আমি যে সি ++ কোডটি ব্যবহার করেছি তা এখানে রয়েছে (অব্যক্ত):
#include <iostream>
#include <string>
#include <thread>
using namespace std;
int main() {
string cycle = "|/-\\";
int i = 0;
cout << "Loading... ";
while (true) {
// Print current character
cout << cycle[i];
// Sleep for 0.25 seconds
this_thread::sleep_for(chrono::milliseconds(250));
// Delete last character, then increase counter.
cout << "\b";
i = ++i % 4;
}
}
সেরা গল্ফার জয় হোক!















