দানা

দানা

সহজ

ভূমিকা

একদা এক জ্ঞানী ভৃত্য এক রাজপুত্রের প্রাণ বাঁচিয়েছিলেন। রাজা কথা দিলেন, ভৃত্যটি যা কিছু চাইতে পারে তিনি তাই দেবেন। রাজা যে দাবা ভালোবাসেন তা জেনে ভৃত্যটি রাজাকে বললেন, তিনি কিছু গমের দানা চান। দাবাবোর্ডের প্রথম ঘরে এক দানা, আর পরের প্রতিটি ঘরে দানার সংখ্যা দ্বিগুণ হয়ে চলবে।

নির্দেশনা

দাবা বোর্ডে গমের দানার সংখ্যা হিসাব করুন।

দাবা বোর্ডে ৬৪টি ঘর থাকে। ১ নম্বর ঘরে একটি দানা, ২ নম্বর ঘরে দুটি দানা, ৩ নম্বর ঘরে চারটি দানা, এভাবেই প্রতি ঘরে দানার সংখ্যা দ্বিগুণ হতে থাকে।

এমন কোড লিখুন যা হিসাব করে:

  • নির্দিষ্ট একটি ঘরে থাকা দানার সংখ্যা
  • দাবা বোর্ডে থাকা মোট দানার সংখ্যা

Euphoria-তে সংখ্যা

Euphoria-তে একটি atom যেকোনো ধরনের সংখ্যা ধারণ করতে পারে, আর এর integer সাবটাইপটি পূর্ণসংখ্যার জন্য বোঝানো হয়েছে। C-এর মতো ভাষায় একটি unsigned ৬৪-বিট ইন্টিজার রিটার্ন করে এই অনুশীলনীটি সমাধান করা সম্ভব।

তবে Euphoria-তে ইন্টিজারগুলো signed, এবং মেশিন ওয়ার্ডের চেয়ে এক বিট ছোট, তাই এই অনুশীলনীর জন্য সেগুলো খুবই ছোট; অন্যদিকে অ্যাটমগুলো প্রয়োজনীয় ৬৪ বিট নির্ভুলতাসহ আরও বড় ইন্টিজার ধারণ করতে পারে।

৩২-বিট

Euphoria-র একটি ৩২-বিট সংস্করণ আছে, যা এখনও টিকে আছে যাতে লিগ্যাসি অ্যাপ্লিকেশনগুলো আগে থেকে তৈরি করা ৩২-বিট dll/so ব্যবহার চালিয়ে যেতে পারে, যখন কোনো ৬৪-বিট সংস্করণ পাওয়া যায় না, অথবা সেগুলোর র‍্যাপারটি হার্ড-কোড করা ৩২-বিট অফসেটে ভরা। এই সংস্করণটি এই কাজটি সমাধানের জন্য একেবারেই অপর্যাপ্ত, কারণ ওই অ্যাটমগুলোতে মাত্র ৫৩ বিট নির্ভুলতা থাকে। যদি স্থানীয়ভাবে এই অনুশীলনীটি সমাধান করতে গিয়ে আপনার সমস্যা হয়, তাহলে নিশ্চিত হয়ে নিন যে আপনি Euphoria-র ৬৪-বিট সংস্করণ ব্যবহার করছেন।

GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Euphoria Exercism

দানা শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Euphoria ট্র্যাকের 64টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।